FieldCure.Mcp.Outbox
Multi-channel messaging MCP server — send messages through Slack, Telegram, Email (Gmail, Naver, Microsoft Graph API), KakaoTalk, and Discord with a single send_message tool. One install, one interface, multiple channels.
Install
dotnet tool install -g FieldCure.Mcp.Outbox
Quick Start
fieldcure-mcp-outbox add slack
fieldcure-mcp-outbox add gmail
fieldcure-mcp-outbox
Claude Desktop
{
"mcpServers": {
"outbox": {
"command": "fieldcure-mcp-outbox"
}
}
}
Tools (4)
list_channels | List all configured messaging channels | — |
add_channel | Add a new channel (opens setup console) | — |
send_message | Send a message through a channel | Required |
remove_channel | Remove a channel and its data | Required |
Channels
| Slack | Web API (chat.postMessage) | Bot Token |
| Telegram | Client API (WTelegramClient) | API ID + Hash + SMS |
| Gmail | SMTP (smtp.gmail.com:587) | App password |
| Naver | SMTP (smtp.naver.com:465) | App password |
| Microsoft | Graph API (/me/sendMail) | OAuth 2.0 |
| Custom SMTP | User-defined SMTP server | Username + password |
| KakaoTalk | Kakao REST API | OAuth 2.0 |
| Discord | Webhook API | Webhook URL |
Credential Storage
Credentials are resolved in this order:
- In-memory cache (from prior elicitation or env var pickup in the current session)
- Environment variable
OUTBOX_{CHANNEL_ID}_{FIELD} (e.g. OUTBOX_SLACK_GENERAL_BOT_TOKEN)
channels.json (plaintext, written by the CLI setup flow)
- MCP Elicitation (when the client supports it)
OAuth dynamic tokens (Microsoft, KakaoTalk) are persisted separately in tokens.json with current-user-only file permissions (Windows ACL / Unix 0600). Channel setup never passes credentials through MCP stdio.
Plaintext storage in channels.json is a deliberate local-trust choice — same same-user security boundary as ~/.docker/config.json and ~/.config/gh/hosts.yml. For shared hosts, CI, or headless deployments, set the env vars directly and leave the secret fields of channels.json empty. See ADR-001 Principle 2.
Requirements
See Also
Part of the AssistStudio ecosystem.