[BUG] Custom MCP Connector: Granola MCP (Streamable HTTP) connects in Claude Code but fails silently in Claude Desktop/Cowork

Resolved 💬 2 comments Opened Feb 6, 2026 by coliver-yext Closed Feb 7, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Description

The official Granola MCP server (https://mcp.granola.ai/mcp) can be added as a custom connector in Claude Desktop settings, but it never actually establishes a connection. The connector appears installed but exposes zero tools, and the toggle to enable it in a chat does nothing.

The same server connects successfully via Claude Code CLI using --transport http.

Comparison: Works in Claude Code CLI

$ claude mcp add --transport http granola https://mcp.granola.ai/mcp
Added HTTP MCP server granola with URL: https://mcp.granola.ai/mcp to user config

$ claude mcp list
granola: https://mcp.granola.ai/mcp (HTTP) - ✓ Connected

Claude Code's --transport http successfully connects, completes the OAuth handshake, and exposes Granola's tools.

Analysis

Granola's MCP server uses Streamable HTTP transport (not legacy SSE). Claude's documentation states that both SSE and Streamable HTTP are supported for remote MCP servers. However, the Desktop/Cowork connector UI appears to fail during the initial connection or protocol negotiation — possibly related to how OAuth discovery or the Streamable HTTP handshake is handled differently than in Claude Code.

Key observations:

  • Atlassian's MCP connector (https://mcp.atlassian.com/v1/sse) works fine in Desktop — it uses SSE transport
  • Granola's endpoint (https://mcp.granola.ai/mcp) uses Streamable HTTP — this may be where Desktop diverges from Claude Code
  • The silent failure with no error message makes this very difficult to diagnose as a user

What Should Happen?

Expected Behavior

  • Adding the connector should trigger Granola's OAuth flow in the browser
  • After auth, the Tool permissions page should list Granola's available tools
  • The connector should be toggleable in chat

Actual Behavior

  • No OAuth flow is triggered
  • Zero tools are listed under Tool permissions
  • The connector cannot be toggled on in chat
  • No error is surfaced to the user — it fails completely silently

Error Messages/Logs

Steps to Reproduce

Steps to Reproduce

  1. In Claude Desktop, go to Settings > Connectors
  2. Add a custom connector with URL: https://mcp.granola.ai/mcp
  3. The connector appears in the list as "CUSTOM" with a "Configure" button
  4. Click "Configure" — the Tool permissions page shows "Choose when Claude is allowed to use these tools" but no tools are listed
  5. In a chat, attempt to toggle the Granola connector on — it does not enable
  6. No OAuth prompt is ever triggered
  7. No error message is displayed at any point

Claude Model

Opus

Is this a regression?

No, this never worked

Last Working Version

_No response_

Claude Code Version

2.1.34

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

Related Issues

  • #18194 — MCP connectors (Asana, Google Calendar) return 403 errors in Cowork mode despite working in Claude Chat. Similar pattern of MCP connectors failing specifically in Cowork/Desktop while working elsewhere.

Additional Context

Granola launched their official MCP server on Feb 4, 2026. The server URL is https://mcp.granola.ai/mcp and requires OAuth authentication. This may be one of the first Streamable HTTP-only MCP servers users are trying to connect via the Desktop custom connector flow.

View original on GitHub ↗

This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗