Hi Team,
I’m attempting to integrate the Figma MCP remote server (https://mcp.figma.com/mcp) using the Cline VS Code extension with a streamable HTTP transport, but I consistently encounter an OAuth/parsing failure.
Error observed
HTTP 403: Invalid OAuth error response:
SyntaxError: Unexpected token 'F', "Forbidden" is not valid JSON.
Raw body: ForbiddenClient configuration
{
"url": "https://mcp.figma.com/mcp",
"type": "streamableHttp",
"disabled": false,
"timeout": 60,
"autoApprove": []
}Observed behavior (protocol-level)
- The MCP endpoint returns:
HTTP 403 ForbiddenContent-Type: text/plain- Body:
Forbidden
- The response is not JSON-formatted, which causes MCP clients (like Cline) to fail when parsing the OAuth or JSON-RPC response.
Expected behavior (per MCP + JSON-RPC conventions)
- Even in error cases (including auth failures), MCP servers should return a valid JSON-RPC response or at minimum a structured JSON error payload.
- Content-Type should be
application/jsonfor compatibility with MCP clients expecting JSON-RPC framing. - For OAuth-related failures, a structured error object (e.g.
{"error": ...}) is expected rather than plain text.
Additional notes
- This behavior breaks compatibility with clients that strictly follow MCP’s JSON-RPC expectations over HTTP.
- The issue appears before any successful MCP
initializehandshake, suggesting the failure occurs at the auth or gateway layer. - Other MCP clients (e.g. Codex CLI / Cursor) may handle this more leniently, but stricter clients fail due to non-JSON responses.
