54 Commits

Author SHA1 Message Date
Luca Chang 35777b9811 fix: perform auth server metadata discovery fallbacks on any 4xx (#1193)
Main branch checks / checks (push) Failing after 1s
2025-07-24 11:32:35 +01:00
Clare Liguori 6a84a2f79f fix: fix OAuth flow request object handling (#1174)
Main branch checks / checks (push) Failing after 2s
2025-07-21 13:36:21 +01:00
Luca Chang 99c4f3c906 Support falling back to OIDC metadata for auth (#1061)
Main branch checks / checks (push) Failing after 1s
2025-07-17 20:06:38 +01:00
yurikunash eb5146dc8b Implement RFC9728 - Support WWW-Authenticate header by MCP client (#1071) 2025-07-15 10:23:39 +01:00
Marcelo Trylesinski 95b44fb0d7 tests: use inline_snapshot.Is on parametrized test (#945)
Co-authored-by: Felix Weinberger <3823880+felixweinberger@users.noreply.github.com>
2025-07-14 21:59:37 +01:00
Jeremiah Lowin 81fe63a81d Ensure failed oauth registration response is read before accessing response.text (#1118)
Co-authored-by: ihrpr <inna@anthropic.com>
2025-07-10 22:01:17 +01:00
Felix Weinberger 3abefeeeaf fweinberger/align shutdown with spec (#1091)
Co-authored-by: davenpi <davenport.ianc@gmail.com>
2025-07-09 10:14:30 -04:00
Felix Weinberger e0336213e8 Improve child process termination on POSIX & Windows (#1078)
Co-authored-by: jingx8885 <jingxu8885@qq.com>
Co-authored-by: Surya Prakash Susarla <susarla.surya.prakash.1998@gmail.com>
2025-07-08 15:04:06 +01:00
Felix Weinberger cf72565d9a Unify process termination on POSIX & Windows (+ tests) (#1044)
Co-authored-by: Cristian Pufu <cristian.pufu@uipath.com>
2025-07-08 14:57:39 +01:00
Marcelo Trylesinski 9301924f44 chore: bump ruff (#1085) 2025-07-04 09:01:17 +01:00
bhosmer-ant 43bb24f62b feat: Add structured output support for tool functions (#993) 2025-06-26 09:36:17 +01:00
dr3s 41f3bc35ce Make "resource" optional on earlier protocols (#1017)
Co-authored-by: Andres March <>
2025-06-25 10:18:24 +01:00
Inna Harper 674768802a Fix /.well-known/oauth-authorization-server dropping path (#1014) 2025-06-24 15:43:26 +01:00
Inna Harper 17f9c00c53 MCP server separation into Authorization Server (AS) and Resource Server (RS) roles per spec PR #338 (#982)
Co-authored-by: Paul Carleton <paulc@anthropic.com>
2025-06-23 14:19:03 +01:00
Marcelo Trylesinski 543961968c Use 120 characters instead of 88 (#856) 2025-06-11 11:45:50 +02:00
dr3s 1a9ead07f5 relax validation (#879) 2025-06-09 19:21:01 +01:00
Sam Tombury 2bce10bdb1 Support Cursor OAuth client registration (#895) 2025-06-07 07:24:11 -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
ihrpr 9dad26620f Fix auth tests and ruff format (#818) 2025-05-27 17:00:01 +01:00
Pedro Rodrigues 6e418e62f9 Fix building auth metadata paths (#779)
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2025-05-26 15:19:18 +02:00
Christian Clauss 073471cdf1 Python lint: Ruff rule PLW1510 -- subprocess-run-without-check (#794) 2025-05-23 16:44:23 +01:00
Nate Barbettini e80c0150e1 fix: Pass cursor parameter to server (#745)
Main branch checks / checks (push) Failing after 0s
Check uv.lock / check-lock (push) Has been cancelled
2025-05-21 22:27:06 +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
ihrpr 13f018264c Set 2025-03-26 as the latest protocol version (#719) 2025-05-15 09:29:54 +01:00
Jerome a00b20a427 feat: add cursor pagination support to all client list methods (#718) 2025-05-15 09:04:04 +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
ihrpr c6fb822c86 Fix streamable http sampling (#693)
Main branch checks / checks (push) Failing after 1s
Check uv.lock / check-lock (push) Has been cancelled
2025-05-12 18:31:35 +01:00
inceptmyth 280bab36f4 Fix: Use absolute path to uv executable in Claude Desktop config (#440) 2025-05-08 15:57:41 +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 cf8b66b82f use metadata from SessionMessage to propagate related_request_id (#591) 2025-05-02 14:35:17 +01:00
ihrpr da0cf22355 Wrap JSONRPC messages with SessionMessage for metadata support (#590) 2025-05-02 14:29:00 +01:00
ihrpr 78f0b11a09 StreamableHttp - Server transport with state management (#553) 2025-05-02 11:58:54 +01:00
bhosmer-ant 82bd8bc1d9 Properly clean up response streams in BaseSession (#515) 2025-05-01 14:45:47 +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
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
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
ihrpr 08f4e01b8f add callback for logging message notification (#314) 2025-03-19 09:40:08 +00:00
Marcelo Trylesinski 7196604468 Revert "refactor: reorganize message handling for better type safety and clar…" (#282)
Main branch checks / checks (push) Failing after 0s
Check uv.lock / check-lock (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)
Main branch checks / checks (push) Failing after 0s
Check uv.lock / check-lock (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
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
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
Salman Mohammed bc6746e89b Add instructions field to ServerSession and FastMCP 2025-01-13 13:00:11 -05:00
Salman Mohammed 135191403a Add instructions field to InitializeResult 2025-01-13 11:58:43 -05:00
David Soria Parra 2d8f08d648 fix: Address formatting and type checking issues 2025-01-03 15:23:58 +00:00
samefarrar 6194d06f6c test: Add test that uv command inserted into config can run "with --help" 2024-12-29 14:57:34 +00:00
David Soria Parra ed87ae9f06 rename mcp_python to mcp 2024-11-11 12:40:32 +00:00