Cover image
Try Now
2025-04-14

3 years

Works with Finder

0

Github Watches

0

Github Forks

0

Github Stars

mailmodo-mcp

This is a TypeScript project that implements a Message Control Protocol (MCP) server for Mailmodo integration with Claude Desktop and other MCP supported client.

Prerequisites

  • Node.js (v20 or higher recommended)
  • npm (comes with Node.js)

Installation

  1. Clone the repository:
git clone https://github.com/mailmodo/mailmodo-mcp.git
cd mailmodo-mcp
  1. Install dependencies:
npm install

Building the Project

To compile the TypeScript code to JavaScript, run:

npm run build

This will create a dist directory containing the compiled JavaScript files.

Running the Project

After building, you can run the project using:

node dist/index.js

Or use the npm script:

npm start

Claude Desktop Configuration

Local Run from Code

To configure this project with Claude Desktop, add the following configuration to your Claude Desktop settings:

{
  "mcpServers": {
    "mailmodo": {
      "command": "node",
      "args": [
        "/path/to/your/mailmodo-mcp/dist/index.js"
      ]
    }
  }
}

Run from docker image

{
  "mcpServers": {
    "mailmodo": {
      "command": "docker",
      "args": [
        "run",
        "--platform", 
        "linux/amd64",
        "-i",
        "--rm",
        "-e",
        "MAILMODO_API_KEY",
        "avneesh001/mailmodo-mcp"
      ],
      "env": {
        "MAILMODO_API_KEY": "<GET MAILMODO KEY from https://manage.mailmodo.com/app/settings/apikey and insert here>"
      }
    }
  }
}

Run from npx

{
  "mcpServers": {
    "mailmodo": {
      "command": "npx",
      "args": [
        "-y",
        "@mailmodo/mcp"
      ],
      "env": {
        "MAILMODO_API_KEY": "<GET MAILMODO KEY from https://manage.mailmodo.com/app/settings/apikey and insert here>"
      }
    }
  }
}

Connect via Remote Server

{
  "mcpServers": {
    "mailmodo": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.app.mailmodo.com/mcp",
        "--header",
        "mmApiKey:${MAILMODO_API_KEY}"
      ],
      "env": {
        "MAILMODO_API_KEY": "<GET MAILMODO KEY from https://manage.mailmodo.com/app/settings/apikey and insert here>"
      }
    }
  }
}

Make sure to adjust the file path in the args array to match your local project directory.

Development

To run the project in development mode with automatic recompilation:

  1. Install ts-node and nodemon as dev dependencies:
npm install --save-dev ts-node nodemon
  1. Add a dev script to your package.json:
{
  "scripts": {
    "dev": "nodemon src/index.ts",
    "build": "tsc",
    "start": "node dist/index.js"
  }
}
  1. Run the development server:
npm run dev

Project Structure

mailmodo-mcp/
├── src/             # TypeScript source files
├── dist/            # Compiled JavaScript files
├── package.json     # Project dependencies and scripts
└── tsconfig.json    # TypeScript configuration

Tools and Resources

The Mailmodo MCP server provides several tools and resources for interacting with Mailmodo's functionality. Here's a comprehensive list:

Resources

  1. Mailmodo Templates (mailmodo://templates)

    • Returns a list of all available email templates in JSON format
    • MIME Type: application/json
  2. Mailmodo Campaigns (mailmodo://campaigns)

    • Returns a list of all campaigns in JSON format
    • MIME Type: application/json
  3. Mailmodo Contact Lists (mailmodo://contact-lists)

    • Returns all contact lists in JSON format
    • MIME Type: application/json

Tools

  1. User Details

    • Name: userDetails
    • Description: Get all details of a contact
    • Parameters:
      • email (string): Email address of the contact
  2. Campaign Report Tool

    • Name: MailmodoCampainReportTool
    • Description: Get campaign reports including open, click, and submission counts
    • Parameters:
      • campaignId (UUID): ID of the campaign
      • fromDate (YYYY-MM-DD): Start date for the report
      • toDate (YYYY-MM-DD): End date for the report
  3. Current DateTime

    • Name: currentDateTime
    • Description: Get current date and time
    • Parameters: None
  4. Send Event

    • Name: sendEvent
    • Description: Send custom events with email and event properties
    • Parameters:
      • email (string): Contact's email address
      • event_name (string): Name of the event
      • ts (number, optional): Timestamp
      • event_properties (object, optional): Additional event properties
  5. Contact List Management

    • Add Contact to List

      • Name: addContactToList
      • Description: Add a single contact to a list
      • Parameters:
        • email (string): Contact's email
        • listName (string): Name of the list
        • data (object, optional): Contact properties
        • Various optional fields for contact metadata
    • Bulk Add Contacts

      • Name: addBulkContactToList
      • Description: Add multiple contacts to a list in a single operation
      • Parameters:
        • listName (string): Name of the list
        • values (array): Array of contact objects
    • Remove Contact from List

      • Name: removeContactFromList
      • Description: Remove a contact from a specific list
      • Parameters:
        • email (string): Contact's email
        • listName (string): Name of the list
  6. Contact Status Management

    • Unsubscribe Contact

      • Name: unsubscribeContact
      • Description: Unsubscribe or suppress a contact
      • Parameters:
        • email (string): Contact's email
    • Resubscribe Contact

      • Name: resubscribeContact
      • Description: Resubscribe a previously unsubscribed contact
      • Parameters:
        • email (string): Contact's email
    • Archive Contact

      • Name: archiveContact
      • Description: Permanently archive a contact
      • Parameters:
        • email (string): Contact's email
  7. Campaign Management

    • Send Email Campaign

      • Name: sendEmailToCampaign
      • Description: Trigger an email campaign with personalization
      • Parameters:
        • campaignId (string): Campaign ID
        • email (string): Recipient's email
        • Various optional parameters for customization
    • Broadcast Campaign

      • Name: broadcastCampaignToList
      • Description: Trigger campaigns to an entire contact list
      • Parameters:
        • campaignId (string): Campaign ID
        • listId (string): Target list ID
        • Optional parameters for campaign customization

License

MIT License

相关推荐

  • av
  • Exécutez sans effort LLM Backends, API, Frontends et Services avec une seule commande.

  • 1Panel-dev
  • 🔥 1Panel fournit une interface Web intuitive et un serveur MCP pour gérer des sites Web, des fichiers, des conteneurs, des bases de données et des LLM sur un serveur Linux.

  • WangRongsheng
  • 🧑‍🚀 全世界最好的 LLM 资料总结 (数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Résumé des meilleures ressources LLM du monde.

  • rulego
  • ⛓️RULEGO est un cadre de moteur de règle d'orchestration des composants de nouvelle génération légère, intégrée, intégrée et de nouvelle génération pour GO.

  • Byaidu
  • PDF Traduction de papier scientifique avec formats conservés - 基于 AI 完整保留排版的 PDF 文档全文双语翻译 , 支持 Google / Deepl / Olllama / Openai 等服务 , 提供 CLI / GUI / MCP / DOCKER / ZOTERO

  • sigoden
  • Créez facilement des outils et des agents LLM à l'aide de fonctions Plain Bash / JavaScript / Python.

  • RockChinQ
  • 😎简单易用、🧩丰富生态 - 大模型原生即时通信机器人平台 | 适配 QQ / 微信 (企业微信、个人微信) / 飞书 / 钉钉 / Discord / Telegram / Slack 等平台 | 支持 Chatgpt 、 Deepseek 、 Dify 、 Claude 、 GEMINI 、 XAI 、 PPIO 、 OLLAMA 、 LM Studio 、阿里云百炼、火山方舟、 Siliconflow 、 Qwen 、 Moonshot 、 ChatGlm 、 Sillytraven 、 MCP 等 LLM 的机器人 / Agent | Plateforme de bots de messagerie instantanée basés sur LLM, prend en charge Discord, Telegram, WeChat, Lark, Dingtalk, QQ, Slack

  • hkr04
  • SDK C ++ MCP (Protocole de contexte modèle léger)

  • dmayboroda
  • Rag de conversation sur site avec des conteneurs configurables

  • modelscope
  • Commencez à construire des applications multi-agents LLM, plus facilement.

    Reviews

    3.2 (5)
    Avatar
    user_INhmHiXW
    2025-04-24

    I've been a dedicated user of mailmodo-mcp, and it has truly transformed my email campaigns. The platform is intuitive and the interactive email features helped me achieve higher engagement rates. Kudos to Mailmodo for creating such an efficient tool! Highly recommend it to anyone looking to enhance their email marketing strategy.

    Avatar
    user_mfqJpZQ8
    2025-04-24

    I've been using Mailmodo-MCP for a while now, and it has significantly improved my email marketing campaigns. The interactive features and customizable templates are top-notch. Additionally, the interface is user-friendly, making it easy to create and send engaging emails. Overall, a fantastic tool for anyone serious about email marketing!

    Avatar
    user_Y52fuorj
    2025-04-24

    As an avid user of mailmodo-mcp, I am thoroughly impressed with its seamless functionality and user-friendly interface. The ability to craft interactive and engaging email campaigns has significantly boosted my marketing efforts. Mailmodo has truly set a high standard with this product, making my campaigns more effective and easy to manage. Highly recommend for anyone looking to improve their email marketing strategy.

    Avatar
    user_qS1bViQX
    2025-04-24

    Mailmodo-MCP is simply fantastic! The interface is user-friendly and efficient. It has greatly streamlined my email marketing processes, saving me tons of time. The integration with other tools is seamless, and the support team is always responsive. Highly recommend Mailmodo-MCP for anyone looking to enhance their email campaigns.

    Avatar
    user_60Ux5wjl
    2025-04-24

    Mailmodo-MCP has completely transformed the way I handle my email campaigns. The platform's user-friendly interface and robust features make it easy to create and send interactive emails. The insightful analytics and customizable templates are excellent. Highly recommend this tool for anyone looking to enhance their email marketing strategy!