MCP endpoint
https://connectapi.clickmaker.in/mcpUse the API host, not the website host. The endpoint accepts JSON-RPC over HTTP POST and returns JSON responses. The transport is stateless, so no session ID is required.
OAuth discovery
Claude and ChatGPT discover the authorization server from the standard metadata endpoints. You do not need to create an application or paste a client secret.
Protected resource
https://connectapi.clickmaker.in/.well-known/oauth-protected-resource
Authorization server
https://connectapi.clickmaker.in/.well-known/oauth-authorization-server
Client registration
https://connectapi.clickmaker.in/oauth/register
Token endpoint
https://connectapi.clickmaker.in/oauth/token
Authorization uses the Authorization Code flow with PKCE (S256). Access tokens are bound to your workspace and the scopes you approve. Refresh tokens rotate on every use and can be revoked.
Claude custom connector
- 1Open Claude and go to Settings → Connectors → Add custom connector.
- 2Name it ClickMaker Connect and paste the MCP endpoint below.
- 3Claude opens the OAuth consent screen. Sign in to your ClickMaker workspace.
- 4Approve the scopes you want the connector to use.
- 5Ask Claude to list your WhatsApp accounts, contacts or conversations.
Tip: if Claude cannot discover the server, confirm the connector URL is https://connectapi.clickmaker.in/mcp and that the API host serves HTTPS.
ChatGPT connector
- 1Open ChatGPT → Settings → Connectors and enable developer mode if prompted.
- 2Create a custom connector and paste the MCP endpoint below.
- 3Choose OAuth as the authentication method.
- 4Sign in to ClickMaker Connect and approve the consent screen.
- 5Ask ChatGPT to read your WhatsApp templates or draft a reply.
ChatGPT connectors that support MCP use the same OAuth metadata and dynamic client registration. No OpenAPI file is required.
API key fallback
MCP hosts that allow custom headers can use a scoped ClickMaker API key instead of OAuth. Create the key under Developer → API keys with the scopes you need.
curl -X POST https://connectapi.clickmaker.in/mcp \
-H "Authorization: Bearer cmc_live_..." \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/list",
"params": {}
}'Available tools
| Tool | What it does | Scope |
|---|---|---|
| get_organization | Workspace, active plan and limits | organization:read |
| list_whatsapp_accounts | Connected WABAs and numbers | whatsapp:read |
| list_phone_numbers | Every connected WhatsApp number | whatsapp:read |
| list_contacts | Search and page contacts | contacts:read |
| get_contact | One contact by id | contacts:read |
| list_conversations | Inbox conversations with context | conversations:read |
| get_conversation | One conversation and recent messages | conversations:read |
| list_messages | Message history by conversation/contact | messages:read |
| list_templates | Approved and pending templates | templates:read |
| send_text_message | Reply inside the 24-hour window | messages:write |
| send_template_message | Send an approved template | messages:write + templates:read |
| list_campaigns | Broadcast campaigns and counters | campaigns:read |
| get_billing_usage | Plan, limits, usage and delivery | billing:read |
Troubleshooting
401 with resource_metadata
The connector found the MCP endpoint but has no token. Complete the OAuth flow or send a valid cmc_live_ API key.
redirect_uri mismatch
The connector must use the exact callback URL it registered. Remove the old connector entry and add it again if the callback changed.
PKCE errors
Use code_challenge_method=S256. The token request must send the same code_verifier used to create the challenge.
Missing scope
Reconnect the connector and approve the scope the tool needs, such as messages:write or templates:read.
MCP tools use the same organization-scoped authorization as the REST API. A connector can only read or send data for the workspace whose owner approved it.
