-
Notifications
You must be signed in to change notification settings - Fork 387
Description
Description
ssue Summary
The ElevenLabs MCP client, when configured to connect to SSE-type MCP servers, sends only Accept: text/event-stream in the request headers. Some MCP servers (notably Composio) require Accept: application/json, text/event-stream to properly negotiate the response format, causing connection failures.
Expected Behavior
For SSE-type MCP servers, the client should send:
Accept: application/json, text/event-stream
This allows the server to negotiate the response format and ensures compatibility with servers that validate Accept headers.
Actual Behavior
The client appears to send:
Accept: text/event-stream
This causes 406 Not Acceptable errors from some MCP servers.
Steps to Reproduce
Configure an MCP server integration in ElevenLabs:
Server Type: SSE
Server URL: https://backend.composio.dev/v3/mcp/{API_KEY}/mcp?user_id={USER_ID}
No auth token required
Click "Add Integration" or "Test Connection"
Observe the UI hangs on "Scanning available tools..."
Server logs show 406 error due to Accept header validation
Environment
Platform: ElevenLabs Conversational AI Platform
MCP Server: Composio (https://backend.composio.dev/v3/mcp/)
Configuration: Custom MCP Server (SSE type)
Browser: Tested in Chrome/Firefox
Impact
This prevents integration with Composio's MCP server, which provides access to 500+ app integrations (Google Calendar, Gmail, Slack, etc.). This significantly limits the tools available to ElevenLabs agents.
Proposed Solution
Update the MCP client to send both accept types:
headers: { 'Accept': 'application/json, text/event-stream', // ... other headers}
This maintains SSE compatibility while allowing servers to negotiate the format.
Code example
No response
Additional context
No response