[BUG] Figma Desktop MCP HTTP connection fails with "No session found for sessionId
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?
Claude Code - Figma MCP HTTP Connection Issue
Summary
Claude Code fails to establish a session with the Figma Desktop MCP server over HTTP transport, despite the server functioning correctly with other clients.
Environment
- Claude Code Version: 2.0.76
- OS: macOS 26.2 (Build 25C56)
- Figma Desktop Version: 125.11.6
- FigmaAgent Version: 125.11.6
- MCP Server: Figma Dev Mode MCP Server v1.0.0 (HTTP transport)
- Server URL: http://127.0.0.1:3845/mcp
Configuration
MCP server configured in ~/.claude.json:
"mcpServers": {
"figma-desktop": {
"type": "http",
"url": "http://127.0.0.1:3845/mcp"
}
}
Issue Description
When Claude Code attempts to call Figma MCP tools (e.g., get_design_context, get_screenshot), all requests fail with:
Streamable HTTP error: Error POSTing to endpoint: {"jsonrpc":"2.0","error":{"code":-32002,"message":"No session found for sessionId"},"id":null}
Expected Behavior
Claude Code should successfully initialize a session with the Figma MCP server and be able to call tools.
Actual Behavior
claude mcp listshows:figma-desktop: http://127.0.0.1:3845/mcp (HTTP) - ✓ Connected- All tool calls fail with "No session found for sessionId"
Root Cause Analysis
1. The MCP Server Works Correctly
Testing with curl confirms the server responds properly when correct headers are provided:
curl -s -X POST http://127.0.0.1:3845/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":"test123","method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"test-client","version":"1.0.0"}}}'
Response: Successfully initializes and returns server capabilities.
2. Missing Accept Headers
Without the proper Accept header:
curl -s -X POST http://127.0.0.1:3845/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":"test123","method":"initialize",...}'
Response:
{"jsonrpc":"2.0","error":{"code":-32000,"message":"Not Acceptable: Client must accept both application/json and text/event-stream"},"id":null}
3. Other Clients Work
JetBrains WebStorm successfully connects to the same MCP server (verified in logs at ~/Library/Logs/JetBrains/WebStorm2025.3/mcp/figma-desktop.log).
Hypothesis
Claude Code's HTTP MCP client may not be sending the required Accept: application/json, text/event-stream header, or is not properly handling the streaming response format required by the Figma MCP server.
Steps to Reproduce
- Install Figma Desktop (version 125.11.6)
- Configure Figma Desktop MCP server in
~/.claude.json:
``json``
"mcpServers": {
"figma-desktop": {
"type": "http",
"url": "http://127.0.0.1:3845/mcp"
}
}
- Open Figma Desktop with a design file
- Run
claude mcp list- shows as "Connected" - Attempt to use any Figma MCP tool (e.g.,
mcp__figma-desktop__get_screenshot) - Observe "No session found for sessionId" error
Additional Context
- The Figma MCP server uses SSE (Server-Sent Events) for responses, indicated by the requirement for
text/event-streamin the Accept header - The error occurs consistently across all Figma MCP tool invocations
- Server process is confirmed running (PID 16020:
/Users/v/Library/Application Support/Figma/FigmaAgent.app/Contents/MacOS/figma_agent)
Suggested Fix
Update the HTTP MCP client implementation to:
- Always include
Accept: application/json, text/event-streamheader for HTTP MCP requests - Properly handle SSE/streaming responses from HTTP MCP servers
- Ensure session initialization occurs before tool calls
Logs
Server is listening correctly:
$ lsof -i :3845
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
Figma 48537 v 62u IPv4 0x5867ecbed94539c8 0t0 TCP localhost:v-one-spp (LISTEN)
---
Note: This issue prevents Claude Code from integrating with Figma's official MCP server, which is a core use case for design-to-code workflows.
What Should Happen?
Claude Code should successfully connect to the Figma Desktop MCP server and execute tools like get_design_context, get_screenshot, etc. when the file is open in Figma Desktop.
Error Messages/Logs
Streamable HTTP error: Error POSTing to endpoint: {"jsonrpc":"2.0","error":{"code":-32002,"message":"No session found for sessionId"},"id":null}
Steps to Reproduce
- Install Figma Desktop (version 125.11.6)
- Add this configuration to
~/.claude.json:
```json
"mcpServers": {
"figma-desktop": {
"type": "http",
"url": "http://127.0.0.1:3845/mcp"
}
}
- Open Figma Desktop and load any design file
- Navigate to a specific node (e.g., node-id=10784:20084)
- Run claude mcp list - confirms server shows as "✓ Connected"
- Try to use any Figma MCP tool via Claude Code:
- Example: Call mcp__figma-desktop__get_screenshot with nodeId parameter
- Observe the "No session found for sessionId" error
Root Cause: Testing with curl reveals the MCP server requires Accept: application/json, text/event-stream header. Claude Code appears to not send this header, preventing session initialization.
Proof server works:
curl -X POST http://127.0.0.1:3845/mcp \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":"test","method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"test","version":"1.0"}}}'
# Returns successful initialization
Claude Model
Sonnet (default)
Is this a regression?
No, this never worked
Last Working Version
_No response_
Claude Code Version
2.0.76 (Claude Code)
Platform
Anthropic API
Operating System
macOS
Terminal/Shell
Terminal.app (macOS)
Additional Information
Additional Context:
- JetBrains WebStorm successfully connects to the same Figma MCP server (verified in logs)
- Server process confirmed running: lsof -i :3845 shows Figma listening on port
- Figma MCP server uses SSE (Server-Sent Events), requiring the text/event-stream Accept header
- This blocks a critical design-to-code workflow for Figma integration
Technical Details:
- FigmaAgent Version: 125.11.6
- MCP Server: Figma Dev Mode MCP Server v1.0.0
- Server URL: http://127.0.0.1:3845/mcp
- Transport: HTTP with SSE
Suggested Fix:
Update Claude Code's HTTP MCP client to always include Accept: application/json, text/event-stream header for proper SSE support.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗