Commit graph python-sdk/src/mcp/client
Author SHA1 Message Date
Marcelo Trylesinski
543961968c
Use 120 characters instead of 88 (#856) 2025-06-11 11:45:50 +02:00
Marcelo Trylesinski
b0b44c2fe4
Use total_seconds instead of seconds on timeout (#896) 2025-06-07 13:11:00 -07:00
Lorenzo
7f94bef85e
Client sampling and roots capabilities set to None if not implemented (#802)
Co-authored-by: ihrpr <inna@anthropic.com>
2025-05-29 09:56:34 +01:00
Tim Child
f5dd324354
Prevent stdio connection hang for missing server path. (#401)
Co-authored-by: ihrpr <inna@anthropic.com>
2025-05-28 22:57:46 +01:00
Nick Cooper
532b1176f9
RFC: Lower log levels used for connections (#821) 2025-05-27 23:11:08 +01:00
ihrpr
9dad26620f
Fix auth tests and ruff format (#818) 2025-05-27 17:00:01 +01:00
Nick Cooper
10cf0f78a8
Support custom httpx client creation (#752) 2025-05-23 13:55:01 +01:00
Mo
0e2a34189c
Fix ClientSessionGroup cleanup logic (#787) 2025-05-23 08:57:46 +01:00
Nate Barbettini
e80c0150e1
fix: Pass cursor parameter to server (#745)
Some checks failed
Main branch checks / checks (push) Has been cancelled
2025-05-21 22:27:06 +01:00
ihrpr
43ded92633
add auth client sse (#760) 2025-05-20 15:21:14 +01:00
ihrpr
e33cd41c7a
Add OAuth authentication client for HTTPX (#751)
Co-authored-by: Paul Carleton <paulc@anthropic.com>
2025-05-19 20:38:04 +01:00
ihrpr
5d33861cad
Add progress notification callback for client (#721) 2025-05-15 17:45:58 +01:00
Jerome
a00b20a427
feat: add cursor pagination support to all client list methods (#718) 2025-05-15 09:04:04 +01:00
Akshey D
9e66f7ce89
feat: add message to ProgressNotification (#435)
Co-authored-by: ihrpr <inna.hrpr@gmail.com>
2025-05-13 18:40:15 +01:00
Lion Yang
c5782129bc
Fix hanging on streams when stdio_client exiting (#559) 2025-05-13 18:36:33 +01:00
Mo
7b6a903eb9
Create ClientSessionGroup for managing multiple session connections. (#639) 2025-05-13 09:58:24 +01:00
Nate Barbettini
f745d69dcb
fix: 204 is an acceptable response to DELETEing the session (#697) 2025-05-12 21:22:55 +01:00
ihrpr
c6fb822c86
Fix streamable http sampling (#693)
Some checks failed
Main branch checks / checks (push) Has been cancelled
2025-05-12 18:31:35 +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
74f5fcfa0d
StreamableHttp - client refactoring and resumability support (#595) 2025-05-02 14:49:50 +01:00
ihrpr
da0cf22355
Wrap JSONRPC messages with SessionMessage for metadata support (#590) 2025-05-02 14:29:00 +01:00
ihrpr
9dfc925090
StreamableHttp client transport (#573) 2025-05-02 13:59:02 +01:00
Guillaume Raille
96e5327110
add a timeout arguments on per-request basis (as per MCP specifications) (#601) 2025-04-29 13:58:48 +01:00
Jerome
c4beb3e8ef
Support custom client info throughout client APIs (#474)
Co-authored-by: Claude <noreply@anthropic.com>
2025-04-10 14:52:01 +01:00
Sarmad Qadri
e5ee279614
Fixes to stdio_client to support Windows more robustly (#372) 2025-03-27 09:14:56 +00:00
David Soria Parra
568cbd1a66
Fix #201: Move incoming message stream from BaseSession to ServerSession (#325)
Co-authored-by: Claude <noreply@anthropic.com>
2025-03-24 14:14:14 +00:00
Alex
9ae4df85fb
Use default environment even when env is provided(#327)
Some checks failed
Main branch checks / checks (push) Has been cancelled
2025-03-21 11:43:08 +00:00
Tom Sheffler
c3fd34a1a6
Enhancement: make stderr of server subprocess configurable (#191)
* make stderr of server subprocess configurable

* Update stdio.py

---------

Co-authored-by: David Soria Parra <167242713+dsp-ant@users.noreply.github.com>
2025-03-20 16:28:57 +00:00
Marcelo Trylesinski
ae77772ea8
Add strict mode to pyright (#315)
* Add strict mode to pyright

* Apply UP rule

* fix readme

* More correct

* Leave wrong Context for now

* Add strict mode to pyright

* Apply UP rule

* fix readme

* fix

* ignore
2025-03-20 09:13:08 +00:00
Samuel Colvin
805fb469f5
add cwd to StdioServerParameters (#292) 2025-03-19 12:03:10 +00:00
ihrpr
08f4e01b8f
add callback for logging message notification (#314) 2025-03-19 09:40:08 +00: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
Mariusz Woloszyn
5c9f688d95
Add support for Linux configuration path in get_claude_config_path (#270)
* feat: add support for Linux configuration path in get_claude_config_path

* On Linux use XDG_CONFIG_HOME environment variable and fall back to $HOME/.config

* update Linux config path to include 'Claude' directory

* fix: format

---------

Co-authored-by: David Soria Parra <davidsp@anthropic.com>
2025-03-13 11:46:06 +00:00
Marcelo Trylesinski
94d326dbf1
Close unclosed resources in the whole project (#267)
* Close resources

* Close all resources

* Update pyproject.toml

* Close all resources

* Close all resources

* try now...

* try to ignore this

* try again

* try adding one more..

* try now

* try now

* revert ci changes
2025-03-13 10:59:45 +00:00
Henry Mao
ba184a2667
Ruff 2025-03-12 13:51:35 -07:00
Henry Mao
dec28830b9
Remove try except 2025-03-08 10:53:56 +08:00
Henry Mao
ea8a2dbd6d
Reraise exception and make websocket optional 2025-03-08 10:52:10 +08:00
Henry Mao
9d65e5ac03
Remove optional check 2025-03-07 22:02:16 +08:00
Henry Mao
fd826cc7a6
Fix Websocket Client and Add Test 2025-03-07 22:00:56 +08:00
Henry Mao
fc021eea76
Apply suggestions from code review
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2025-03-06 20:12:51 +08:00
Henry Mao
f67c3ee6c0
Merge branch 'modelcontextprotocol:main' into patch-1 2025-03-06 13:24:01 +08:00
David Soria Parra
a50cf92d3a
fix: ruff format 2025-02-20 11:04:46 +00:00
Jerome
ff22f48365
Add client handling for sampling, list roots, ping (#218)
Adds sampling and list roots callbacks to the ClientSession, allowing the client to handle requests from the server.

Co-authored-by: TerminalMan <84923604+SecretiveShell@users.noreply.github.com>
Co-authored-by: David Soria Parra <davidsp@anthropic.com>
2025-02-20 10:49:43 +00:00
David Soria Parra
0d3e02f6a2
fix: standardize resource response format
Github-Issue:#141
2025-02-03 11:33:32 +00:00
Henry Mao
1395607583
Create Client websocket.py 2025-01-29 21:27:09 +08:00
TerminalMan
99727a97ae ruff format 2024-12-29 17:09:18 +00:00