インストール不要。2分以内に動きます。
cloud.anythingmcp.com で無料トライアルを開始し、Postmark をワンクリックで追加して、AI クライアント(Claude、ChatGPT、Copilot、Cursor)を生成された MCP エンドポイントに向けるだけ。Docker も git clone も、開発経験も不要です。
概要
1 つのサーバーの Postmark トランザクションメールとブロードキャストメール:単発、一括、テンプレートでのメール送信、テンプレートの管理、開封、クリック、バウンスを含む送信済みと受信メッセージの検索、送信統計の参照、サプレッション、メッセージストリーム、Webhook の管理。任意のアカウントトークンがあれば、サーバー、ドメイン、送信者署名も読み取れます。
こう聞いてみよう
Postmark のサンプルプロンプト
プロンプトをクリックでコピー。Claude / ChatGPT / Cursor / Gemini / Copilot / OpenClaw に貼り付けて、このコネクターで実行できます。
Claude は AI のため誤ることがあります。回答をご確認ください。
💡 インストール不要? cloud.anythingmcp.com を直接利用してください。 サインインし、Connectors → Postmark をクリック、認証情報を貼り付け、MCP API キーを発行すれば完了です。Docker も
git cloneもローカルサーバーも不要。
Postmark + Microsoft Copilot
1 つのサーバーの Postmark トランザクションメールとブロードキャストメール:単発、一括、テンプレートでのメール送信、テンプレートの管理、開封、クリック、バウンスを含む送信済みと受信メッセージの検索、送信統計の参照、サプレッション、メッセージストリーム、Webhook の管理。任意のアカウントトークンがあれば、サーバー、ドメイン、送信者署名も読み取れます。
前提条件
完全なセットアップ手順はコネクタ自体に組み込まれています (ストアでコネクタを選択すると表示)。必要な環境変数:
POSTMARK_SERVER_TOKEN(任意: POSTMARK_ACCOUNT_TOKEN)
ステップ 1 — 認証情報を取得
設定は約 2 分です。サーバーのある Postmark アカウントが必要です。
- Postmark でサーバーを開き、API Tokens から Server API token を
POSTMARK_SERVER_TOKENにコピーします。X-Postmark-Server-Tokenヘッダーで送信され、そのサーバーにだけアクセスできます。 - 任意: アカウント用ツール(
postmark_list_servers、postmark_get_server_by_id、postmark_list_domains、postmark_get_domain、postmark_verify_domain_dkim、postmark_verify_domain_return_path、postmark_list_sender_signatures、postmark_get_sender_signature)を使うには、アカウントのオーナーか管理者が Account、API Tokens の Account API token をPOSTMARK_ACCOUNT_TOKENにコピーします。これらのツールでだけX-Postmark-Account-Tokenとして送信されます。未設定だとこれらは 401 を返しますが、ほかのツールはすべて使えます。 - コネクタをインストールし、
postmark_get_serverを実行します。サーバーの設定が表示され、トークンが確認できます。
どちらのトークンも UUID の形式(16 進数で 8-4-4-4-12 文字)です。
送信: postmark_send_email は件名、HTML 本文とテキスト本文の一方または両方、タグ、メタデータ、トラッキング、添付ファイル付きのメールを最大 50 人の宛先に送ります。postmark_send_batch は 1 回の呼び出しで最大 500 通の異なるメールを送ります。postmark_send_email_with_template と postmark_send_batch_with_templates は、保存済みテンプレート(TemplateId または TemplateAlias)と変数の TemplateModel を使います。From は確認済みの送信者署名か、検証済みドメインのアドレスである必要があります。新しいアカウントは Postmark が承認するまでテストモードのままで、自分のドメインのアドレスにしか送れません。トランザクションメールは outbound ストリーム(既定)を通り、一斉送信やマーケティングメールには配信停止の処理を加える Broadcasts ストリーム(MessageStream)が必須です。送信はすべて実際の受信箱に届くため、AI は宛先、件名、内容を示してあなたの了承を待ちます。一括送信は一部のメッセージが失敗しても 200 を返すため、AI は各結果の ErrorCode(0 = 受付)と Message を確認します。
テンプレート: postmark_list_templates、postmark_get_template、postmark_validate_template(保存せずに構文を確認し、テストモデルでプレビューを描画)、postmark_create_template、postmark_update_template。変数は {{name}} のような Mustachio 形式で、Layout は {{{@content}}} で標準テンプレートを包みます。
メールに何が起きたかを調べる:
- 送信済みメールは
postmark_search_outbound_messagesで宛先、送信者、タグ、件名、ステータス、ストリーム、日付、メタデータ項目 1 つから、受信メールはpostmark_search_inbound_messagesで検索します。postmark_retry_inbound_messageは失敗した受信メッセージを受信 Webhook へ再送します。 postmark_get_outbound_messageまたはpostmark_get_inbound_messageで詳細を表示し、送信済みメールではMessageEventsのタイムライン(Delivered、Bounced、Opened、LinkClicked、SubscriptionChanged)も見られます。- 開封とクリック:
postmark_list_message_opens、postmark_get_message_opens、postmark_list_message_clicks、postmark_get_message_clicks。メールクライアント、ブラウザ、OS、プラットフォーム、位置情報付きです。 - バウンス:
postmark_get_delivery_stats、postmark_list_bounces、postmark_get_bounce、postmark_get_bounce_dump(30 日間保存される生の SMTP 応答)。CanActivateが true なら、postmark_activate_bounceでアドレスを再有効化できます。 - ストリームごとのサプレッション:
postmark_list_suppressionsとpostmark_create_suppressions(1 回の呼び出しで最大 50 アドレス)。
統計: postmark_get_outbound_overview は期間の合計と率(送信数、バウンス、スパム苦情、開封、ユニーク開封、トラッキング対象メール、リンククリック)を返します。metric を指定した postmark_get_outbound_stats は、送信、バウンス、スパム、トラッキング、開封、クリック、プラットフォーム、メールクライアント、ブラウザ、位置情報の日別件数を返します。
サーバー設定: postmark_get_server;メッセージストリームは postmark_list_message_streams、postmark_get_message_stream、postmark_create_message_stream(1 サーバーあたり最大 10 本、そのうち Inbound は 1 本)、postmark_update_message_stream、postmark_unarchive_message_stream;Webhook は postmark_list_webhooks、postmark_get_webhook、postmark_create_webhook、postmark_update_webhook です。アカウントトークンがあれば、AI はサーバー、ドメイン、送信者署名の一覧、ドメインに必要な DNS レコードの表示も行い、あなたがレコードを追加した後に DKIM と Return-Path の確認を Postmark に依頼します。
インストール時はオフ: postmark_delete_template、postmark_delete_suppressions(サプレッションされたアドレスが再びメールを受け取れるようになります)、postmark_delete_webhook、postmark_archive_message_stream(アーカイブしたストリームは送信を止め、復元しなければ 45 日後にデータごと削除されます)です。チームが必要とするときにワークスペース管理者がオンにします。
データ形式: フィールド名は PascalCase(MessageID、SubmittedAt、TotalCount)です。検索の日付(fromdate、todate)は米国東部時間(US Eastern)で、返されるタイムスタンプにはオフセットが付きます。統計の日付は YYYY-MM-DD です。メッセージとイベントはサーバーの保存期間(既定 45 日)だけ保持されます。
ページング: 一覧と検索のツールは count(既定 50、最大 500)と offset を受け取り、count と offset の合計は 10,000 を超えられません。さらに遡るには、AI が日付の範囲を絞ります。受け取った行数を TotalCount と比べれば、続きのページがあるか分かります。
よくあるエラー: 401 はトークンがないか間違っている、またはアカウント用ツールにサーバートークンを使っていることを意味します。422 は不正なリクエストで、理由は ErrorCode と Message に示されます。300 は送信時の検証エラー(無効なアドレスや本文なしなど)、406 は無効化またはサプレッションされた宛先、410 は一括送信で 500 通超、412 はアカウント承認待ちの間に From ドメイン以外へ送ろうとしたこと、1101 はテンプレートが見つからない、1235 は不明なメッセージストリームです。429 はリクエストが多すぎることを、500 は Postmark 側の問題を意味します。後で再試行してください。
このコネクタはサーバー、ドメイン、送信者署名の作成を行わず、スパム苦情によるサプレッションの解除や送信済みメッセージの削除もしません。
ステップ 2 — アダプターをインストール
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
ステップ 3 — Microsoft Copilot にコネクタを追加
サーバーURL: AnythingMCP で MCP Servers を開き、このコネクタがあるサーバーを選んで URL(
https://cloud.anythingmcp.com/mcp/…)をコピーします。このガイドでYOUR_SERVER_IDと表示されている箇所に使ってください。
Microsoft Copilot は、Copilot Studio で作成したエージェントを通じて MCP サーバーを使います。AnythingMCP をツールとしてエージェントに追加し、そのエージェントを Microsoft 365 Copilot と Teams に公開します。Copilot Studio は Microsoft のクラウドから Streamable HTTP で接続し、AnythingMCP はこれに対応しています。
- Copilot Studio でエージェントを開き(または新規作成し)、Tools で Add a tool → New tool → Model Context Protocol を選びます。
- Server name(例:
AnythingMCP)、コネクタでできることを説明する Server description、Server URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_IDを入力します。Copilot Studio はこの説明をもとに、いつサーバーを呼び出すかを判断します。 - 認証で API key を選び、Type を Header、ヘッダー名を
X-API-Keyにして Create を選びます。 - Add tool で Create a new connection を選び、AnythingMCP の MCP API キー(MCP Servers → 対象のサーバー → API keys)を貼り付けて Add to agent を選びます。
- エージェントの Test ウィンドウで試します。
Postmarkのツールが必要になる依頼をしてみましょう。 - Publish を選び、Channels → Microsoft 365 and Microsoft Teams で Make agent available in Microsoft Copilot を選択したまま Add channel を選びます。See agent in Teams で自分用にインストールされます。Microsoft 365 Copilot では @ を入力してエージェントを選びます。
ユーザーごとにサインインさせたい場合は、API キーの代わりに OAuth 2.0 → Dynamic discovery を選びます。各ユーザーは、エージェントが初めて呼び出すときに AnythingMCP にサインインします。
セルフホストの場合は、https://cloud.anythingmcp.com の代わりにインスタンスの公開 HTTPS アドレスを使ってください。Copilot Studio は Microsoft のクラウドから接続するため、localhost は使えません。
利用可能なツール
| Tool | What it does |
|---|---|
postmark_send_email | Send one email through the server: from a confirmed sender, to up to 50 recipients, with subject, HTML and/or text body, tag, metadata… |
postmark_send_batch | Send up to 500 different emails in one call; each message takes the same fields as postmark_send_email |
postmark_send_email_with_template | Send one email built from a stored template: pass TemplateId or TemplateAlias and the TemplateModel with the variables |
postmark_send_batch_with_templates | Send up to 500 templated emails in one call, each with its own template, recipient and model |
postmark_list_templates | List the templates of the server with id, alias, name, type (Standard or Layout), active flag and layout |
postmark_get_template | Get one template by id or alias: name, subject, HTML and text body with their Mustachio variables, type and layout |
postmark_create_template | Create a template (Standard, or Layout to wrap other templates) with name, alias, subject and HTML/text bodies using Mustachio variables |
postmark_update_template | Edit a template by id or alias: name, alias, subject, bodies or layout |
postmark_delete_template | Delete a template for good by id or alias |
postmark_validate_template | Check template content without saving: Mustachio syntax errors, the variables it uses and a rendered preview with a test model |
postmark_search_outbound_messages | Search sent messages (last 45 days by default retention) by recipient, sender, tag, subject, status, stream, date range or one metadata… |
postmark_get_outbound_message | Details of one sent message by MessageID: recipients, subject, bodies, tag, metadata and the MessageEvents timeline (delivered, bounced… |
postmark_search_inbound_messages | Search inbound messages received by the server by recipient, sender, subject, mailbox hash, tag, status or date range |
postmark_get_inbound_message | Details of one inbound message: sender, recipients, subject, text and HTML body, headers, attachments list, status and the webhook… |
postmark_retry_inbound_message | Retry posting a failed inbound message to the server's inbound webhook, e.g. after fixing the endpoint |
postmark_list_message_opens | List open events across messages with recipient, time, email client, OS, platform and location |
postmark_get_message_opens | List the open events of one message: each open with time, client, OS, platform and location |
postmark_list_message_clicks | List link click events across messages with recipient, clicked URL, time, browser, OS, platform and location |
postmark_get_message_clicks | List the link click events of one message: each click with the original link, time, browser, OS and location |
postmark_get_delivery_stats | Bounce summary of the server: number of inactive (deactivated) addresses and the count of bounces per bounce type |
postmark_list_bounces | List bounces with type, recipient, description, details, whether the address is now inactive and whether it can be activated |
postmark_get_bounce | Get one bounce by id: type, recipient, description, SMTP details, the related MessageID, Inactive and CanActivate flags |
postmark_get_bounce_dump | Get the raw SMTP source of a bounce message (kept for 30 days), to read the receiving server's exact answer |
postmark_activate_bounce | Reactivate an address deactivated by a bounce so it can receive email again |
postmark_get_outbound_overview | Sending overview for a period: sent, bounced, spam complaints, bounce and spam rates, opens, unique opens, tracked emails and link clicks |
postmark_get_outbound_stats | Daily counts of one metric for a period: sends, bounces (by type), spam, tracked, opens, opens by platform or email client, clicks, clicks… |
postmark_list_suppressions | List suppressed addresses of a message stream (no email is sent to them) with the reason (HardBounce, SpamComplaint, ManualSuppression)… |
postmark_create_suppressions | Suppress up to 50 addresses in a message stream so nothing is sent to them any more (ManualSuppression) |
postmark_delete_suppressions | Remove up to 50 addresses from the suppression list of a stream so they can receive email again |
postmark_list_message_streams | List the message streams of the server (Transactional, Broadcasts, Inbound) with id, name, description, unsubscribe handling and archive… |
postmark_get_message_stream | Get one message stream by id: name, type, description, unsubscribe handling, created, updated and archived dates |
postmark_create_message_stream | Create a message stream: Transactional for app email or Broadcasts for bulk and marketing mail (at most 10 streams per server, one Inbound) |
postmark_update_message_stream | Edit a message stream: name, description or unsubscribe handling |
postmark_archive_message_stream | Archive a message stream: it stops sending and is deleted with its data after 45 days unless restored with postmark_unarchive_message_stream |
postmark_unarchive_message_stream | Restore an archived message stream within 45 days of archiving so it can send again |
postmark_list_webhooks | List the webhooks of the server with URL, stream, HTTP auth and headers, and which events trigger them (Open, Click, Delivery, Bounce… |
postmark_get_webhook | Get one webhook by id: URL, message stream, HTTP auth user, custom headers and enabled triggers |
postmark_create_webhook | Create a webhook for a message stream: the URL and which events (opens, clicks, deliveries, bounces, spam complaints, subscription changes)… |
postmark_update_webhook | Edit a webhook: URL, HTTP auth, headers or triggers |
postmark_delete_webhook | Delete a webhook; Postmark stops posting those events to its URL |
postmark_get_server | Settings of the server the token belongs to: id, name, color, inbound address and domain, tracking defaults, hook URLs and SMTP API state |
postmark_list_servers | List all servers of the account with id, name, color, API tokens and settings |
postmark_get_server_by_id | Get one server of the account by id with its settings and API tokens |
postmark_list_domains | List the sending domains of the account with DKIM, Return-Path and SPF verification state |
postmark_get_domain | Get one domain with the DNS records to set (DKIM host and value, pending DKIM, Return-Path CNAME) and their verification state |
postmark_verify_domain_dkim | Ask Postmark to check the DKIM DNS record of a domain now, after the user has added it |
postmark_verify_domain_return_path | Ask Postmark to check the Return-Path CNAME of a domain now |
postmark_list_sender_signatures | List the sender signatures (single confirmed From addresses) of the account with confirmation and DKIM state |
postmark_get_sender_signature | Get one sender signature: From address, name, reply-to, confirmed flag, domain and DNS verification details |
プロンプトの例
- 「昨日 [email protected] に送ったパスワード再設定メールは届きましたか? 配信イベントを見せてください。」
- 「先週は何通のメールを送り、バウンス率とスパム苦情率はどれくらいでしたか?」
- 「直近 7 日間のハードバウンスを、宛先と受信側サーバーの応答付きで一覧にしてください。」
- 「ウェルカムテンプレートを名前 Tom で [email protected] に送ってください。送信前に描画したメールを見せてください。」
- 「送信ドメインの DKIM レコードはもう検証済みですか? まだなら、追加すべき DNS レコードを見せてください。」
FAQ
どの Copilot が対象ですか? 職場で使う Microsoft 365 Copilot で、Copilot Studio のエージェントを通じて利用します。個人アカウント向けの Microsoft Copilot アプリでは、独自の MCP サーバーを追加できません。
何が必要ですか? エージェントを作成するために、Copilot Studio を利用できる職場アカウント(ライセンスまたは試用版)が必要です。Microsoft 365 Copilot や Teams でエージェントを使う人には、エージェントへのアクセス権が必要です。共有するか、管理者に組織向けに公開してもらってください。組織が Power Platform コネクタにデータ ポリシーを適用している場合は、MCP サーバーにも適用されます。
エージェントがツールを呼び出しません。 ヘッダー名が正確に X-API-Key であること、キーが URL と同じ MCP サーバーのものであることを確認し、Server description を具体的に書いてください。Copilot Studio はこの説明をもとにサーバーを呼び出すかどうかを判断します。変更のたびにエージェントを再公開し、開いているチャットでは "start over" と入力すると新しいバージョンになります。
次のステップ
このガイドは役に立ちましたか?