Open
Description
Describe the bug
I set the git mcp server up with sse, and test with MCP Inspector success
the server log:
INFO:mcp_server_git.server:Using repository at D:\core-ai
DEBUG:mcp.server.lowlevel.server:Initializing server 'mcp-git'
DEBUG:mcp.server.lowlevel.server:Registering handler for ListToolsRequest
DEBUG:mcp.server.lowlevel.server:Registering handler for CallToolRequest
DEBUG:mcp.server.sse:SseServerTransport initialized with endpoint: /messages
DEBUG:asyncio:Using proactor: IocpProactor
INFO: Started server process [19820]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8080 (Press CTRL+C to quit)
DEBUG:mcp.server.sse:Setting up SSE connection
DEBUG:mcp.server.sse:Created new session with ID: af34aa1e-7e21-4853-b3ff-48ec6448db03
DEBUG:mcp.server.sse:Starting SSE response task
DEBUG:mcp.server.sse:Yielding read and write streams
INFO: 127.0.0.1:63784 - "GET / HTTP/1.1" 200 OK
DEBUG:mcp.server.sse:Starting SSE writer
DEBUG:mcp.server.sse:Sent endpoint event: /messages?session_id=af34aa1e7e214853b3ff48ec6448db03
DEBUG:sse_starlette.sse:chunk: b'event: endpoint\r\ndata: /messages?session_id=af34aa1e7e214853b3ff48ec6448db03\r\n\r\n'
INFO: 127.0.0.1:63786 - "POST /messages?session_id=af34aa1e7e214853b3ff48ec6448db03 HTTP/1.1" 307 Temporary Redirect
DEBUG:mcp.server.sse:Handling POST message
DEBUG:mcp.server.sse:Parsed session ID: af34aa1e-7e21-4853-b3ff-48ec6448db03
DEBUG:mcp.server.sse:Received JSON: {'jsonrpc': '2.0', 'id': 0, 'method': 'initialize', 'params': {'protocolVersion': '2024-11-05', 'capabilities': {'sampling': {}, 'roots': {'listChanged': True}}, 'clientInfo': {'name': 'mcp-inspector', 'version': '0.0.1'}}}
DEBUG:mcp.server.sse:Validated client message: root=JSONRPCRequest(method='initialize', params={'protocolVersion': '2024-11-05', 'capabilities': {'sampling': {}, 'roots': {'listChanged': True}}, 'clientInfo': {'name': 'mcp-inspector', 'version': '0.0.1'}}, jsonrpc='2.0', id=0)
DEBUG:mcp.server.sse:Sending message to writer: root=JSONRPCRequest(method='initialize', params={'protocolVersion': '2024-11-05', 'capabilities': {'sampling': {}, 'roots': {'listChanged': True}}, 'clientInfo': {'name': 'mcp-inspector', 'version': '0.0.1'}}, jsonrpc='2.0', id=0)
INFO: 127.0.0.1:63787 - "POST /messages/?session_id=af34aa1e7e214853b3ff48ec6448db03 HTTP/1.1" 202 Accepted
DEBUG:mcp.server.sse:Sending message via SSE: root=JSONRPCResponse(jsonrpc='2.0', id=0, result={'protocolVersion': '2024-11-05', 'capabilities': {'experimental': {}, 'tools': {'listChanged': False}}, 'serverInfo': {'name': 'mcp-git', 'version': '1.2.1'}})
DEBUG:sse_starlette.sse:chunk: b'event: message\r\ndata: {"jsonrpc":"2.0","id":0,"result":{"protocolVersion":"2024-11-05","capabilities":{"experimental":{},"tools":{"listChanged":false}},"serverInfo":{"name":"mcp-git","version":"1.2.1"}}}\r\n\r\n'
INFO: 127.0.0.1:63786 - "POST /messages?session_id=af34aa1e7e214853b3ff48ec6448db03 HTTP/1.1" 307 Temporary Redirect
DEBUG:mcp.server.sse:Handling POST message
DEBUG:mcp.server.sse:Parsed session ID: af34aa1e-7e21-4853-b3ff-48ec6448db03
DEBUG:mcp.server.sse:Received JSON: {'jsonrpc': '2.0', 'method': 'notifications/initialized'}
DEBUG:mcp.server.sse:Validated client message: root=JSONRPCNotification(method='notifications/initialized', jsonrpc='2.0', params=None)
DEBUG:mcp.server.sse:Sending message to writer: root=JSONRPCNotification(method='notifications/initialized', jsonrpc='2.0', params=None)
INFO: 127.0.0.1:63787 - "POST /messages/?session_id=af34aa1e7e214853b3ff48ec6448db03 HTTP/1.1" 202 Accepted
DEBUG:mcp.server.lowlevel.server:Received message: root=InitializedNotification(method='notifications/initialized', params=None, jsonrpc='2.0')
DEBUG:sse_starlette.sse:ping: b': ping - 2025-02-08 03:39:43.843539+00:00\r\n\r\n'
but use kotlin-sdk connect failed:
server log:
DEBUG:mcp.server.sse:Setting up SSE connection
DEBUG:mcp.server.sse:Created new session with ID: 592f37fb-6b75-4df1-ac4e-e399d15a59c1
DEBUG:mcp.server.sse:Starting SSE response task
DEBUG:mcp.server.sse:Yielding read and write streams
INFO: 127.0.0.1:49914 - "GET / HTTP/1.1" 200 OK
DEBUG:mcp.server.sse:Starting SSE writer
DEBUG:mcp.server.sse:Sent endpoint event: /messages?session_id=592f37fb6b754df1ac4ee399d15a59c1
DEBUG:sse_starlette.sse:chunk: b'event: endpoint\r\ndata: /messages?session_id=592f37fb6b754df1ac4ee399d15a59c1\r\n\r\n'
INFO: 127.0.0.1:49917 - "POST //messages?session_id=592f37fb6b754df1ac4ee399d15a59c1 HTTP/1.1" 404 Not Found
To Reproduce
Steps to reproduce the behavior:
client code:
suspend fun connect(h: String, p: Int): Client {
val client = Client(Implementation("test", "1.0.0"))
val transport = HttpClient {
install(io.ktor.client.plugins.sse.SSE)
}.mcpSseTransport {
url {
host = h
port = p
}
}
client.connect(transport)
return client
}
Expected behavior
A clear and concise description of what you expected to happen.
Logs
If applicable, add logs to help explain your problem.
Additional context
Add any other context about the problem here.