A side-by-side look at the MisarMail MCP Server and Yandex Direct MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose MisarMail MCP Server for marketing work as a local process; choose Yandex Direct MCP for marketing as a local process. You can also run both side by side in one mcpServers block.
MISARMAIL_API_KEY, MISARMAIL_BASE_URL.send_email, list_emails, get_email.YANDEX_DIRECT_TOKEN, YANDEX_DIRECT_SANDBOX, YANDEX_DIRECT_LOGIN.list_campaigns, get_campaign, create_campaign.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Marketing | Marketing |
| Quality signal | 57/100 · Good | 60/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | MISARMAIL_API_KEYMISARMAIL_BASE_URL | YANDEX_DIRECT_TOKENYANDEX_DIRECT_SANDBOXYANDEX_DIRECT_LOGIN |
| Verified owner | Community listing | Community listing |
| GitHub stars | 1 | 4 |
| Directory activity | 1 views 0 installs 0 upvotes | 1 views 0 installs 0 upvotes |
| Tools | 58 | 20 |
| Full listing | View MisarMail MCP Server | View Yandex Direct MCP |
send_emailSend a transactional email from a verified MisarMail account. `from.email` must match an email account you have already verified — use list_domains to check which sender domains are available. Returns the message ID and queue status.list_emailsList emails from a mailbox folder with optional full-text search across subject and body. Use this for reading the unified inbox; use list_campaigns for marketing sends.get_emailRead the full content of a single email by ID, including headers, body, and attachments metadata. Side effect: marks the email as read.reply_to_emailReply to an existing email thread. The sender address and threading headers are derived from the original message, so only the body is required.archive_emailMove an email to the archive folder. Reversible — the message is not deleted.validate_emailValidate an email address before sending: syntax, MX records, disposable-domain and role-account detection. Use this to protect sender reputation on imported lists.list_campaignsList email marketing campaigns with their status, audience size, and headline metrics. Filter by status to find drafts ready to send or campaigns still sending.get_campaignGet full details for one campaign: content, audience segment, schedule, and delivery statistics (sent, opened, clicked, bounced, complained).create_campaignCreate a new email marketing campaign as a draft. Creating never sends or schedules anything — once the content and audience are confirmed, call send_campaign to send it now or schedule it for later.send_campaignSend a campaign now, or schedule it for a future time by passing scheduled_at. This delivers real email to real recipients and cannot be undone once sending starts — confirm the audience with get_campaign first.list_contactsList contacts with their subscription status and engagement metrics. Filter by status to find unsubscribed or bounced addresses that should be excluded from sends.create_contactAdd a single contact. Adding a contact records consent to email them — only add addresses that opted in, or the send will damage sender reputation and may breach CAN-SPAM/GDPR.list_campaignsСписок рекламных кампаний Яндекс.Директ с фильтрацией по статусу и типу. Бюджеты — в рублях.get_campaignДетальная информация о кампании по ID: бюджет (руб), статус, даты, статистика.create_campaignСоздать новую рекламную кампанию. Бюджет в рублях. ⚠️ Тратит реальные деньги — используйте sandbox для теста.update_campaignОбновить кампанию: название, бюджет (руб) и/или статус (SUSPEND/RESUME/ARCHIVE/UNARCHIVE).list_ad_groupsГруппы объявлений выбранных кампаний: названия, регионы, статусы.create_ad_groupСоздать группу объявлений в кампании с таргетингом по регионам (см. get_regions).delete_ad_groupsУдалить группы объявлений по их ID. ⚠️ Необратимо.list_adsОбъявления в группах: заголовки, тексты, ссылки, статусы.create_text_adСоздать текстовое объявление: заголовок (≤56), второй заголовок (≤30), текст (≤81), ссылка.update_text_adОбновить текстовое объявление: заголовок, текст, ссылка. Изменённое объявление уходит на модерацию.manage_adsДействие над объявлениями: suspend/resume/archive/unarchive/moderate/delete. ⚠️ delete необратимо.list_keywordsКлючевые фразы в группах объявлений: фразы, ставки (руб), статусы.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"misarmail-mcp-server": {
"command": "npx",
"args": [
"-y",
"@misarmail/mcp@latest"
],
"env": {
"MISARMAIL_API_KEY": "YOUR_MISARMAIL_API_KEY_HERE",
"MISARMAIL_BASE_URL": "YOUR_MISARMAIL_BASE_URL_HERE"
}
}
}
}
{
"mcpServers": {
"yandex-direct-mcp-2": {
"command": "npx",
"args": [
"-y",
"@theyahia/yandex-direct-mcp"
],
"env": {
"YANDEX_DIRECT_TOKEN": "YOUR_YANDEX_DIRECT_TOKEN_HERE",
"YANDEX_DIRECT_SANDBOX": "YOUR_YANDEX_DIRECT_SANDBOX_HERE",
"YANDEX_DIRECT_LOGIN": "YOUR_YANDEX_DIRECT_LOGIN_HERE"
}
}
}
}