Issues connecting to MCP for ChatGPT

Hi, I’m trying to connect AnkiMCP to ChatGPT desktop, but both connection methods fail.

1. Standard URL with authentication
Using https://tunnel.ankimcp.ai/mcp with Streamable HTTP, clicking Authenticate fails. The desktop logs show:

HTTP 403 Forbidden: insufficient_scope
Policy 'Allowed Client Scopes' rejected request to client-registration service. Details: Not permitted to use specified clientScope

2. Private authless URL
I enabled Authless access and replaced the standard URL with my private URL. The Authenticate button disappeared, but the MCP tools still don’t load. The logs now show:

MCP startup failed: handshaking with MCP server failed
Transport channel closed, when send initialized notification

Anki is running, the dashboard confirms Anki Tunnel — Connected, and I’m using add-on v0.29.1. The MCP is enabled in ChatGPT desktop, and I’ve already restarted the app.

Could you kindly let me know whether this is a compatibility issue with ChatGPT desktop and advise how to connect successfully?

Hi,
Does you anki itself run and connected to the tunnel while you are trying to connect it?

Hi,

I just tested this myself and it works: on chatgpt.com I went to Plugins → Add → Create MCP App, entered https://tunnel.ankimcp.ai/mcp with OAuth authentication, clicked Create, and the login screen came up and completed fine. Tools loaded and I could fetch my decks. I also verified the same connection from Claude and Grok on the web, all working.

Could you try that exact path on chatgpt.com first? Once the plugin is added there it should already be available in the desktop app, since plugins are synced to your account. From what I’ve seen the desktop app itself is a bit buggy right now, so I’d avoid setting things up from there.

If you added it a different way, could you describe the exact steps and which screen you used (for example Settings → MCP servers in the desktop app), plus which ChatGPT plan you’re on? That will help me narrow it down.

Also, the authless URL is being retired on November 1, so please stick with the authenticated URL. Authless Access Ends on November 1 – Anki MCP

Hi,

Quick update. I’m not deep in the OpenAI ecosystem, and the split between ChatGPT web, ChatGPT desktop and Codex is genuinely confusing, so it took me a proper investigation to see what was going on. Here’s what I found.

The cause was on my side, and it’s fixed now. The ChatGPT desktop app and Codex share the same MCP client. When it registers itself with my login server, it asks for every scope the server advertises instead of the few the AnkiMCP connector actually needs. My server advertised 16 and only allowed 6 for automatic registration, so it rejected the request with exactly the error you saw:

Policy ‘Allowed Client Scopes’ rejected request to client-registration service

I’ve changed the server to advertise only the scopes it will grant, so the desktop app’s request now goes through. I reproduced your error on my own machine before the change and confirmed it works after.

For the record, this is a known bug in the OpenAI client that affects any shared login server, not just mine. It’s been open for months with no fix from their side:

Please try again from ChatGPT desktop with https://tunnel.ankimcp.ai/mcp and OAuth. If it still fails, remove the server entry and add it fresh, since the app may have cached the old failure. Then click Authenticate, and you should get a login screen with five permissions listed.

On the authless URL: the “handshaking failed” error is a separate thing, but authless access is being retired on November 1 anyway, so please stick with the authenticated URL above. Details: Authless Access Ends on November 1 – Anki MCP

Thank you Anatoly. Your timing was very good, as I only saw your first message. I tried on the web version and it worked exactly as you said, and now I can access it from both web and desktop versions.

But indeed the issue was showing up on the desktop version, so I’m glad you managed to fix that one too!

Thank you again for your fast and thorough reply!