MCP Protocol
This API uses the Model Context Protocol (MCP) — a standard for exposing tool-based APIs via JSON-RPC 2.0 over HTTP.How it works
Each ad platform source (Meta, LinkedIn, Google Ads) exposes its operations as MCP tools. All tools for a source share a single HTTP endpoint:params.name field in the JSON-RPC request body.
Request format
Every MCP tool call follows this structure:| Field | Type | Description |
|---|---|---|
jsonrpc | "2.0" | JSON-RPC version (always "2.0") |
id | string | Client-generated request ID for matching responses |
method | string | MCP method — "tools/call" for tool execution, "tools/list" for discovery |
params.name | string | The tool to execute (e.g., "list_meta_campaigns") |
params.arguments | object | Tool input — validated against the tool’s Zod schema |
Response format
result.content array contains one or more content blocks. For this API, results are always type: "text" with a JSON-stringified payload in text.
Error responses
Tool-level errors returnisError: true in the result:
Tool discovery
List all available tools for a source:Stateless design
Each HTTP request creates a fresh MCP server instance — there is no session state between requests. This means:- No
initializehandshake needed - No session tokens to manage
- Each request is fully self-contained