Troubleshooting
Fixes for the failures people actually hit, plus a compatibility table.
The connector was added, but the assistant says it has no tools
You're almost certainly not signed in yet. Adding the URL and authorising are two separate steps.
- ChatGPT: the plugin page should show Authorization supported: OAuth and a Connected on date.
- Claude: the connector should show Connected, not a Connect button.
- Claude Code: run
claude mcp list— anything other than ✔ Connected means runclaude mcp login erzycall. - Also check the connector is actually toggled on for this conversation — in both ChatGPT and Claude that's a per-chat choice.
The sign-in window opens, then fails or loops back
- Make sure you're already signed in to app.erzycall.com in the same browser, then retry.
- Disable pop-up blockers and any privacy extension that blocks third-party redirects.
- Try a normal window rather than private/incognito — some flows need cookies to persist.
- If your account belongs to several organizations, confirm you selected the right one on the approval screen.
- n8n Cloud: if the error mentions
redirect_uri_mismatch, that's the known n8n Cloud bug — use self-hosted n8n or the REST API fallback.
"Connection failed" or a 401 error
- Check the URL character by character. It must be
https://app.erzycall.com/api/mcp— with/api/mcpon the end. A URL without the path is the single most common mistake. - Remove any custom headers. If you pasted an
AuthorizationorX-API-Keyheader, delete it — it overrides OAuth and causes a 401. API keys work on the REST API, not on the MCP endpoint. - Choose Streamable HTTP, not SSE. ErzyCall doesn't serve SSE; a tool set to SSE will never connect.
The tools appear but every call errors
- Confirm the organization has at least one phone number assigned ("list my phone numbers" is a quick check).
- Confirm the contact exists and has a valid international number, e.g.
+60123456789. - Check your ErzyCall balance and plan limits in the dashboard.
- Ask the assistant to show you the raw error — it usually names the missing field.
It worked yesterday and stopped today
Access tokens expire and get refreshed automatically, but a revoked session, a password change, or an organization change can break the link. Reconnect:
- ChatGPT / Claude: remove the connector and add it again (neither lets you edit one in place).
- Claude Code:
claude mcp logout erzycallthenclaude mcp login erzycall. - Hermes: delete
~/.hermes/mcp-tokens/erzycall.jsonand runhermes mcp login erzycall.
The assistant does the wrong thing, or too many things
- Restrict which tools it can reach. In Claude: Settings → Connectors → ErzyCall → Tool permissions. In n8n: set Tools to Include to Selected. In ChatGPT: set permissions to Important actions so writes always prompt.
- Be explicit — name the contact, the number to call from, and the script.
- Turn off other connectors you don't need in that conversation; fewer tools means better decisions.
Is the server up?
Run this from a terminal. A 401 response is correct and healthy — the server is live and asking you to authenticate.
curl -i -X POST https://app.erzycall.com/api/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"test","version":"1"}}}'A 5xx or a timeout means the service is having trouble — contact ErzyCall support.
Compatibility at a glance
| Tool | Native MCP | Sign-in | Where you configure it |
|---|---|---|---|
| ChatGPT (web) | Yes | OAuth, in-app | chatgpt.com/plugins → + |
| Claude web / desktop / Cowork | Yes | OAuth, in-app | Settings → Connectors |
| Claude Code | Yes | OAuth via /mcp | claude mcp add |
| Cursor | Yes | OAuth, in-app | ~/.cursor/mcp.json · key mcpServers · url |
| Hermes | Yes | hermes mcp login | ~/.hermes/config.yaml · key mcp_servers · YAML |
| VS Code (Copilot) | Yes | OAuth, in-app | .vscode/mcp.json · key servers · needs type |
| Devin Desktop (Local) | Yes | devin mcp login | .devin/mcp_config.json · url + transport |
| Windsurf Cascade (legacy) | Yes | OAuth, in-app | ~/.codeium/windsurf/mcp_config.json · serverUrl |
| Zed | Yes | OAuth, in-app | settings.json · key context_servers · url |
| n8n | Yes | MCP OAuth2 credential | MCP Client Tool node |
| Make.com | Beta | OAuth (verify) | MCP Client app · fallback: HTTP module |
| Zapier | Beta | OAuth (verify) | MCP Client integration · fallback: API by Zapier |
Client interfaces change frequently. If a menu name here doesn't match what you see, look for the nearest equivalent — the values you paste in stay the same.