Sreenath Somarajapuram
07ae8c0d4e
types: Setting default value for method: Literal ( #1292 )
2025-08-26 16:22:56 +01:00
David Soria Parra
0926613714
Update dependencies and fix type issues ( #1268 )
...
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com >
2025-08-14 10:40:47 +01:00
Marcelo Trylesinski
c7671e470c
Add pyright strict mode on the whole project ( #1254 )
2025-08-11 18:56:37 +01:00
joesavage-silabs
ef4e167c1a
Remove strict validation on response_modes_supported member of OAuthMetadata ( #1243 )
Main branch checks / checks (push) Failing after 1s
2025-08-07 18:39:35 +01:00
Marcelo Trylesinski
959d4e39ae
Unpack settings in FastMCP ( #1198 )
Main branch checks / checks (push) Failing after 0s
2025-07-26 10:37:48 +02:00
Marcelo Trylesinski
7570ba30cf
Make sure RequestId is not coerced as int ( #1178 )
2025-07-21 10:57:47 +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
Inna Harper
813da6a579
fix flaky fix-test_streamablehttp_client_resumption test ( #1166 )
2025-07-17 18:35:40 +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
AishwaryaKalloli
bd84329a08
Doc update + validation in SseServerTransport + existing test fixes: addresses Issue: #827 ( #900 )
2025-07-09 08:19:06 +01:00
Inna Harper
679b22970e
RFC 8707 Resource Indicators Implementation ( #991 )
2025-06-23 17:10:20 +01:00
David Dworken
86bb54cb28
Add support for DNS rebinding protections ( #861 )
2025-06-17 20:13:00 +01:00
David Dworken
7b420656de
Fix uncaught exception in MCP server ( #967 )
2025-06-16 17:04:51 -07:00
Felix Weinberger
df15e9566d
feat: implement MCP-Protocol-Version header requirement for HTTP transport ( #898 )
2025-06-12 18:01:53 +01:00
Marcelo Trylesinski
543961968c
Use 120 characters instead of 88 ( #856 )
2025-06-11 11:45:50 +02:00
xiaoming wang
2cbc435c6c
normalize string ID to int in server messages for compatibility ( #851 )
...
Co-authored-by: 晓明 王 <wxm@v1i.cc >
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com >
2025-06-08 07:15:21 +00:00
ihrpr
05b7156ea8
Support for http request injection propagation in StreamableHttp ( #833 )
Main branch checks / checks (push) Failing after 0s
Check uv.lock / check-lock (push) Has been cancelled
2025-05-29 15:21:06 +01:00
ihrpr
70014a2bbb
Support for http request injection propagation to tools ( #816 )
2025-05-28 15:59:14 +01:00
Marshall Roch
7901552eba
send errors to pending requests if server closes ( #333 )
...
Co-authored-by: ihrpr <inna@anthropic.com >
2025-05-27 22:55:27 +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
Jeremiah Lowin
1cb740745d
Properly infer prefix for SSE messages ( #659 )
2025-05-12 21:29:17 +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 )
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
ihrpr
ed25167fa5
Introduce a function to create a standard AsyncClient with options ( #655 )
Main branch checks / checks (push) Failing after 0s
Check uv.lock / check-lock (push) Has been cancelled
2025-05-08 20:53:21 +01:00
ihrpr
e4e119b324
Streamable HTTP - improve usability, fast mcp and auth ( #641 )
2025-05-08 20:43:25 +01:00
Akash D
83968b5b2f
Handle SSE Disconnects Properly ( #612 )
2025-05-02 09:32:46 -07:00
ihrpr
5d8eaf77be
Streamable Http - clean up server memory streams ( #604 )
2025-05-02 14:59:17 +01:00
ihrpr
74f5fcfa0d
StreamableHttp - client refactoring and resumability support ( #595 )
2025-05-02 14:49:50 +01:00
ihrpr
3978c6e1b9
StreamableHttp -- resumability support for servers ( #587 )
2025-05-02 14:10:40 +01:00
ihrpr
9dfc925090
StreamableHttp client transport ( #573 )
2025-05-02 13:59:02 +01:00
David Soria Parra
9a2bb6a7e7
refactor: Make types.py strictly typechecked. ( #336 )
2025-03-26 14:21:35 +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
Henry Mao
fb7d0c8dac
Pyright
2025-03-12 13:56:05 -07:00
Henry Mao
ba184a2667
Ruff
2025-03-12 13:51:35 -07:00
Henry Mao
fd826cc7a6
Fix Websocket Client and Add Test
2025-03-07 22:00:56 +08:00
David Soria Parra
f10665db4c
tests: cleanup
2025-02-05 11:02:51 +00:00
David Soria Parra
c58adfe3f5
Merge pull request #167 from modelcontextprotocol/davidsp/88-v2
...
feat: add request cancellation and cleanup
2025-02-04 20:23:05 +00:00
David Soria Parra
27bfde95a4
fix: fix tests
2025-02-04 20:16:30 +00:00
David Soria Parra
827e494df4
feat: add request cancellation and in-flight request tracking
...
This commit adds support for request cancellation and tracking of
in-flight requests in the MCP protocol implementation. The key
architectural changes are:
1. Request Lifecycle Management:
- Added _in_flight dictionary to BaseSession to track active requests
- Requests are tracked from receipt until completion/cancellation
- Added proper cleanup via on_complete callback
2. Cancellation Support:
- Added CancelledNotification handling in _receive_loop
- Implemented cancel() method in RequestResponder
- Uses anyio.CancelScope for robust cancellation
- Sends error response on cancellation
3. Request Context:
- Added request_ctx ContextVar for request context
- Ensures proper cleanup after request handling
- Maintains request state throughout lifecycle
4. Error Handling:
- Improved error propagation for cancelled requests
- Added proper cleanup of cancelled requests
- Maintains consistency of in-flight tracking
This change enables clients to cancel long-running requests and
servers to properly clean up resources when requests are cancelled.
Github-Issue:#88
2025-02-03 20:50:05 +00:00
David Soria Parra
2dc5fbfa3d
fix: add test for #176
2025-01-28 11:19:13 +00:00
Nick Merrill
d01d49ea6e
add timeout test
2025-01-14 12:10:41 -05:00
Nick Merrill
e798d20cbb
ruff
2025-01-14 11:56:44 -05:00
Nick Merrill
aa7869a62f
add type hints
2025-01-14 11:54:09 -05:00
Nick Merrill
3fa26a5a97
remove unused imports
2025-01-14 11:49:04 -05:00
Nick Merrill
07e721f63f
formatting
2025-01-14 11:47:41 -05:00
Nick Merrill
7b35ab844a
run server in separate process
2025-01-14 11:44:03 -05:00
Nick Merrill
8d90a3afa3
attempt at server in process
2025-01-14 11:15:05 -05:00
Nick Merrill
7ab1fc71aa
attempt to get server to shut down
2025-01-14 11:01:43 -05:00
Nick Merrill
8f81a85abe
all tests passing with custom port, but not passing all together
2025-01-14 10:45:55 -05:00
Nick Merrill
e79a56435a
passing SSE client test
2025-01-14 10:34:32 -05:00