UNPKG

cakemail-mcp-server

Version:

Enterprise MCP server for Cakemail API integration with Claude AI - includes comprehensive template management, list management, sub-account management, BEEeditor visual email design, and advanced analytics

1,804 lines 66.7 kB
import { healthTools } from './health-tools.js'; import { authTools } from './auth-tools.js'; import { senderTools } from './sender-tools.js'; import { campaignTools } from './campaign-tools.js'; import { subAccountTools } from './sub-account-tools.js'; import { emailTools } from './email-tools.js'; import { accountTools } from './account-tools.js'; import { reportTools } from './report-tools.js'; import { logTools } from './log-tools.js'; import { listTools } from './list-tools.js'; import { templateTools } from './template-tools.js'; import { contactTools } from './contact-tools.js'; export declare const allTools: ({ name: string; description: string; inputSchema: { type: string; properties: {}; required: never[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { name: { type: string; description: string; }; email: { type: string; description: string; }; language: { type: string; description: string; }; sender_id?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { sender_id: { type: string; description: string; }; name?: never; email?: never; language?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { sender_id: { type: string; description: string; }; name: { type: string; description: string; }; email: { type: string; description: string; }; language: { type: string; description: string; }; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; type?: never; list_id?: never; sort?: never; order?: never; with_count?: never; count?: never; audience?: never; tracking?: never; sender?: never; reply_to_email?: never; content?: never; contact_id?: never; emails?: never; scheduled_for?: never; title?: never; subject?: never; preheader?: never; backgroundColor?: never; contentAreaBackgroundColor?: never; width?: never; headerText?: never; contentSections?: never; footerText?: never; json_content?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { name: { type: string; description: string; }; audience: { type: string; properties: { list_id: { type: string; description: string; }; segment_id: { type: string; description: string; }; }; description: string; required: string[]; }; tracking: { type: string; properties: { opens: { type: string; description: string; }; clicks_html: { type: string; description: string; }; clicks_text: { type: string; description: string; }; additional_params: { type: string; description: string; }; }; description: string; }; sender: { type: string; properties: { id: { type: string; description: string; }; name: { type: string; description: string; }; }; description: string; required: string[]; }; reply_to_email: { type: string; description: string; }; content: { type: string; properties: { subject: { type: string; description: string; }; html: { type: string; description: string; }; text: { type: string; description: string; }; json: { type: string; description: string; }; type: { type: string; enum: string[]; description: string; }; encoding: { type: string; description: string; }; template: { type: string; properties: { id: { type: string; description: string; }; }; description: string; }; blueprint: { type: string; properties: { id: { type: string; description: string; }; }; description: string; }; default_unsubscribe_link: { type: string; description: string; }; }; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; type?: never; list_id?: never; sort?: never; order?: never; with_count?: never; count?: never; campaign_id?: never; contact_id?: never; emails?: never; scheduled_for?: never; title?: never; subject?: never; preheader?: never; backgroundColor?: never; contentAreaBackgroundColor?: never; width?: never; headerText?: never; contentSections?: never; footerText?: never; json_content?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; name: { type: string; description: string; }; audience: { type: string; properties: { list_id: { type: string; description: string; }; segment_id: { type: string; description: string; }; }; description: string; required?: never; }; tracking: { type: string; properties: { opens: { type: string; description: string; }; clicks_html: { type: string; description: string; }; clicks_text: { type: string; description: string; }; additional_params: { type: string; description: string; }; }; description: string; }; sender: { type: string; properties: { id: { type: string; description: string; }; name: { type: string; description: string; }; }; description: string; required?: never; }; reply_to_email: { type: string; description: string; }; content: { type: string; properties: { subject: { type: string; description: string; }; html: { type: string; description: string; }; text: { type: string; description: string; }; json: { type: string; description: string; }; type: { type: string; enum: string[]; description: string; }; encoding: { type: string; description: string; }; template: { type: string; properties: { id: { type: string; description: string; }; }; description: string; }; blueprint: { type: string; properties: { id: { type: string; description: string; }; }; description: string; }; default_unsubscribe_link: { type: string; description: string; }; }; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; type?: never; list_id?: never; sort?: never; order?: never; with_count?: never; count?: never; contact_id?: never; emails?: never; scheduled_for?: never; title?: never; subject?: never; preheader?: never; backgroundColor?: never; contentAreaBackgroundColor?: never; width?: never; headerText?: never; contentSections?: never; footerText?: never; json_content?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; contact_id: { type: string; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; type?: never; list_id?: never; sort?: never; order?: never; with_count?: never; count?: never; audience?: never; tracking?: never; sender?: never; reply_to_email?: never; content?: never; emails?: never; scheduled_for?: never; title?: never; subject?: never; preheader?: never; backgroundColor?: never; contentAreaBackgroundColor?: never; width?: never; headerText?: never; contentSections?: never; footerText?: never; json_content?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; emails: { type: string; items: { type: string; }; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; type?: never; list_id?: never; sort?: never; order?: never; with_count?: never; count?: never; audience?: never; tracking?: never; sender?: never; reply_to_email?: never; content?: never; contact_id?: never; scheduled_for?: never; title?: never; subject?: never; preheader?: never; backgroundColor?: never; contentAreaBackgroundColor?: never; width?: never; headerText?: never; contentSections?: never; footerText?: never; json_content?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; scheduled_for: { type: string; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; type?: never; list_id?: never; sort?: never; order?: never; with_count?: never; count?: never; audience?: never; tracking?: never; sender?: never; reply_to_email?: never; content?: never; contact_id?: never; emails?: never; title?: never; subject?: never; preheader?: never; backgroundColor?: never; contentAreaBackgroundColor?: never; width?: never; headerText?: never; contentSections?: never; footerText?: never; json_content?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; page: { type: string; description: string; }; per_page: { type: string; description: string; }; with_count: { type: string; description: string; }; account_id: { type: string; description: string; }; status?: never; name?: never; type?: never; list_id?: never; sort?: never; order?: never; count?: never; audience?: never; tracking?: never; sender?: never; reply_to_email?: never; content?: never; contact_id?: never; emails?: never; scheduled_for?: never; title?: never; subject?: never; preheader?: never; backgroundColor?: never; contentAreaBackgroundColor?: never; width?: never; headerText?: never; contentSections?: never; footerText?: never; json_content?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { json_content: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; type?: never; list_id?: never; sort?: never; order?: never; with_count?: never; account_id?: never; count?: never; campaign_id?: never; audience?: never; tracking?: never; sender?: never; reply_to_email?: never; content?: never; contact_id?: never; emails?: never; scheduled_for?: never; title?: never; subject?: never; preheader?: never; backgroundColor?: never; contentAreaBackgroundColor?: never; width?: never; headerText?: never; contentSections?: never; footerText?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { name: { type: string; description: string; }; email: { type: string; description: string; format?: never; }; password: { type: string; description: string; }; company: { type: string; description: string; }; language: { type: string; description: string; }; timezone: { type: string; description: string; }; country: { type: string; description: string; }; phone: { type: string; description: string; }; website: { type: string; description: string; }; description: { type: string; description: string; }; partner_account_id: { type: string; description: string; }; skip_verification: { type: string; description: string; }; page?: never; per_page?: never; status?: never; recursive?: never; with_count?: never; account_id?: never; verification_code?: never; migrate_owner?: never; format?: never; include_usage_stats?: never; include_contact_counts?: never; include_owner_details?: never; status_filter?: never; filename?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; recursive?: never; partner_account_id?: never; with_count?: never; email?: never; password?: never; company?: never; language?: never; timezone?: never; country?: never; phone?: never; website?: never; description?: never; skip_verification?: never; verification_code?: never; migrate_owner?: never; format?: never; include_usage_stats?: never; include_contact_counts?: never; include_owner_details?: never; status_filter?: never; filename?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { account_id: { type: string; description: string; }; name: { type: string; description: string; }; email: { type: string; description: string; format?: never; }; company: { type: string; description: string; }; language: { type: string; description: string; }; timezone: { type: string; description: string; }; country: { type: string; description: string; }; phone: { type: string; description: string; }; website: { type: string; description: string; }; description: { type: string; description: string; }; page?: never; per_page?: never; status?: never; recursive?: never; partner_account_id?: never; with_count?: never; password?: never; skip_verification?: never; verification_code?: never; migrate_owner?: never; format?: never; include_usage_stats?: never; include_contact_counts?: never; include_owner_details?: never; status_filter?: never; filename?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { account_id: { type: string; description: string; }; verification_code: { type: string; description: string; }; email: { type: string; description: string; format?: never; }; page?: never; per_page?: never; status?: never; name?: never; recursive?: never; partner_account_id?: never; with_count?: never; password?: never; company?: never; language?: never; timezone?: never; country?: never; phone?: never; website?: never; description?: never; skip_verification?: never; migrate_owner?: never; format?: never; include_usage_stats?: never; include_contact_counts?: never; include_owner_details?: never; status_filter?: never; filename?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { email: { type: string; format: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; recursive?: never; partner_account_id?: never; with_count?: never; password?: never; company?: never; language?: never; timezone?: never; country?: never; phone?: never; website?: never; description?: never; skip_verification?: never; account_id?: never; verification_code?: never; migrate_owner?: never; format?: never; include_usage_stats?: never; include_contact_counts?: never; include_owner_details?: never; status_filter?: never; filename?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { account_id: { type: string; description: string; }; migrate_owner: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; recursive?: never; partner_account_id?: never; with_count?: never; email?: never; password?: never; company?: never; language?: never; timezone?: never; country?: never; phone?: never; website?: never; description?: never; skip_verification?: never; verification_code?: never; format?: never; include_usage_stats?: never; include_contact_counts?: never; include_owner_details?: never; status_filter?: never; filename?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { email: { type: string; description: string; format: string; }; sender_id: { type: string; description: string; }; subject: { type: string; description: string; }; html_content: { type: string; description: string; }; text_content: { type: string; description: string; }; template_id: { type: string; description: string; }; list_id: { type: string; description: string; }; email_type: { type: string; enum: string[]; description: string; default: string; }; email_id?: never; as_submitted?: never; tracking?: never; log_type?: never; iso_time?: never; page?: never; per_page?: never; start_time?: never; end_time?: never; tags?: never; providers?: never; sort?: never; interval?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { email_id: { type: string; description: string; format: string; }; email?: never; sender_id?: never; subject?: never; html_content?: never; text_content?: never; template_id?: never; list_id?: never; email_type?: never; as_submitted?: never; tracking?: never; log_type?: never; iso_time?: never; page?: never; per_page?: never; start_time?: never; end_time?: never; tags?: never; providers?: never; sort?: never; interval?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { email_id: { type: string; description: string; format: string; }; as_submitted: { type: string; description: string; default: boolean; }; tracking: { type: string; description: string; default: boolean; }; email?: never; sender_id?: never; subject?: never; html_content?: never; text_content?: never; template_id?: never; list_id?: never; email_type?: never; log_type?: never; iso_time?: never; page?: never; per_page?: never; start_time?: never; end_time?: never; tags?: never; providers?: never; sort?: never; interval?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { email: { type: string; description: string; format: string; }; sender_id: { type: string; description: string; }; subject: { type: string; description: string; }; html_content: { type: string; description: string; }; text_content: { type: string; description: string; }; template_id: { type: string; description: string; }; list_id: { type: string; description: string; }; email_type?: never; email_id?: never; as_submitted?: never; tracking?: never; log_type?: never; iso_time?: never; page?: never; per_page?: never; start_time?: never; end_time?: never; tags?: never; providers?: never; sort?: never; interval?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; account_id: { type: string; description: string; }; start_time?: never; end_time?: never; page?: never; per_page?: never; sort?: never; order?: never; interval?: never; list_id?: never; workflow_id?: never; action_id?: never; status?: never; progress?: never; campaign_ids?: never; format?: never; fields?: never; export_id?: never; description?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; start_time: { type: string; description: string; }; end_time: { type: string; description: string; }; account_id: { type: string; description: string; }; page: { type: string; description: string; }; per_page: { type: string; description: string; }; sort: { type: string; enum: string[]; description: string; }; order: { type: string; enum: string[]; description: string; }; interval?: never; list_id?: never; workflow_id?: never; action_id?: never; status?: never; progress?: never; campaign_ids?: never; format?: never; fields?: never; export_id?: never; description?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { start_time: { type: string; description: string; }; end_time: { type: string; description: string; }; account_id: { type: string; description: string; }; interval: { type: string; enum: string[]; description: string; }; campaign_id?: never; page?: never; per_page?: never; sort?: never; order?: never; list_id?: never; workflow_id?: never; action_id?: never; status?: never; progress?: never; campaign_ids?: never; format?: never; fields?: never; export_id?: never; description?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { list_id: { type: string; description: string; }; account_id: { type: string; description: string; }; start_time: { type: string; description: string; }; end_time: { type: string; description: string; }; interval: { type: string; enum: string[]; description: string; }; campaign_id?: never; page?: never; per_page?: never; sort?: never; order?: never; workflow_id?: never; action_id?: never; status?: never; progress?: never; campaign_ids?: never; format?: never; fields?: never; export_id?: never; description?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { workflow_id: { type: string; description: string; }; action_id: { type: string; description: string; }; account_id: { type: string; description: string; }; campaign_id?: never; start_time?: never; end_time?: never; page?: never; per_page?: never; sort?: never; order?: never; interval?: never; list_id?: never; status?: never; progress?: never; campaign_ids?: never; format?: never; fields?: never; export_id?: never; description?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_ids: { type: string; items: { type: string; }; description: string; }; start_time: { type: string; description: string; }; end_time: { type: string; description: string; }; format: { type: string; enum: string[]; description: string; }; fields: { type: string; items: { type: string; }; description: string; }; account_id: { type: string; description: string; }; campaign_id?: never; page?: never; per_page?: never; sort?: never; order?: never; interval?: never; list_id?: never; workflow_id?: never; action_id?: never; status?: never; progress?: never; export_id?: never; description?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { export_id: { type: string; description: string; }; account_id: { type: string; description: string; }; campaign_id?: never; start_time?: never; end_time?: never; page?: never; per_page?: never; sort?: never; order?: never; interval?: never; list_id?: never; workflow_id?: never; action_id?: never; status?: never; progress?: never; campaign_ids?: never; format?: never; fields?: never; description?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { campaign_id: { type: string; description: string; }; account_id: { type: string; description: string; }; page: { type: string; description: string; }; per_page: { type: string; description: string; }; with_count: { type: string; description: string; }; sort: { type: string; description: string; }; order: { type: string; enum: string[]; description: string; }; cursor: { type: string; description: string; }; filter: { type: string; description: string; }; type: { type: string; description: string; }; start_time: { type: string; description: string; }; end_time: { type: string; description: string; }; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { name: { type: string; description: string; }; default_sender: { type: string; description: string; properties: { name: { type: string; description: string; }; email: { type: string; format: string; description: string; }; }; required: string[]; }; language: { type: string; description: string; default: string; }; redirections: { type: string; description: string; properties: { subscribe: { type: string; format: string; description: string; }; unsubscribe: { type: string; format: string; description: string; }; update: { type: string; format: string; description: string; }; }; }; webhook: { type: string; description: string; properties: { url: { type: string; format: string; description: string; }; actions: { type: string; items: { type: string; enum: string[]; }; description: string; }; }; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; sort?: never; order?: never; with_count?: never; list_id?: never; start_time?: never; end_time?: never; interval?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { list_id: { type: string; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; sort?: never; order?: never; with_count?: never; default_sender?: never; language?: never; redirections?: never; webhook?: never; start_time?: never; end_time?: never; interval?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { list_id: { type: string; description: string; }; name: { type: string; description: string; }; default_sender: { type: string; description: string; properties: { name: { type: string; description: string; }; email: { type: string; format: string; description: string; }; }; required?: never; }; language: { type: string; description: string; default?: never; }; redirections: { type: string; description: string; properties: { subscribe: { type: string; format: string; description: string; }; unsubscribe: { type: string; format: string; description: string; }; update: { type: string; format: string; description: string; }; }; }; webhook: { type: string; description: string; properties: { url: { type: string; format: string; description: string; }; actions: { type: string; items: { type: string; enum: string[]; }; description: string; }; }; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; sort?: never; order?: never; with_count?: never; start_time?: never; end_time?: never; interval?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { list_id: { type: string; description: string; }; start_time: { type: string; description: string; }; end_time: { type: string; description: string; }; interval: { type: string; enum: string[]; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; sort?: never; order?: never; with_count?: never; default_sender?: never; language?: never; redirections?: never; webhook?: never; }; required: string[]; }; } | { name: string; description: string; inputSchema: { type: string; properties: { list_id: { type: string; description: string; }; start_time: { type: string; description: string; }; end_time: { type: string; description: string; }; account_id: { type: string; description: string; }; page?: never; per_page?: never; status?: never; name?: never; sort?: never; order?: never; with_count?: never; default_sender?: never; language?: never; redirections?: never; webhook?: never; interval?: never; }; required: string[