Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

'JSONRPCMessage' object has no attribute 'message' in mcp 1.8.0 #691

Copy link
Copy link
Open
@TheTechromancer

Description

@TheTechromancer
Issue body actions

Running into this error again in 1.8.0:

server-1  | ERROR:    Exception in ASGI application
server-1  |   + Exception Group Traceback (most recent call last):
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/uvicorn/protocols/http/httptools_impl.py", line 401, in run_asgi
server-1  |   |     result = await app(  # type: ignore[func-returns-value]
server-1  |   |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/uvicorn/middleware/proxy_headers.py", line 70, in __call__
server-1  |   |     return await self.app(scope, receive, send)
server-1  |   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in __call__
server-1  |   |     await super().__call__(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/applications.py", line 123, in __call__
server-1  |   |     await self.middleware_stack(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__
server-1  |   |     raise exc
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__
server-1  |   |     await self.app(scope, receive, _send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in __call__
server-1  |   |     await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
server-1  |   |     raise exc
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
server-1  |   |     await app(scope, receive, sender)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 756, in __call__
server-1  |   |     await self.middleware_stack(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 776, in app
server-1  |   |     await route.handle(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 485, in handle
server-1  |   |     await self.app(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/fastapi/applications.py", line 1054, in __call__
server-1  |   |     await super().__call__(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/applications.py", line 123, in __call__
server-1  |   |     await self.middleware_stack(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 186, in __call__
server-1  |   |     raise exc
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/errors.py", line 164, in __call__
server-1  |   |     await self.app(scope, receive, _send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/middleware/exceptions.py", line 65, in __call__
server-1  |   |     await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
server-1  |   |     raise exc
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
server-1  |   |     await app(scope, receive, sender)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 756, in __call__
server-1  |   |     await self.middleware_stack(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 776, in app
server-1  |   |     await route.handle(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 297, in handle
server-1  |   |     await self.app(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 77, in app
server-1  |   |     await wrap_app_handling_exceptions(app, request)(scope, receive, send)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 64, in wrapped_app
server-1  |   |     raise exc
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
server-1  |   |     await app(scope, receive, sender)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/starlette/routing.py", line 72, in app
server-1  |   |     response = await func(request)
server-1  |   |                ^^^^^^^^^^^^^^^^^^^
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 278, in app
server-1  |   |     raw_response = await run_endpoint_function(
server-1  |   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/fastapi/routing.py", line 191, in run_endpoint_function
server-1  |   |     return await dependant.call(**values)
server-1  |   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/fastapi_mcp/server.py", line 199, in handle_mcp_connection
server-1  |   |     async with transport.connect_sse(request.scope, request.receive, request._send) as (reader, writer):
server-1  |   |   File "/usr/local/lib/python3.11/contextlib.py", line 231, in __aexit__
server-1  |   |     await self.gen.athrow(typ, value, traceback)
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/mcp/server/sse.py", line 128, in connect_sse
server-1  |   |     async with anyio.create_task_group() as tg:
server-1  |   |   File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 772, in __aexit__
server-1  |   |     raise BaseExceptionGroup(
server-1  |   | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
server-1  |   +-+---------------- 1 ----------------
server-1  |     | Exception Group Traceback (most recent call last):
server-1  |     |   File "/usr/local/lib/python3.11/site-packages/mcp/server/sse.py", line 147, in connect_sse
server-1  |     |     yield (read_stream, write_stream)
server-1  |     |   File "/usr/local/lib/python3.11/site-packages/fastapi_mcp/server.py", line 200, in handle_mcp_connection
server-1  |     |     await self.server.run(
server-1  |     |   File "/usr/local/lib/python3.11/site-packages/mcp/server/lowlevel/server.py", line 489, in run
server-1  |     |     async with AsyncExitStack() as stack:
server-1  |     |   File "/usr/local/lib/python3.11/contextlib.py", line 745, in __aexit__
server-1  |     |     raise exc_details[1]
server-1  |     |   File "/usr/local/lib/python3.11/contextlib.py", line 728, in __aexit__
server-1  |     |     cb_suppress = await cb(*exc_details)
server-1  |     |                   ^^^^^^^^^^^^^^^^^^^^^^
server-1  |     |   File "/usr/local/lib/python3.11/site-packages/mcp/shared/session.py", line 209, in __aexit__
server-1  |     |     return await self._task_group.__aexit__(exc_type, exc_val, exc_tb)
server-1  |     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
server-1  |     |   File "/usr/local/lib/python3.11/site-packages/anyio/_backends/_asyncio.py", line 772, in __aexit__
server-1  |     |     raise BaseExceptionGroup(
server-1  |     | ExceptionGroup: unhandled errors in a TaskGroup (1 sub-exception)
server-1  |     +-+---------------- 1 ----------------
server-1  |       | Traceback (most recent call last):
server-1  |       |   File "/usr/local/lib/python3.11/site-packages/mcp/server/session.py", line 146, in _receive_loop
server-1  |       |     await super()._receive_loop()
server-1  |       |   File "/usr/local/lib/python3.11/site-packages/mcp/shared/session.py", line 331, in _receive_loop
server-1  |       |     elif isinstance(message.message.root, JSONRPCRequest):
server-1  |       |                     ^^^^^^^^^^^^^^^
server-1  |       |   File "/usr/local/lib/python3.11/site-packages/pydantic/main.py", line 989, in __getattr__
server-1  |       |     raise AttributeError(f'{type(self).__name__!r} object has no attribute {item!r}')
server-1  |       | AttributeError: 'JSONRPCMessage' object has no attribute 'message'
server-1  |       +------------------------------------

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      Morty Proxy This is a proxified and sanitized view of the page, visit original site.