Commit graph python-sdk/src/mcp/client/sse.py
Author SHA1 Message Date
Marcelo Trylesinski
0ee7f1b293
Split protocol types into a standalone mcp-types package (#2973) 2026-06-25 19:18:38 +02:00
Max
5d826490b6
[v2] Dispatcher/ServerRunner receive-path swap — replaces BaseSession (#2710) 2026-06-09 12:58:47 +01:00
Max
161834d4ae
refactor: import SSEError from httpx_sse public API (#2560) 2026-05-08 12:42:44 -04:00
Marcelo Trylesinski
e6235d1667
Propagate contextvars.Context through anyio streams without modifying SessionMessage (#2298) 2026-03-31 12:49:38 -04:00
Max Isbey
75a80b6f07
refactor: connect-first stream lifecycle for sse and streamable_http (#2292)
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2026-03-16 23:30:20 +00:00
Max Isbey
e1fd62e0f3
fix: close all memory stream ends in client transport cleanup (#2266) 2026-03-13 14:43:54 +00:00
Jonathan Hefner
c0328540c9
docs: fix docstrings across public API surface (#2095) 2026-02-19 06:45:59 +01:00
Max Isbey
705497a593
fix: allow null id in JSONRPCError per JSON-RPC 2.0 spec (#2056) 2026-02-17 10:30:34 +00:00
Marcelo Trylesinski
1a8c14a5b8
refactor: replace mcp.types as types to from mcp import types (#1986) 2026-02-03 16:42:29 +00:00
Max Isbey
a7ddfdae07
ci: add strict-no-cover to detect unnecessary coverage pragmas (#1897) 2026-01-23 21:00:20 +01:00
Marcelo Trylesinski
f4672c5084
Drop RootModel from JSONRPCMessage (#1908) 2026-01-19 14:04:15 +01:00
Felix Weinberger
d41d0c0128
chore: add D212 lint rule to enforce Google-style docstrings (#1892) 2026-01-16 16:10:52 +00:00
Marcelo Trylesinski
e94b386a13
refactor: use snake case instead of camel case in types (#1894) 2026-01-16 15:51:27 +01:00
Yugan
2aa1ad2a69
feat: standardize timeout values to floats in seconds (#1766) 2025-12-19 12:22:56 +00:00
Arjun TS
2bf9b10f63
Skip empty SSE data to avoid parsing errors (#1753)
Co-authored-by: ARJUN-TS1 <arjun.ts1@ibm.com>
Co-authored-by: Max Isbey <224885523+maxisbey@users.noreply.github.com>
2025-12-09 15:14:23 +00:00
Camila Rondinini
2cd178a962
Add on_session_created callback option (#1710) 2025-12-01 17:48:33 +00:00
Max Isbey
89e9c43acf
Get baseline 100% clean coverage (#1553) 2025-11-11 14:09:32 +01:00
ZhangChuanhui
f676f6c0f0
fix: catch and rethrow SSEError during SSE connection establishment (#975)
Co-authored-by: zhangchuanhui <zhangchal@digitalchina.com>
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com>
2025-09-30 15:52:32 +01:00
Inna Harper
4fee123e72
clean up log.error (#1109) 2025-07-09 11:15:14 +01:00
Marcelo Trylesinski
9301924f44
chore: bump ruff (#1085) 2025-07-04 09:01:17 +01:00
ihrpr
0bcecffc4c
set timeout for sse in httpx_client_factory (#943) 2025-06-12 09:09:13 +01:00
Marcelo Trylesinski
543961968c
Use 120 characters instead of 88 (#856) 2025-06-11 11:45:50 +02:00
Nick Cooper
532b1176f9
RFC: Lower log levels used for connections (#821) 2025-05-27 23:11:08 +01:00
Nick Cooper
10cf0f78a8
Support custom httpx client creation (#752) 2025-05-23 13:55:01 +01:00
ihrpr
43ded92633
add auth client sse (#760) 2025-05-20 15:21:14 +01:00
ihrpr
ed25167fa5
Introduce a function to create a standard AsyncClient with options (#655)
Some checks failed
Main branch checks / checks (push) Has been cancelled
2025-05-08 20:53:21 +01:00
ihrpr
9d99aee014
Revert "Add message queue for SSE messages POST endpoint (#459)" (#649) 2025-05-07 16:35:20 +01:00
Akash D
3b1b213a96
Add message queue for SSE messages POST endpoint (#459) 2025-05-06 17:10:43 -07:00
ihrpr
da0cf22355
Wrap JSONRPC messages with SessionMessage for metadata support (#590) 2025-05-02 14:29:00 +01:00
Marcelo Trylesinski
97201cce59
Strict types on the client side (#285) 2025-03-14 10:56:48 +00:00
Marcelo Trylesinski
7196604468
Revert "refactor: reorganize message handling for better type safety and clar…" (#282)
Some checks failed
Main branch checks / checks (push) Has been cancelled
This reverts commit 9d0f2daddb.
2025-03-14 09:50:46 +00:00
David Soria Parra
9d0f2daddb
refactor: reorganize message handling for better type safety and clarity (#239)
Some checks failed
Main branch checks / checks (push) Has been cancelled
* refactor: improve typing with memory stream type aliases

Move memory stream type definitions to models.py and use them throughout
the codebase for better type safety and maintainability.

GitHub-Issue:#201

* refactor: move streams to ParsedMessage

* refactor: update test files to use ParsedMessage

Updates test files to work with the ParsedMessage stream type aliases
and fixes a line length issue in test_201_client_hangs_on_logging.py.

Github-Issue:#201

* refactor: rename ParsedMessage to MessageFrame for clarity

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>

* refactor: move MessageFrame class to types.py for better code organization

🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>

* fix pyright

* refactor: update websocket client to use MessageFrame

Modified the websocket client to work with the new MessageFrame type,
preserving raw message text and properly extracting the root JSON-RPC
message when sending.

Github-Issue:#204

* fix: use NoneType instead of None for type parameters in MessageFrame

🤖 Generated with [Claude Code](https://claude.ai/code)

* refactor: rename root to message
2025-03-13 13:44:55 +00:00
David Soria Parra
1177a11910
Return a specific server session instance of request context
We currently return a generic instance of RequestContext without
a specialization on the Session type. This makes it impossible
for servers to typesafe call `list_roots()` and other methods.

We now return a specific instance of `RequestContext[ServerSession]`
2024-11-11 21:11:13 +00:00
David Soria Parra
ec8c85edea
run ruff 2024-11-11 20:42:46 +00:00
David Soria Parra
b9b44e6dad
Don't re-export types
We will be a bit more low level and expect callees to import mcp.types
instead of relying in re-exported types. This makes usage more explicit
and avoids potential collisions in mcp.server.
2024-11-11 20:39:33 +00:00
David Soria Parra
ed87ae9f06
rename mcp_python to mcp 2024-11-11 12:40:32 +00:00
Renamed from mcp_python/client/sse.py (Previous history)