Keila MCP Server
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
Keila MCP Server
This repository contains a Model Context Protocol (MCP) server that acts as a secure, multi-tenant proxy between an AI Assistant and the Keila backend API. It exposes 34 MCP tools covering 6 resource domains with full CRUD, transactional messaging, and system operations.
β¨ Features
π Identity Passthrough β Extracts the
Authorization: Bearer <token>header from incoming HTTP requests and forwards it to the Keila API without server-side authentication.π₯ Multi-Tenancy β Uses Python
contextvarsto maintain thread-safe user identity isolation, ensuring all AI-driven actions are scoped to the authenticated user's permissions.π Full Keila Coverage β 34 tools mapped to Keila REST API endpoints across 6 resource domains.
β‘ TOON Optimization β Bulk list responses are automatically compressed using TOON (Token-Optimized Object Notation) to reduce token consumption and maximize context window efficiency.
π Efficient Gets β GET responses return only commonly used fields by default. Full objects are available via an
include_all_fieldsflag.π§ͺ Comprehensive Testing β 75 automated tests covering all tool domains, run via the test runner pipeline.
π·οΈ Tool Annotations β All tools expose standard MCP ToolAnnotations hints (readOnlyHint, destructiveHint, idempotentHint, openWorldHint). The tags field carries grouping metadata (basic/primary/advanced + keila).
Related MCP server: mcp-mautic
π§ Environment Variables
Variable | Required | Description |
| Yes | Docker-internal URL of the Keila API (e.g. |
| Yes | Port number the MCP server listens on |
| No | When |
| No | When |
π¦ Installation & Local Development
Ensure you have Python 3.12+ installed.
Install dependencies:
pip install fastmcp httpx pydantic uvicorn toon-mcp-serverRun the server:
export KEILA_BASE_URL=http://keila-app:4000 export MCP_SERVER_PORT=80 python -m src.main
π³ Docker Deployment
Build and run the server using Docker:
docker build -t keila-mcp:latest .
docker run -d --name keila-mcp \
-e KEILA_BASE_URL="http://keila-app:4000" \
-e MCP_SERVER_PORT=80 \
-e ALLOW_ALL_AGGREGATE=false \
keila-mcp:latestThe MCP server serves at http://keila-mcp:80/mcp (Streamable HTTP).
β οΈ Important Notes
π
include_all_fieldsβ Theinclude_all_fieldsparameter (available on allget_*andlist_*tools) controls whether all available fields are included in responses. Defaults toFalsefor performance; set toTrueonly when additional fields are needed.π
ALLOW_ALL_AGGREGATEβ Controls whether aggregate listing tools respect theinclude_all_fieldsparameter. When set tofalse(default), all aggregate list operations silently return only default fields regardless of the caller's request.β‘ TOON Compression β All bulk list responses are automatically compressed using TOON to reduce token consumption by 30β60%.
π Required Fields & Defaults β Each
create_*tool requires specific key fields. All other fields default to empty strings or reasonable values.
π οΈ API Tool Mapping
The server implements 34 MCP tools organized into the following categories:
π§ Campaigns (7 tools)
list_all_campaignsβ List all campaign recordsget_campaign_by_idβ Get a single campaign by IDcreate_campaignβ Create a new campaignupdate_campaignβ Update an existing campaigndelete_campaign_by_idβ Delete a campaign by IDsend_campaignβ Queue a campaign for immediate deliveryschedule_campaignβ Schedule a campaign for future delivery
π― Segments (5 tools)
list_all_segmentsβ List all segment recordsget_segment_by_idβ Get a single segment by IDcreate_segmentβ Create a new segmentupdate_segmentβ Update an existing segmentdelete_segment_by_idβ Delete a segment by ID
π₯ Contacts (7 tools)
list_all_contactsβ List all contact recordsget_contact_by_idβ Get a single contact by ID, email, or external IDcreate_contactβ Create a new contactupdate_contactβ Update an existing contactdelete_contact_by_idβ Delete a contact by ID, email, or external IDupdate_contact_dataβ Shallow-merge custom data fields on a contactreplace_contact_dataβ Replace all custom data fields on a contact
π Forms (6 tools)
list_all_formsβ List all form recordsget_form_by_idβ Get a single form by IDcreate_formβ Create a new formupdate_formβ Update an existing formdelete_form_by_idβ Delete a form by IDsubmit_formβ Submit a form to create or update a contact
π Templates (5 tools)
list_all_templatesβ List all template recordsget_template_by_idβ Get a single template by IDcreate_templateβ Create a new templateupdate_templateβ Update an existing templatedelete_template_by_idβ Delete a template by ID
π οΈ Senders, Transactional Messages & System Tools (4 tools)
list_all_sendersβ List all sender recordssend_transactional_messageβ Send a transactional messagerender_transactional_messageβ Render a transactional message without sending itcheck_server_statusβ Check connectivity to the Keila backend
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
This server cannot be deployed
Maintenance
Related MCP Connectors
Email API + newsletters. 17 MCP tools. OAuth 2.1 PKCE or API key. EU-hosted (Hetzner + SES).
Official remote MCP server of MailSenpai, the EU-hosted email marketing platform. Connect Claude, ChatGPT, Cursor or another MCP client with OAuth 2.1 and PKCE. 74 tools manage lists, subscribers, segments, templates, draft campaigns and stats, and check email DNS, blacklists and spam. Sends and deletions require explicit confirmation; every call is logged. The same team also offers SMTP Senpai, an SMTP relay and email API for transactional sending: https://en.mailsenpai.com/smtp-senpai/.
Send transactional email and manage domains, audiences, and broadcasts from any MCP client.
Hosted Mailchimp MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Related MCP Servers
- AlicenseAqualityBmaintenance22 consolidated MCP tools for email, calendar, contacts, folders, rules, categories, and settings with safety controls (dry-run preview, rate limiting, recipient allowlists) and MCP annotations on every tool. Works with personal Outlook.com and work/school Microsoft 365 accounts.22395 npm39MIT
- AlicenseNot gradedqualityFmaintenanceComprehensive MCP server for the Mautic marketing automation API, providing 203 tools for managing contacts, campaigns, emails, segments, and more.2ISC
- AlicenseNot gradedqualityDmaintenanceMCP server for Mailtarget that exposes tools to discover and call management API endpoints and send transactional emails via the Transmission API.2 npmMIT
- AlicenseNot gradedqualityCmaintenanceMulti-tenant MCP server for self-hosted Kanboard that enables team members to manage Kanboard projects, tasks, and boards with per-user authentication and permissions.MIT