Skip to main content
Glama
alexleventer

Marketo MCP Server

by alexleventer

Marketo MCP-Server

Ein Model Context Protocol-Server für Adobe Marketo Engage. Geben Sie Claude Desktop, Cursor und anderen MCP-kompatiblen Clients direkten, authentifizierten Zugriff auf die Marketo REST-API — lesen und schreiben Sie Formulare, Smart Lists, Kanäle, Leads, Aktivitäten und Listen mit natürlicher Sprache.

npm version License: ISC

Warum

Marketing-Ops-, Growth- und RevOps-Teams verbringen Stunden damit, sich durch die Marketo-Benutzeroberfläche zu klicken, um ein Formular zu klonen, Assets zu genehmigen, einen Lead nachzuschlagen oder eine Smart List zu prüfen. Der Marketo MCP-Server verbindet genau diese REST-API-Operationen mit einem LLM-Agenten, sodass Sie sagen können:

  • „Klonen Sie Formular 1234 in den Ordner Q2 Webinars und genehmigen Sie es.“

  • „Zeigen Sie mir die letzten Aktivitäten für den Lead alex@example.com.“

  • „Erstellen Sie einen neuen E-Mail-Kanal namens 'Lifecycle Nurture'.“

…und das Modell führt die tatsächlichen Marketo-API-Aufrufe in Ihrem Namen aus.

Related MCP server: Xero MCP Server

Inhaltsverzeichnis

Funktionen

  • Formularverwaltung — Auflisten, Inspizieren, Klonen und Genehmigen von Formularen über die Marketo Asset-API

  • Smart List-Operationen — Auflisten und Inspizieren von Smart Lists

  • Kanal-CRUD — Erstellen, Lesen, Aktualisieren und Löschen von Kanälen

  • Lead-Datenbank — Leads nach ID oder E-Mail abrufen, Leads in großen Mengen erstellen oder aktualisieren, Leads löschen

  • Aktivitäts- & Änderungsprotokolle — Aktivitäten und Feldänderungen für jeden Lead abrufen

  • Listenmitgliedschaft — Leads zu statischen Listen hinzufügen oder daraus entfernen

  • Automatische Authentifizierung — OAuth 2.0 Client-Credentials-Flow mit Token-Caching & Refresh

  • Stdio-Transport — Funktioniert sofort mit Claude Desktop, Cursor und jedem MCP-Client, der Stdio unterstützt

Schnellstart

Option A — Smithery (empfohlen)

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

Folgen Sie den Anweisungen, um Ihre Marketo-Basis-URL, Client-ID und Client-Secret einzufügen.

Option B — npx (keine Installation)

Fügen Sie Folgendes zur Konfiguration Ihres MCP-Clients hinzu (z. B. 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"
      }
    }
  }
}

Option C — aus dem Quellcode

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

Kopieren Sie den vom Build ausgegebenen Konfigurationsblock in Ihren MCP-Client.

Voraussetzungen

  • Node.js 18 oder höher

  • Marketo-API-Anmeldedaten (Client-ID & Client-Secret von einem LaunchPoint-Dienst)

  • Eine Marketo-Instanz mit aktiviertem REST-API-Zugriff

  • Ein MCP-kompatibler ClientClaude Desktop, Cursor, Cline oder ein anderer

Erhalt von Marketo-API-Anmeldedaten

  1. Melden Sie sich bei der Marketo-Administration an

  2. Admin → Integration → LaunchPoint

  3. Neu → Neuer Dienst, setzen Sie den Diensttyp auf Benutzerdefiniert und wählen Sie einen Anzeigenamen (z. B. MCP Server)

  4. Weisen Sie einen API-only-Benutzer mit den benötigten Berechtigungen zu (Read-Only Assets, Read-Write Lead, etc.)

  5. Speichern Sie die Client-ID und das Client-Secret

  6. Ihre Basis-URL finden Sie unter Admin → Integration → Web Services → REST API Endpoint (entfernen Sie /rest/v1/* — behalten Sie nur https://<munchkin>.mktorest.com/rest)

Konfiguration

Die gesamte Konfiguration erfolgt über Umgebungsvariablen:

Variable

Erforderlich

Beschreibung

MARKETO_BASE_URL

ja

Ihr REST-Endpunkt, z. B. https://123-ABC-456.mktorest.com/rest

MARKETO_CLIENT_ID

ja

Client-ID des LaunchPoint-Dienstes

MARKETO_CLIENT_SECRET

ja

Client-Secret des LaunchPoint-Dienstes

Kopieren Sie .env.example nach .env für die lokale Entwicklung.

Verfügbare Tools

Tool

Beschreibung

marketo_get_forms

Formulare auflisten (filtern nach `status: draft

approved, paginieren mit maxReturn/offset`)

marketo_get_form_by_id

Ein einzelnes Formular nach ID abrufen

marketo_clone_form

Ein Formular in einen Zielordner klonen

marketo_approve_form

Ein Entwurfsformular genehmigen

marketo_get_smart_lists

Smart Lists auflisten

marketo_get_smart_list_by_id

Eine Smart List nach ID abrufen

marketo_get_channels

Kanäle auflisten

marketo_get_channel_by_id

Einen Kanal nach ID abrufen

marketo_create_channel

Einen neuen Kanal erstellen

marketo_update_channel

Einen bestehenden Kanal aktualisieren

marketo_delete_channel

Einen Kanal löschen

marketo_get_lead_by_id

Einen Lead nach numerischer ID abrufen

marketo_get_lead_by_email

Einen Lead nach E-Mail-Adresse abrufen

marketo_create_or_update_lead

Leads in großen Mengen erstellen oder aktualisieren

marketo_delete_lead

Einen Lead löschen

marketo_get_lead_activities

Aktivitäten für einen Lead abrufen (paginiert)

marketo_get_lead_changes

Feldänderungshistorie für einen Lead abrufen

marketo_get_lead_lists

Listen abrufen, zu denen ein Lead gehört

marketo_add_lead_to_list

Leads zu einer statischen Liste hinzufügen

marketo_remove_lead_from_list

Leads aus einer statischen Liste entfernen

Jedes Tool akzeptiert typisierte Argumente, die mit zod validiert werden, und gibt die rohe Marketo-JSON-Antwort zurück. Details auf Feldebene finden Sie in der Adobe Marketo REST API-Referenz.

Verwendung mit Claude Desktop

  1. Installieren Sie Claude Desktop

  2. Öffnen Sie die Konfiguration unter ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) oder %APPDATA%\Claude\claude_desktop_config.json (Windows)

  3. Fügen Sie den mcpServers-Block aus dem Schnellstart ein

  4. Starten Sie Claude Desktop neu

Verwendung mit Cursor / anderen MCP-Clients

Jeder MCP-Client, der Stdio-Server unterstützt, funktioniert. Verweisen Sie ihn auf die erstellte Binärdatei:

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

Fehlerbehebung

Symptom

Wahrscheinliche Ursache

Failed to authenticate with Marketo

Falsche Client-ID/Secret oder REST-API für den LaunchPoint-Benutzer nicht aktiviert

403 Access Denied

Dem API-only-Benutzer fehlt die Rolle für diesen Endpunkt (z. B. Asset-API vs. Lead-Datenbank-API)

606 Max rate limit reached

Marketo begrenzt auf 100 Aufrufe / 20s / Instanz — Aufrufe stapeln und Verzögerungen hinzufügen

610 Requested resource not found

Die Ordner-/Formular-/Lead-ID existiert nicht oder befindet sich in einem anderen Arbeitsbereich

Authentifizierung funktioniert, aber Anfragen hängen

Überprüfen Sie, ob MARKETO_BASE_URL keinen nachgestellten Schrägstrich hat und mit /rest endet

Sie können Tool-Aufrufe lokal mit dem MCP-Inspektor untersuchen:

npm run inspector

Entwicklung

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/

Mitwirken

Probleme und Pull Requests sind willkommen unter github.com/alexleventer/marketo-mcp.

  1. Forken Sie das Repo

  2. Erstellen Sie einen Feature-Branch

  3. npm run lint && npm run typecheck

  4. Öffnen Sie einen PR

Lizenz

ISC — siehe LICENSE.


Schlüsselwörter: marketo mcp server, marketo model context protocol, marketo claude, marketo ai, adobe marketo mcp, marketo api claude desktop, marketo automation llm, marketo engage mcp

Install Server
F
license - not found
C
quality
-
maintenance - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

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