Spotler Sendpro / Flowmailer Mcp Server について
Spotler SendProのアカウントデータやメッセージ操作をAIエージェントから利用する、非公式のMCPサーバーです。OAuth2を使い、既定では読み取り専用で、書き込みを有効にするとメッセージ操作も行えます。
主な機能
- 01OAuth2クライアント資格情報認証
- 02既定の読み取り専用モード
- 03メッセージと宛先の参照
- 04リソースとエンドポイントの一覧
- 05送信・シミュレーション・再送に対応
活用シーン
- 01メッセージとアーカイブ内容の確認
- 02宛先やSendProリソースの参照
- 03必要に応じたメッセージ送信や再送
MCP 対応
stdio経由でSendPro API操作をMCPツールとして公開します。既定では読み取りのみで、書き込みツールには読み取り専用モードの解除が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
8掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| method | string | いいえ | |
| path | string | はい | 相対 SendPro API パス(例:/{account_id}/messages または /545/messages)。絶対 URL は拒否されます。 |
| accountId | string | いいえ | この呼び出しでは FLOWMAILER_ACCOUNT_ID を上書きします。 |
| matrix | object | いいえ | 最終パスセグメントに追加するマトリックスパラメーター(例:daterange)。 |
| query | object | いいえ | クエリ文字列パラメーター。 |
| body | any | いいえ | データを変更する API 呼び出しの JSON リクエストボディ。 |
| range | string | いいえ | Range ヘッダー(例:items=:10 または items=0-10)。 |
詳細
Spotler SendPro / FlowMailer MCP サーバー
旧称 FlowMailer である Spotler SendPro API 向けの、非公式 Model Context Protocol サーバーです。
このプロジェクトは Spotler と提携しておらず、同社の承認や保守を受けていません。SendPro アカウントのデータ、および明示的に有効化した場合の SendPro メッセージ操作への、管理された AI エージェントのアクセスを必要とするチーム向けのコミュニティ MCP サーバーです。
できること
- OAuth2 クライアントクレデンシャルを使用して SendPro に接続します。
- SendPro の操作を stdio 経由の MCP ツールとして公開します。
- デフォルトでは読み取り専用モードです。
- 読み取り専用モードが有効な場合、SendPro への変更リクエストをブロックします。
- 現行の SendPro 名と、従来の FlowMailer 環境変数に対応しています。
- server.json に MCP Registry のメタデータが含まれています。
インストール
npm から:
npx -y sendpro-flowmailer-mcp
GitHub から直接:
npx -y github:Mestika/sendpro-flowmailer-mcp
ローカル開発:
git clone https://github.com/Mestika/sendpro-flowmailer-mcp.git
cd sendpro-flowmailer-mcp
npm install
npm run build
node dist/index.js
設定
MCP クライアントの設定、シェル環境、またはローカルの .env ファイルで認証情報を設定します。
| 変数 | 必須 | デフォルト | 説明 |
|---|---|---|---|
SENDPRO_ACCOUNT_ID | はい | SendPro アカウント ID。 | |
SENDPRO_CLIENT_ID | はい | OAuth クライアント ID。 | |
SENDPRO_CLIENT_SECRET | はい | OAuth クライアントシークレット。 | |
SENDPRO_READ_ONLY | いいえ | true | セーフモードフラグ。true の場合、SendPro への読み取りリクエストのみ許可されます。 |
READ_ONLY | いいえ | SENDPRO_READ_ONLY の汎用的な上書き設定です。共有 MCP 設定の規約に便利です。 | |
SENDPRO_API_BASE_URL | いいえ | https://api.flowmailer.net | SendPro API のベース URL。 |
SENDPRO_AUTH_BASE_URL | いいえ | https://login.flowmailer.net | OAuth のベース URL。 |
SENDPRO_API_MEDIA_TYPE | いいえ | application/vnd.flowmailer.v1.12+json | SendPro のベンダーメディアタイプ。 |
従来のエイリアスにも対応しています:
| 現行 | Spotler のエイリアス | 従来の FlowMailer エイリアス |
|---|---|---|
SENDPRO_ACCOUNT_ID | SPOTLER_SENDPRO_ACCOUNT_ID | FLOWMAILER_ACCOUNT_ID |
SENDPRO_CLIENT_ID | SPOTLER_SENDPRO_CLIENT_ID | FLOWMAILER_CLIENT_ID |
SENDPRO_CLIENT_SECRET | SPOTLER_SENDPRO_CLIENT_SECRET | FLOWMAILER_CLIENT_SECRET |
SENDPRO_READ_ONLY | SPOTLER_SENDPRO_READ_ONLY | FLOWMAILER_READ_ONLY |
優先順位は READ_ONLY、次に SENDPRO_*、次に SPOTLER_SENDPRO_*、最後に FLOWMAILER_* です。
SendPro API 認証情報の作成
SendPro は OAuth2 クライアント認証情報を使用します。次の 3 つの値が必要です。
- アカウント ID
- クライアント ID
- クライアントシークレット
SendPro の公開 API ドキュメントによると、API は OAuth2 クライアント認証情報を使用し、アクセストークンのエンドポイントは https://login.flowmailer.net/oauth/token です。また、トークンのリクエストには client_id、client_secret、grant_type=client_credentials、および任意の scope=api フォーム値を使用します。同じドキュメントには /{account_id}/sources/{source_id}/users 配下のソースシステム認証情報エンドポイントも掲載されており、ソース認証情報の一覧表示、作成、取得、更新、削除に対応しています。
SendPro ダッシュボードでの正確なラベルはアカウントによって異なる場合がありますが、通常は次の手順で設定できます。
- Spotler SendPro にサインインします。
- 「Setup」に移動します。
- 「Sources」または「Source systems」を開きます。
- API アクセスに使用するソースシステムを選択するか、MCP/自動化用の専用ソースを作成します。
- ソースの認証情報/ユーザーのセクションを開きます。
MCP read-onlyのような明確な説明を付けて、新しい認証情報を作成します。- 生成されたクライアント ID とクライアントシークレットをコピーし、MCP クライアントの環境に保存します。
- アカウント URL、ダッシュボードのコンテキスト、または API 設定から SendPro のアカウント ID を確認し、
SENDPRO_ACCOUNT_IDとして設定します。
AI エージェントで使用する場合は、必要最小限のアクセス権に制限した認証情報を使用してください。送信、シミュレーション、再送の操作が明示的に必要な場合を除き、この MCP サーバーは読み取り専用モードのままにしてください。
公式リファレンス:
Codex
~/.codex/config.toml に次の内容を追加します。
[mcp_servers.sendpro_flowmailer]
command = "npx"
args = ["-y", "sendpro-flowmailer-mcp"]
startup_timeout_sec = 20.0
[mcp_servers.sendpro_flowmailer.env]
SENDPRO_ACCOUNT_ID = "your-account-id"
SENDPRO_CLIENT_ID = "your-client-id"
SENDPRO_CLIENT_SECRET = "your-client-secret"
SENDPRO_READ_ONLY = "true"
GitHub から直接実行するには:
[mcp_servers.sendpro_flowmailer]
command = "npx"
args = ["-y", "github:Mestika/sendpro-flowmailer-mcp"]
startup_timeout_sec = 20.0
Claude Desktop
claude_desktop_config.json に次の内容を追加します。
{
"mcpServers": {
"sendpro-flowmailer": {
"command": "npx",
"args": ["-y", "sendpro-flowmailer-mcp"],
"env": {
"SENDPRO_ACCOUNT_ID": "your-account-id",
"SENDPRO_CLIENT_ID": "your-client-id",
"SENDPRO_CLIENT_SECRET": "your-client-secret",
"SENDPRO_READ_ONLY": "true"
}
}
}
}
読み取り専用モード
SENDPRO_READ_ONLY のデフォルト値は true です。
読み取り専用モードが有効な場合:
- MCP スキーマでは、汎用リクエストツールに
GETのみを許可します。 - 変更を行うヘルパーツールは登録されません。
- 低レベルクライアントは、OAuth トークンをリクエストする前に、
POST、PUT、PATCH、DELETEによる SendPro API リクエストを拒否します。
読み取り専用モードでも、SendPro ではリソースを読み取る前に OAuth2 クライアント認証情報が必要なため、OAuth 自体では引き続き POST https://login.flowmailer.net/oauth/token を使用します。読み取り専用のガードが適用されるのは、設定された API ベース URL に対する SendPro API のリソース呼び出しです。
ツール
読み取りツール:
| ツール | 説明 |
|---|---|
flowmailer_request | 相対パスを指定して SendPro API にリクエストを送信します。読み取り専用モードでは GET のみ受け付けます。 |
flowmailer_endpoint_catalog | このサーバーが認識している SendPro エンドポイントの一覧を表示します。 |
flowmailer_list_messages | SendPro の参照範囲ページングを使用してメッセージの一覧を表示します。 |
flowmailer_get_message | ID を指定して 1 件のメッセージを取得します。 |
flowmailer_get_message_archive | メッセージのアーカイブ済みコンテンツのメタデータを取得します。 |
flowmailer_get_message_error_archive | メッセージのアーカイブ済みエラーコンテンツを取得します。 |
flowmailer_get_recipient | 受信者情報を取得します。 |
flowmailer_list_resource | フロー、テンプレート、送信者ドメイン、ソース、統計情報など、一般的なリソースの一覧を表示します。 |
書き込みツール。SENDPRO_READ_ONLY=false の場合のみ使用できます。
| ツール | 説明 |
|---|---|
flowmailer_submit_message | メールまたは SMS メッセージを送信します。 |
flowmailer_simulate_message | メールまたは SMS メッセージをシミュレーションします。 |
flowmailer_resend_message | ID を指定してメッセージを再送します。 |
公開 SendPro API とメディアタイプの一部で現在も FlowMailer の名称が使用されているため、ツール名には引き続き FlowMailer のプレフィックスが付いています。見つけやすくするため、パッケージ名とドキュメントでは SendPro と FlowMailer の両方を使用しています。
例
メッセージを一覧表示します:
{
"method": "GET",
"path": "/{account_id}/messages",
"matrix": {
"daterange": "2026-05-01T00:00:00Z,2026-05-20T00:00:00Z"
},
"query": {
"addevents": true,
"sortfield": "INSERTED",
"sortorder": "ASC"
},
"range": "items=:10"
}
便利なツールを使ってフローを一覧表示します:
{
"resource": "flows"
}
SENDPRO_READ_ONLY=false の場合にのみ、メッセージを送信します:
{
"body": {
"messageType": "EMAIL",
"headerFromAddress": "[email protected]",
"headerToAddress": "[email protected]",
"subject": "Hello",
"text": "Message body"
}
}
開発
npm install
npm run check
便利なコマンド:
npm run dev
npm run build
npm run typecheck
npm test
npm run inspect
リポジトリの構成、バッジ、リリース管理、メンテナンス設定については、docs/repository-health.md を参照してください。
公開
このパッケージは npm に sendpro-flowmailer-mcp として公開されており、リポジトリにはレジストリへの登録申請用の MCP Registry メタデータが含まれています。
npm の場合:
npm publish --access public
公式 MCP Registry に登録するには、npm パッケージが存在してから server.json を公開してください。npm パッケージには次のものが含まれます:
{
"mcpName": "io.github.mestika/sendpro-flowmailer-mcp"
}
リリースとバージョン
このプロジェクトでは、v0.1.0、v0.1.1、v1.0.0 のようなセマンティックバージョンのタグを使用します。
次を実行します:
npm run version:patch # bug fixes and small documentation-only release updates
npm run version:minor # new backwards-compatible tools or features
npm run version:major # breaking changes
git push origin main --follow-tags
その後、新しいタグから GitHub Release を作成します。GitHub Release は公開される変更履歴で、Git タグは正確なソーススナップショットです。完全なチェックリストについては、docs/releasing.md を参照してください。
セキュリティ
実際の SendPro 認証情報を絶対にコミットしないでください。MCP クライアントの環境変数、シェル環境変数、またはローカルの .env ファイルを使用してください。
脆弱性の報告と運用上の注意事項については、SECURITY.md を参照してください。
ライセンス
MIT です。LICENSE を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。