Skip to content

Commit 1934a58

Browse files
Address kludex review comments - use __exit__ format for exception data
Changed exception data format to match Python's __exit__ format: - exception_type: The exception class name - exception_value: The exception message/value - exception_traceback: The traceback (set to None for now) Updated tests to verify the new data format.
1 parent 39220b0 commit 1934a58

File tree

2 files changed

+6
-6
lines changed

2 files changed

+6
-6
lines changed

src/mcp/server/lowlevel/server.py

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -615,10 +615,9 @@ async def _handle_message(
615615
await session.send_log_message(
616616
level="error",
617617
data={
618-
"message": str(message),
619-
"type": type(message).__name__,
620-
"module": type(message).__module__,
621-
"args": getattr(message, "args", None),
618+
"exception_type": type(message).__name__,
619+
"exception_value": str(message),
620+
"exception_traceback": None,
622621
},
623622
logger="mcp.server.exception_handler",
624623
)

tests/server/test_lowlevel_exception_handling.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,9 @@ async def test_exception_handling_with_raise_exceptions_false(exception_class, m
4949
call_args = session.send_log_message.call_args
5050

5151
assert call_args.kwargs["level"] == "error"
52-
assert call_args.kwargs["data"]["message"] == str(test_exception)
53-
assert call_args.kwargs["data"]["type"] == exception_class.__name__
52+
assert call_args.kwargs["data"]["exception_type"] == exception_class.__name__
53+
assert call_args.kwargs["data"]["exception_value"] == str(test_exception)
54+
assert call_args.kwargs["data"]["exception_traceback"] is None
5455
assert call_args.kwargs["logger"] == "mcp.server.exception_handler"
5556

5657

0 commit comments

Comments
 (0)