mcpField
U
UniOne

UniOne

リモート
unione.ioコミュニケーション01 週間前に更新
リポジトリ公式サイト

UniOne について

UniOne公式のMCPサーバーで、AIアシスタントから公開Web APIを通じてUniOneアカウントを操作できます。ホスト型のOAuth接続とローカルのAPIキー接続に対応し、メール送信やアカウント管理を読み取り専用・送信禁止に制限できます。

主な機能

  1. 01トランザクションメールの送信
  2. 02送信ドメインとテンプレートの管理
  3. 03Webhookと抑制リストの設定
  4. 04イベント、タグ、プロジェクト、アカウントの確認
  5. 05読み取り専用または送信禁止への制限

活用シーン

  1. 01AIアシスタントからトランザクションメールを送信
  2. 02送信ドメインやテンプレートの確認・更新
  3. 03配信イベントやアカウントのプロジェクトの確認
  4. 04連携を読み取り専用操作に限定

MCP 対応

UniOne Web APIの32種類の操作をMCPツールとして公開します。クライアントはOAuthでホスト型HTTPサーバーに接続するか、APIキーを使うローカルstdioサーバーを利用できます。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://mcp.unione.io/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

すべてのエンドポイント
Streamable HTTPhttps://mcp.unione.io/mcp認証が必要

ツール

詳細

unione-mcp

UniOne 用の公式 Model Context Protocol サーバーです (https://docs.unione.io)。AI アシスタント(Claude、ChatGPT、Cursor、Windsurf、VS Code、 Cline、その他すべての MCP クライアント)から UniOne アカウントを操作できます。メールの送信、 送信者ドメイン、テンプレート、Webhook、抑制リスト、イベントダンプ、タグ、プロジェクトの管理に対応しています。32 個のツールがあり、 それぞれ公開されている UniOne Web API を呼び出します。

利用方法は 2 通りあります。

  • リモート — https://mcp.unione.io/mcp にホストされたサーバーです。インストールは不要です。URL を クライアントに追加し、OAuth 経由で UniOne にサインインしてください。
  • ローカル — サーバーは stdio を介してお使いのマシン上で実行されます(npx、Docker、またはバイナリ)。UNIONE_API_KEY に設定した API キーを使って動作します。

リモートサーバー(OAuth)

URL:https://mcp.unione.io/mcp

初回利用時に、クライアントから UniOne のサインインページが開きます。アクセスを承認すると、クライアントが トークンを保持します。UniOne アカウントからいつでも取り消せます。

Claude Code

claude mcp add --transport http unione https://mcp.unione.io/mcp

Claude Desktop / claude.ai — [設定]→[コネクタ]→[カスタムコネクタを追加]を選択し、URL https://mcp.unione.io/mcp を指定します。

Cursor、Windsurf、Cline、VS Code など、mcpServers 設定に対応するクライアント:

{
  "mcpServers": {
    "unione": {
      "type": "http",
      "url": "https://mcp.unione.io/mcp"
    }
  }
}

OAuth に対応していないクライアントでは、代わりに API キーを送信できます。ヘッダー Authorization: Bearer <UniOne API key> を追加してください。

ローカルサーバー(API キー)

UniOne アカウントで API キーを取得してください。アカウントキーはアカウント全体にアクセスでき、プロジェクト キーはそのプロジェクトのみにアクセスできます。サーバーは UNIONE_API_KEY からキーを読み込みます。

npx(Node.js 18 以降。初回実行時にお使いのプラットフォーム用のバイナリをダウンロードします):

{
  "mcpServers": {
    "unione": {
      "command": "npx",
      "args": ["-y", "unione-mcp"],
      "env": { "UNIONE_API_KEY": "<your API key>" }
    }
  }
}

Docker:

{
  "mcpServers": {
    "unione": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "-e", "UNIONE_API_KEY", "ghcr.io/unione-repo/unione-mcp", "stdio"],
      "env": { "UNIONE_API_KEY": "<your API key>" }
    }
  }
}

バイナリ — Releases から unione-mcp-<os>-<arch> をダウンロードし、 実行可能にして PATH に配置します(または go install github.com/unione-repo/unione-mcp/cmd/unione-mcp@latest を実行します):

{
  "mcpServers": {
    "unione": {
      "command": "unione-mcp",
      "args": ["stdio"],
      "env": { "UNIONE_API_KEY": "<your API key>" }
    }
  }
}

Claude Code では、1 行で設定できます。

claude mcp add unione --env UNIONE_API_KEY=<your API key> -- npx -y unione-mcp

"show my UniOne account" と尋ねて接続を確認してください。アシスタントが get_account を呼び出します。

ツール

各ツールにはクラスがあり、MCP アノテーションとしてクライアントに送信されます。

  • read — 読み取り専用です(readOnlyHint)。
  • write — 何かを作成または変更します。失われるものはありません(destructiveHint: false)。
  • dangerous — 完全に削除または上書きするか、取り消せない操作です(destructiveHint: true)。 クライアントはこのような呼び出しの前に確認を求めます。
領域ツール内容クラス
アカウントget_accountUniOne アカウントを取得read
ドメインlist_domains送信者ドメインの一覧を取得read
ドメインget_dns_recordsドメインを追加/DNS レコードを取得write
ドメインvalidate_domainドメインの DNS レコードを確認read
ドメインdelete_domain送信者ドメインを削除dangerous
ドメインget_sandbox_domainサンドボックスドメインを取得write
確認済みメールアドレスlist_confirmed_emails確認済みメールアドレスの一覧を取得read
確認済みメールアドレスadd_confirmed_email確認済みメールアドレスを追加write
確認済みメールアドレスdelete_confirmed_email確認済みメールアドレスを削除dangerous
送信send_emailメールを送信(課金対象)dangerous
テンプレートlist_templatesテンプレートの一覧を取得read
テンプレートget_templateテンプレートを取得read
テンプレートset_templateテンプレートを作成または上書きdangerous
テンプレートdelete_templateテンプレートを削除dangerous
Webhooklist_webhooksWebhook の一覧を取得read
Webhookget_webhookWebhook を取得read
Webhookset_webhookWebhook を作成または上書きdangerous
Webhookdelete_webhookWebhook を削除dangerous
抑制get_suppressionアドレスの抑制設定を取得read
抑制list_suppressions抑制設定の一覧を取得read
抑制set_suppressionアドレスをブロックdangerous
抑制delete_suppressionアドレスのブロックを解除dangerous
検証validate_emailメールアドレスを検証(課金対象)write
イベントダンプrequest_event_dumpイベントダンプをリクエストwrite
イベントダンプget_event_dumpイベントダンプを取得read
イベントダンプdelete_event_dumpイベントダンプを削除dangerous
タグlist_tagsタグの一覧を取得read
タグdelete_tagタグを削除dangerous
プロジェクトlist_projectsプロジェクトの一覧を取得read
プロジェクトcreate_projectプロジェクトを作成write
プロジェクトupdate_projectプロジェクトを更新dangerous
プロジェクトdelete_projectプロジェクトを削除dangerous

send_email は実際のメールを送信し、取り消せません。validate_email はアドレスごとに課金されます。アカウントの範囲を超えて動作するツール(send_email と add_confirmed_email はアドレスにメールを送信し、set_webhook は UniOne に URL を指定し、validate_email はメールボックスを照会します)は、openWorldHint: true でその旨を示します。

読み取り専用モードと送信無効モード

ローカルサーバーのツール一覧を絞り込むスイッチが 2 つあります。

変数効果
MCP_READ_ONLY=1read ツールのみが一覧表示されます。アシスタントはアカウントを変更できません
MCP_DISABLE_SEND=1send_email は一覧表示されません。アシスタントはメールを送信できません
"env": { "UNIONE_API_KEY": "<your API key>", "MCP_READ_ONLY": "1" }

Docker を使う場合、env は docker プロセスにのみ渡されます。スイッチをコンテナに渡すには、イメージ名の前にコンテナ独自の -e を指定してください。

"args": ["run", "-i", "--rm", "-e", "UNIONE_API_KEY", "-e", "MCP_READ_ONLY", "ghcr.io/unione-repo/unione-mcp", "stdio"],
"env": { "UNIONE_API_KEY": "<your API key>", "MCP_READ_ONLY": "1" }

これらの設定が防ぐのはモデルによる誤操作であり、キーの所有者による操作ではありません。同じキーは Web API から直接使用できます。確実に制限するには、プロジェクト API キーを使用してください。

設定

すべて環境変数で設定します。作業ディレクトリ内の .env ファイルも読み込まれます。 .env.example にすべて記載されています。すべての値は起動時に検証されます。

変数用途
UNIONE_API_KEYローカルモード:すべてのツールが使用する API キー
UNIONE_API_URLWeb API のベース URL。デフォルトは https://api.unione.io/en/transactional/api/v1 です
MCP_TRANSPORThttp(デフォルト)または stdio。unione-mcp stdio を実行しても設定されます
MCP_READ_ONLY, MCP_DISABLE_SEND上記を参照
AUTH_MODEセルフホストの HTTP モード:api_key(デフォルト)または oauth
AUTHORIZATION_SERVER_URL, OAUTH_SCOPES, OAUTH_TOKEN_PREFIX, MCP_PUBLIC_URLセルフホストの OAuth モード。OAUTH_TOKEN_PREFIX のデフォルトは uoat_ です。
LISTEN_HOST, PORTセルフホストの HTTP モードのリスナー(デフォルト:すべてのインターフェイス、3000 から最初に使用可能なポート)
UPSTREAM_TIMEOUT, UPSTREAM_MAX_BODY_BYTES, MCP_MAX_REQUEST_BYTESWeb API 呼び出しの制限と /mcp のリクエストボディ上限
LOG_LEVEL, LOG_FORMATdebug、info、warn、error;text または json。常に stderr に出力します

API キー、Authorization ヘッダー、Web API のレスポンスボディがログに記録されることはありません。

ドキュメント

開発

go build -o bin/unione-mcp ./cmd/unione-mcp
go test ./internal/... ./cmd/...                     # unit tests, no network

# acceptance: the real binary over HTTP and stdio against a WireMock stand-in of the API
docker run -d --rm -p 8081:8081 wiremock/wiremock:3.4.1 --local-response-templating --port 8081
E2E_WIREMOCK_URL=http://localhost:8081 go test -tags=integration ./tests/...

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。