メールモド-mcp
これは、Mailmodo と Claude Desktop およびその他の MCP 対応クライアントとの統合用のメッセージ制御プロトコル (MCP) サーバーを実装する TypeScript プロジェクトです。
前提条件
- Node.js (v20以上を推奨)
- npm (Node.js に付属)
インストール
- リポジトリをクローンします。
git clone https://github.com/mailmodo/mailmodo-mcp.git
cd mailmodo-mcp
- 依存関係をインストールします:
プロジェクトの構築
TypeScript コードを JavaScript にコンパイルするには、次のコマンドを実行します。
これにより、コンパイルされた JavaScript ファイルを含むdist
ディレクトリが作成されます。
プロジェクトの実行
ビルド後、次のコマンドを使用してプロジェクトを実行できます。
または、npm スクリプトを使用します。
クロードデスクトップ構成
コードからのローカル実行
このプロジェクトを Claude Desktop で構成するには、Claude Desktop 設定に次の構成を追加します。
{
"mcpServers": {
"mailmodo": {
"command": "node",
"args": [
"/path/to/your/mailmodo-mcp/dist/index.js"
]
}
}
}
Dockerイメージから実行
{
"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>"
}
}
}
}
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>"
}
}
}
}
リモートサーバー経由で接続
{
"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>"
}
}
}
}
ローカル プロジェクト ディレクトリと一致するように、 args
配列内のファイル パスを調整してください。
発達
自動再コンパイルを使用して開発モードでプロジェクトを実行するには:
ts-node
とnodemon
開発依存関係としてインストールします。
npm install --save-dev ts-node nodemon
- package.json に開発スクリプトを追加します。
{
"scripts": {
"dev": "nodemon src/index.ts",
"build": "tsc",
"start": "node dist/index.js"
}
}
- 開発サーバーを実行します。
プロジェクト構造
mailmodo-mcp/
├── src/ # TypeScript source files
├── dist/ # Compiled JavaScript files
├── package.json # Project dependencies and scripts
└── tsconfig.json # TypeScript configuration
ツールとリソース
Mailmodo MCPサーバーは、Mailmodoの機能を利用するためのツールとリソースを複数提供しています。以下にその一覧を示します。
リソース
- Mailmodo テンプレート(
mailmodo://templates
)- 利用可能なすべてのメールテンプレートのリストをJSON形式で返します
- MIMEタイプ: application/json
- Mailmodo キャンペーン(
mailmodo://campaigns
)- すべてのキャンペーンのリストをJSON形式で返します
- MIMEタイプ: application/json
- Mailmodo 連絡先リスト(
mailmodo://contact-lists
)- すべての連絡先リストをJSON形式で返します
- MIMEタイプ: application/json
ツール
- ユーザー詳細
- 名前:
userDetails
- 説明: 連絡先のすべての詳細を取得します
- パラメータ:
- キャンペーンレポートツール
- 名前:
MailmodoCampainReportTool
- 説明: 開封数、クリック数、送信数などのキャンペーンレポートを取得します
- パラメータ:
campaignId
(UUID): キャンペーンのIDfromDate
(YYYY-MM-DD): レポートの開始日toDate
(YYYY-MM-DD): レポートの終了日
- 現在の日時
- 名前:
currentDateTime
- 説明: 現在の日付と時刻を取得します
- パラメータ: なし
- イベントを送信
- 名前:
sendEvent
- 説明: メールとイベントプロパティを使用してカスタムイベントを送信します
- パラメータ:
email
(文字列): 連絡先のメールアドレスevent_name
(文字列): イベントの名前ts
(数値、オプション): タイムスタンプevent_properties
(オブジェクト、オプション): 追加のイベントプロパティ
- 連絡先リスト管理
- 連絡先をリストに追加
- 名前:
addContactToList
- 説明: リストに単一の連絡先を追加する
- パラメータ:
email
(文字列): 連絡先のメールアドレスlistName
(文字列): リストの名前data
(オブジェクト、オプション): 連絡先のプロパティ- 連絡先メタデータのさまざまなオプションフィールド
- 連絡先を一括追加
- 名前:
addBulkContactToList
- 説明: 1 回の操作で複数の連絡先をリストに追加します
- パラメータ:
listName
(文字列): リストの名前values
(配列):連絡先オブジェクトの配列
- リストから連絡先を削除
- 名前:
removeContactFromList
- 説明: 特定のリストから連絡先を削除します
- パラメータ:
email
(文字列): 連絡先のメールアドレスlistName
(文字列): リストの名前
- 連絡先ステータス管理
- 購読解除のお問い合わせ
- 名前:
unsubscribeContact
- 説明: 連絡先の登録を解除または抑制する
- パラメータ:
- 再登録連絡先
- 名前:
resubscribeContact
- 説明: 以前に登録解除した連絡先を再度登録する
- パラメータ:
- アーカイブ連絡先
- 名前:
archiveContact
- 説明: 連絡先を永久にアーカイブする
- パラメータ:
- キャンペーン管理
- メールキャンペーンの送信
- 名前:
sendEmailToCampaign
- 説明: パーソナライゼーションによるメールキャンペーンをトリガーする
- パラメータ:
campaignId
(文字列): キャンペーンIDemail
(文字列): 受信者のメールアドレス- カスタマイズのためのさまざまなオプションパラメータ
- 放送キャンペーン
- 名前:
broadcastCampaignToList
- 説明: 連絡先リスト全体にキャンペーンをトリガーします
- パラメータ:
campaignId
(文字列): キャンペーンIDlistId
(文字列): 対象リストID- キャンペーンカスタマイズのオプションパラメータ
ライセンス
MITライセンス