Skip to main content
Glama
alexleventer

Marketo MCP Server

by alexleventer

Marketo MCP サーバー

Adobe Marketo Engage 用の Model Context Protocol サーバーです。 Claude Desktop、Cursor、その他の MCP 対応クライアントから Marketo REST API への直接的かつ認証されたアクセスを提供します。自然言語を使用して、フォーム、スマートリスト、チャネル、リード、アクティビティ、リストの読み書きが可能です。

npm version License: ISC

目的

マーケティング運用、グロース、RevOps チームは、フォームの複製、アセットの承認、リードの検索、スマートリストの監査などのために、Marketo UI を何時間もクリックして操作しています。Marketo MCP サーバーは、それらの REST API 操作を LLM エージェントに接続するため、以下のように指示できます:

  • 「フォーム 1234 を Q2 Webinars フォルダに複製して承認して。」

  • alex@example.com の最近のアクティビティを表示して。」

  • 「'Lifecycle Nurture' という新しいメールチャネルを作成して。」

…すると、モデルがあなたに代わって実際の Marketo API 呼び出しを実行します。

Related MCP server: Dynamic Form MCP

目次

機能

  • フォーム管理 — Marketo Asset API を介したフォームのリスト表示、検査、複製、承認

  • スマートリスト操作 — スマートリストのリスト表示と検査

  • チャネル CRUD — チャネルの作成、読み取り、更新、削除

  • リードデータベース — ID またはメールアドレスによるリードの取得、リードの一括作成または更新、リードの削除

  • アクティビティと変更ログ — リードのアクティビティとフィールド変更の取得

  • リストメンバーシップ — 静的リストへのリードの追加または削除

  • プログラム管理 — プログラムのリスト表示、検査、複製、およびプログラムメンバーの取得

  • メール操作 — QA 用のメールのリスト表示、検査、サンプルメールの送信

  • 自動認証 — トークンのキャッシュと更新を行う OAuth 2.0 クライアント資格情報フロー

  • Stdio トランスポート — Claude Desktop、Cursor、および stdio をサポートするあらゆる MCP クライアントでそのまま動作

クイックスタート

オプション A — Smithery (推奨)

npx -y @smithery/cli install @alexleventer/marketo-mcp --client claude

プロンプトに従って、Marketo のベース URL、クライアント ID、クライアントシークレットを入力してください。

オプション B — npx (インストール不要)

MCP クライアントの設定 (例: claude_desktop_config.json) に以下を追加します:

{
  "mcpServers": {
    "marketo": {
      "command": "npx",
      "args": ["-y", "marketo-mcp"],
      "env": {
        "MARKETO_BASE_URL": "https://123-ABC-456.mktorest.com/rest",
        "MARKETO_CLIENT_ID": "your-client-id",
        "MARKETO_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

オプション C — ソースからビルド

git clone https://github.com/alexleventer/marketo-mcp.git
cd marketo-mcp
npm install
npm run build

ビルドによって出力された設定ブロックを MCP クライアントにコピーしてください。

前提条件

  • Node.js 18 以上

  • Marketo API 資格情報 (LaunchPoint サービスからのクライアント ID とクライアントシークレット)

  • REST API アクセスが有効な Marketo インスタンス

  • MCP 対応クライアントClaude DesktopCursorCline など

Marketo API 資格情報の取得

  1. Marketo 管理画面にログイン

  2. 管理 → インテグレーション → LaunchPoint

  3. 新規 → 新規サービス、サービスタイプを カスタム に設定し、表示名を選択 (例: MCP Server)

  4. 必要な権限 (読み取り専用アセット、読み取り/書き込みリードなど) を持つ API 専用ユーザーを割り当て

  5. クライアント IDクライアントシークレット を保存

  6. ベース URL管理 → インテグレーション → Web サービス → REST API エンドポイントにあります (/rest/v1/* を取り除き、https://<munchkin>.mktorest.com/rest の部分のみを使用)

設定

すべての設定は環境変数を通じて行います:

変数

必須

説明

MARKETO_BASE_URL

はい

REST エンドポイント (例: https://123-ABC-456.mktorest.com/rest)

MARKETO_CLIENT_ID

はい

LaunchPoint サービスのクライアント ID

MARKETO_CLIENT_SECRET

はい

LaunchPoint サービスのクライアントシークレット

ローカル開発用に .env.example.env にコピーしてください。

利用可能なツール

ツール

説明

marketo_get_forms

フォームのリスト表示 (`status: draft

approved でフィルタリング、maxReturn/offset` でページネーション)

marketo_get_form_by_id

ID による単一フォームの取得

marketo_clone_form

宛先フォルダへのフォームの複製

marketo_approve_form

ドラフトフォームの承認

marketo_get_smart_lists

スマートリストのリスト表示

marketo_get_smart_list_by_id

ID によるスマートリストの取得

marketo_get_channels

チャネルのリスト表示

marketo_get_channel_by_id

ID によるチャネルの取得

marketo_create_channel

新しいチャネルの作成

marketo_update_channel

既存チャネルの更新

marketo_delete_channel

チャネルの削除

marketo_get_lead_by_id

数値 ID によるリードの取得

marketo_get_lead_by_email

メールアドレスによるリードの検索 (フィルタ API)

marketo_create_or_update_lead

リードの一括作成または更新 (1 回の呼び出しにつき最大 300 件)

marketo_delete_lead

リードの削除

marketo_get_lead_activities

リードのアクティビティ取得 (ページネーション対応)

marketo_get_lead_changes

リードのフィールド変更履歴の取得

marketo_get_lead_lists

リードが所属するリストの取得

marketo_add_lead_to_list

静的リストへのリードの追加

marketo_remove_lead_from_list

静的リストからのリードの削除

marketo_get_programs

プログラムのリスト表示 (タイプ、フォルダ、タグ、日付範囲でフィルタリング)

marketo_get_program_by_id

ID によるプログラムの取得

marketo_clone_program

プログラムとそのローカルアセットすべてをフォルダに複製

marketo_get_program_members

プログラムのメンバーであるリードの取得

marketo_get_emails

メールのリスト表示 (ステータスでフィルタリング)

marketo_get_email_by_id

ID によるメールの取得

marketo_send_sample_email

QA 用のサンプル/プレビューメールの送信

各ツールは zod で検証された型付き引数を受け取り、生の Marketo JSON レスポンスを返します。フィールドレベルの詳細については、Adobe Marketo REST API リファレンスを参照してください。

Claude Desktop での使用

  1. Claude Desktop をインストール

  2. ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) または %APPDATA%\Claude\claude_desktop_config.json (Windows) の設定を開く

  3. クイックスタート から mcpServers ブロックを貼り付け

  4. Claude Desktop を再起動

Cursor / その他の MCP クライアントでの使用

stdio サーバーをサポートするあらゆる MCP クライアントが動作します。ビルドされたバイナリを指定してください:

{
  "mcpServers": {
    "marketo": {
      "command": "npx",
      "args": ["-y", "marketo-mcp"],
      "env": { "MARKETO_BASE_URL": "...", "MARKETO_CLIENT_ID": "...", "MARKETO_CLIENT_SECRET": "..." }
    }
  }
}

レート制限

Marketo はいくつかの API レート制限を設けています。バッチ操作を実行する際はこれらに留意してください:

制限

短期

インスタンスあたり 20 秒間に 100 回の呼び出し

1 日

1 日あたり 50,000 回の呼び出し

同時実行

10 同時接続

一括インポート

ファイルあたり 10 MB、10 同時ジョブ

一括エクスポート

1 日あたり 500 MB、2 同時ジョブ

606 Max rate limit reached が発生した場合は、20 秒待ってから再試行してください。Marketo REST API は、場合によって Retry-After ヘッダーを返します。

トラブルシューティング

症状

考えられる原因

Failed to authenticate with Marketo

クライアント ID/シークレットが間違っている、または LaunchPoint ユーザーで REST API が有効になっていない

403 Access Denied

API 専用ユーザーにそのエンドポイントのロールがない (例: Asset API 対 Lead Database API)

606 Max rate limit reached

Marketo はインスタンスあたり 20 秒間に 100 回の呼び出しに制限している — 呼び出しをバッチ処理し、遅延を追加する

610 Requested resource not found

フォルダ/フォーム/リード ID が存在しない、または別のワークスペースにある

認証は成功するがリクエストがハングする

MARKETO_BASE_URL の末尾にスラッシュがなく、/rest で終わっていることを再確認する

MCP インスペクターを使用して、ツール呼び出しをローカルで検査できます:

npm run inspector

開発

src/
├── index.ts       # MCP server + all tool registrations
├── auth.ts        # OAuth token manager (caches until expiry)
└── constants.ts   # Env var bindings
npm run dev          # Run with ts-node + .env
npm run typecheck    # Type-check without emit
npm run lint         # ESLint
npm run format       # Prettier
npm run build        # Compile to build/

貢献

問題やプルリクエストは github.com/alexleventer/marketo-mcp で歓迎します。

  1. リポジトリをフォーク

  2. フィーチャーブランチを作成

  3. npm run lint && npm run typecheck を実行

  4. PR をオープン

ライセンス

ISC — LICENSE を参照してください。


キーワード: marketo mcp server, marketo model context protocol, marketo claude, marketo ai, adobe marketo mcp, marketo api claude desktop, marketo automation llm, marketo engage mcp

F
license - not found
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server that enables interaction with the Tradovate API for managing trading contracts, positions, orders, and accounts.
    1
    MIT
  • F
    license
    A
    quality
    D
    maintenance
    A server that implements the Model Context Protocol for managing dynamic forms, allowing users to create, retrieve, and handle responses for web forms via the @dynamicfrm/js library.
    4

View all related MCP servers

Related MCP Connectors

  • A Model Context Protocol server for Wix AI tools

  • A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…

  • MCP Spec Compliance MCP — audits any MCP server.json against the official Model Context Protocol

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/alexleventer/marketo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server