MCP Server doesn't work with SSE protocol (on Mac at least)
I got the MCP server working on my machine with Roo code using stdio but I couldn't get sse work in any way shape or form. As it is in this repo, unless I'm doing something fundamentally wrong, the MCP server is not capable to function with the option --transport sse.
Hi @CaliLuke - I only use the MCP server with the SSE transport and all demo apps and videos were built using this transport.
I'll take a look at your test harness script share in #345 . I'll close this issue as a duplicate of your prior issue.
Daniel
Well that issue is a little more specific but in this case I'm not even making modifications to the server, I'm just straight up running the repo as it comes off github and still having connectivity issues. Could you check the instructions or the dependencies? I think there might be something slightly off.
Here's a quick walkthrough of using Cursor with the Graphiti Server's SSE transport. Relevant log output below.
I've not used Roo Code, but this should work similarly provided the MCP implementation is per spec. We'd welcome a contribution If there are tweaks to be made to the Graphiti MCP server to get it working correctly with Roo Code.
2025-04-11 16:40:49,691 - graphiti_core.graphiti - INFO - Completed add_episode in 9042.014122009277 ms 2025-04-11 16:40:49,691 - __main__ - INFO - Episode 'Key Location' added successfully 2025-04-11 16:40:49,691 - __main__ - INFO - Building communities after episode 'Key Location' 2025-04-11 16:40:50,334 - httpx - INFO - HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK" 2025-04-11 16:40:50,886 - httpx - INFO - HTTP Request: POST https://api.openai.com/v1/chat/completions "HTTP/1.1 200 OK" 2025-04-11 16:40:51,053 - httpx - INFO - HTTP Request: POST https://api.openai.com/v1/embeddings "HTTP/1.1 200 OK" 2025-04-11 16:40:51,280 - __main__ - INFO - Episode 'Key Location' processed successfully 2025-04-11 16:40:53,589 - mcp.server.lowlevel.server - INFO - Processing request of type CallToolRequest 2025-04-11 16:40:54,153 - httpx - INFO - HTTP Request: POST https://api.openai.com/v1/embeddings "HTTP/1.1 200 OK"
https://github.com/user-attachments/assets/353ed8f7-9417-4db0-9ab9-d50c11bae80b
I've got the same problem.
MacOS 15.5 (24F74) Docker 4.42.1 (196648)
Pulled it directly from here today, no changes, .env filled out and then docker compose up.
Problem: /sse not found. FastAPI itself is working and reachable via localhost, see logs:
[+] Running 3/3 ✔ Network graphiti_default Created 0.0s ✔ Container graphiti-neo4j-1 Created 0.0s ✔ Container graphiti-graph-1 Created 0.0s Attaching to graph-1, neo4j-1 neo4j-1 | Changed password for user 'neo4j'. IMPORTANT: this change will only take effect if performed before the database is started for the first time. neo4j-1 | 2025-07-23 18:30:04.060+0000 INFO Logging config in use: File '/var/lib/neo4j/conf/user-logs.xml' neo4j-1 | 2025-07-23 18:30:04.070+0000 INFO Starting... neo4j-1 | 2025-07-23 18:30:04.452+0000 INFO This instance is ServerId{72558f55} (72558f55-8a09-429a-a019-b3dadbff2d5b) neo4j-1 | 2025-07-23 18:30:04.878+0000 INFO ======== Neo4j 5.26.2 ======== neo4j-1 | 2025-07-23 18:30:05.663+0000 INFO Anonymous Usage Data is being sent to Neo4j, see https://neo4j.com/docs/usage-data/ neo4j-1 | 2025-07-23 18:30:05.698+0000 INFO Bolt enabled on 0.0.0.0:7687. neo4j-1 | 2025-07-23 18:30:06.016+0000 INFO HTTP enabled on 0.0.0.0:7474. neo4j-1 | 2025-07-23 18:30:06.016+0000 INFO Remote interface available at http://localhost:7474/ neo4j-1 | 2025-07-23 18:30:06.018+0000 INFO id: DDF5036F1E66831B88FA7D0C69F5843D4B5CF893E27178CA83AD7BB3F8D081D4 neo4j-1 | 2025-07-23 18:30:06.018+0000 INFO name: system neo4j-1 | 2025-07-23 18:30:06.018+0000 INFO creationDate: 2025-07-23T17:41:25.642Z neo4j-1 | 2025-07-23 18:30:06.018+0000 INFO Started. graph-1 | Building graph-service @ file:///app graph-1 | Built graph-service @ file:///app graph-1 | Uninstalled 1 package in 3ms graph-1 | Installed 1 package in 0.26ms graph-1 | Bytecode compiled 1740 files in 117ms graph-1 | INFO: Started server process [87] graph-1 | INFO: Waiting for application startup. graph-1 | Got a job: (size of remaining queue: 0) graph-1 | INFO: Application startup complete. graph-1 | INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit) graph-1 | INFO: 192.168.65.1:63240 - "GET /sse HTTP/1.1" 404 Not Found graph-1 | INFO: 192.168.65.1:20094 - "GET /sse HTTP/1.1" 404 Not Found graph-1 | INFO: 127.0.0.1:49110 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:34402 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:60678 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:49014 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 192.168.65.1:31641 - "GET /docs HTTP/1.1" 200 OK graph-1 | INFO: 192.168.65.1:31641 - "GET /openapi.json HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:37648 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:52234 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 192.168.65.1:30096 - "GET /openapi.json HTTP/1.1" 200 OK graph-1 | INFO: 192.168.65.1:30096 - "GET /favicon.ico HTTP/1.1" 404 Not Found graph-1 | INFO: 127.0.0.1:38002 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:33944 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:59220 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:48014 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:46752 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:55580 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:40060 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:33628 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 127.0.0.1:54098 - "GET /healthcheck HTTP/1.1" 200 OK graph-1 | INFO: 192.168.65.1:64035 - "GET /sse HTTP/1.1" 404 Not Found graph-1 | INFO: 192.168.65.1:42456 - "GET /sse HTTP/1.1" 404 Not Found
MCP Client gets 404 error.
@pajew-ski It looks like you're attempting to use Graphiti's REST service as an MCP server. These are different services. Please see the MCP README for install instructions.
Oh, I see! I started the wrong docker compose. Thanks, will try later.