Overview
ChatAds provides a native MCP server that runs on our infrastructure. No local installation required - just point your MCP client directly to our endpoint.Some MCP clients require paid plans for remote HTTP servers. If your client doesn’t support remote servers, use the Python Wrapper instead (stdio transport).
Quick Start
Add ChatAds to your MCP client’s configuration. The location varies by client:- Claude Desktop
- Cursor
- Other Clients
Edit your Claude Desktop config:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
Benefits
- No installation - Works immediately, no Python or dependencies
- Always up-to-date - Server updates apply automatically
- Team-friendly - Centralized configuration, consistent behavior
- Cross-platform - Works with any MCP-compatible client
Technical Details
Endpoint
Transport
The native server uses MCP Streamable HTTP transport, which:- Creates a session on first request
- Returns responses as Server-Sent Events (SSE)
- Maintains session state via
mcp-session-idheader
Authentication
All requests require thex-api-key header with your ChatAds API key.
Direct API Usage
You can also interact with the MCP endpoint programmatically using JSON-RPC 2.0.Required Headers
Step 1: Initialize Session
Step 2: List Available Tools
Step 3: Call the Tool
Available Tools
chatads_message_send
The main tool for fetching affiliate product recommendations. Parameters:| Parameter | Type | Required | Description |
|---|---|---|---|
message | string | Yes | User message to analyze (1-5000 chars) |
ip | string | No | IPv4/IPv6 address for country detection (max 45 chars) |
country | string | No | ISO country code (e.g., “US”) |
quality | string | No | ”fast”, “standard” (default), or “best” |
Comparison: Native Server vs Wrapper
| Feature | Native Server | Python Wrapper |
|---|---|---|
| Installation | None | pip install chatads-mcp-wrapper |
| Transport | HTTP (remote) | stdio (local) |
| Updates | Automatic | Manual pip upgrade |
| Local control | No | Yes |
| Circuit breaker | Server-side | Built-in client-side |
| Offline use | No | Can cache locally |
Troubleshooting
”Missing API key” (401)
Ensurex-api-key header is included in your config:
“Missing session ID”
The MCP protocol requires session initialization. If calling directly, ensure you:- First call
initializemethod - Save the
mcp-session-idfrom response headers - Include it in subsequent requests
”Client must accept both application/json and text/event-stream”
Add the proper Accept header:Tool not appearing in your MCP client
- Verify the URL is exactly:
https://api.getchatads.com/mcp/mcp - Check that
transportis set to"http" - Restart your MCP client completely
- Ask: “What tools do you have access to?”