
marketo mcp
An MCP server for Marketo
Repository Info
About This Server
An MCP server for Marketo
Model Context Protocol (MCP) - This server can be integrated with AI applications to provide additional context and capabilities, enabling enhanced AI interactions and functionality.
Documentation
Marketo MCP Server
A Model Context Protocol server for interacting with the Marketo API. This server provides tools for managing Marketo forms, including listing, cloning, and approving forms.
Prerequisites
- Node.js (v14 or higher)
- Marketo API credentials (Client ID and Client Secret)
- A Marketo instance with API access enabled
- Claude Desktop installed
Getting Started
1. Obtain Marketo API Credentials
- Log into your Marketo admin panel
- Navigate to Admin > Integration > LaunchPoint
- Click New > New Service
- Fill in the service details:
- Service: Custom
- Display Name: (e.g., "MCP Server")
- Save the provided Client ID and Client Secret
2. Configure Environment Variables
- Create a
.envfile in the root directory:
# Your Marketo instance URL (required)
# Example: https://123-ABC-456.mktorest.com/rest
MARKETO_BASE_URL=your-marketo-instance-url
# Your API credentials (required)
MARKETO_CLIENT_ID=your-client-id
MARKETO_CLIENT_SECRET=your-client-secret
3. Installation and Setup
# Install dependencies
npm install
# Build the project
npm run build
# The build process will output configuration settings in your console
# Copy these settings into your Claude Desktop developer configuration
4. Claude Desktop Configuration
- Open Claude Desktop
- Go to Developer Settings
- Paste the configuration settings that were output during the build process
- Save the configuration
- Restart Claude Desktop
Available Tools
Get Forms List
marketo_get_forms({
maxReturn: 200, // optional, default: 200
offset: 0, // optional, default: 0
status: 'draft' // optional, 'draft' or 'approved'
})
Get Form by ID
marketo_get_form_by_id({
formId: 1234
})
Clone Form
marketo_clone_form({
formId: 1234, // ID of form to clone
name: "New Form Name", // Name for the cloned form
description: "Form description", // optional
folderId: 5678 // optional, destination folder ID
})
Approve Form
marketo_approve_form({
formId: 1234,
comment: "Approved by MCP server" // optional
})
Error Handling
Common error scenarios and solutions:
-
Authentication Errors
- Verify your Client ID and Client Secret are correct
- Check that your API access is enabled in Marketo
- Ensure your instance URL is correct
-
Permission Errors
- Verify your API user has sufficient permissions
- Check folder access permissions for form operations
-
Rate Limiting
- The server automatically handles token refresh
- Consider implementing retry logic for rate-limited requests
Best Practices
-
Environment Management
- Never commit
.envfiles to version control - Use different credentials for development and production
- Regularly rotate your API credentials
- Never commit
-
Security
- Store credentials securely
- Use environment variables for sensitive data
- Monitor API access logs
-
Performance
- Cache form data when appropriate
- Use pagination for large form lists
- Handle rate limits appropriately
Development
Project Structure
├── src/
│ ├── index.ts # Server entry point
│ ├── auth.ts # Token management
│ └── constants.ts # Configuration
├── .env # Environment variables (not in git)
├── .env.example # Example environment file
└── .gitignore # Git ignore rules
You can run MCP inspector against this server with the following command: npx @modelcontextprotocol/inspector node build/index.js
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
Support
For issues and questions:
- Check the Marketo REST API documentation
- Review common error scenarios above
- Submit an issue in the repository
Quick Start
Clone the repository
git clone https://github.com/alexleventer/marketo-mcpInstall dependencies
cd marketo-mcp
npm installFollow the documentation
Check the repository's README.md file for specific installation and usage instructions.
Repository Details
Recommended MCP Servers
Discord MCP
Enable AI assistants to seamlessly interact with Discord servers, channels, and messages.
Knit MCP
Connect AI agents to 200+ SaaS applications and automate workflows.
Apify MCP Server
Deploy and interact with Apify actors for web scraping and data extraction.
BrowserStack MCP
BrowserStack MCP Server for automated testing across multiple browsers.
Zapier MCP
A Zapier server that provides automation capabilities for various apps.