Commit Graph

508 Commits

Author SHA1 Message Date
Marcelo Trylesinski acba5478a9 refactor: McpError renamed to MCPError and flatten parameters (#1956)
Co-authored-by: Max Isbey <224885523+maxisbey@users.noreply.github.com>
2026-01-26 14:37:44 +01:00
Marcelo Trylesinski 65c614e48e Rename FastMCP to MCPServer (#1951) 2026-01-25 14:45:52 +01:00
Marcelo Trylesinski ce75b2d7d2 refactor: improve type docstrings and remove internal type exports (#1950) 2026-01-24 17:17:09 +01: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 3cfdea0e97 refactor: move stdio package to its own module (#1942) 2026-01-23 18:35:05 +01:00
Marcelo Trylesinski a1d330de9f Proper handle extra data in MCP objects (#1937) 2026-01-23 15:35:23 +01:00
Marcelo Trylesinski f0ab53e194 Add meta to Client methods (#1923) 2026-01-22 14:50:39 +01:00
Marcelo Trylesinski 7b728a243e refactor: drop unused logger/logging (#1926) 2026-01-22 11:56:41 +01:00
Marcelo Trylesinski 656f887aff fix: replace http code by jsonrpc (#1920) 2026-01-21 18:37:55 +01:00
Marcelo Trylesinski 3bcdc1763f refactor: create the types subpackage, and the jsonrpc module (#1918) 2026-01-21 16:49:07 +01:00
Marcelo Trylesinski ae7793efd6 refactor: avoid double JSON parsing (#1917) 2026-01-21 13:07:05 +01:00
Marcelo Trylesinski 6d463bb353 refactor: replace AnyFunction by proper types (#1916) 2026-01-21 13:06:46 +01:00
Marcelo Trylesinski bcb07c2b25 refactor: flatten the methods in Client (#1914) 2026-01-20 13:12:07 +01:00
Marcelo Trylesinski 3dc8b72041 refactor: replace pydantic_core.from_json by json.loads (#1912) 2026-01-19 20:04:28 +01:00
Max Isbey 34e66a3812 refactor: move streamable HTTP app creation from FastMCP to lowlevel Server (#1899) 2026-01-19 18:48:04 +01:00
Marcelo Trylesinski 1c258ae203 Don't block the event loop on non-async functions (#1909) 2026-01-19 14:47:37 +01:00
Marcelo Trylesinski 5fdd48a0d3 Completely drop RootModel from types module (#1910) 2026-01-19 14:29:15 +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
Felix Weinberger df039bf97c Add ergonomic Client class for testing MCP servers (#1870) 2026-01-16 15:49:26 +00:00
Marcelo Trylesinski 8adb5bdce8 refactor: move transport-specific parameters from FastMCP constructor to run() (#1898)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 15:16:20 +00:00
Max Isbey 5d80f4efc8 refactor: move inline imports to module level (#1893) 2026-01-16 14:54:08 +00:00
Marcelo Trylesinski e94b386a13 refactor: use snake case instead of camel case in types (#1894) 2026-01-16 15:51:27 +01:00
Max Isbey 7080fcf1e6 refactor: move inline imports to top of routes.py (#1888) 2026-01-16 15:05:47 +01:00
Felix Weinberger 0622babbd9 fix: URL-decode parameters extracted from resource templates (#1864) 2026-01-16 13:47:21 +00:00
Marcelo Trylesinski edf0950a6a Revert mount_path parameter from FastMCP (#1881) 2026-01-16 13:23:08 +00:00
Felix Weinberger 9f427f3292 fix: add default values to Literal type fields in content types (#1867) 2026-01-16 10:01:57 +00:00
Marcelo Trylesinski 68cbabb9d7 refactor: introduce MCPModel base class for protocol types (#1880)
Co-authored-by: Max Isbey <224885523+maxisbey@users.noreply.github.com>
2026-01-16 10:51:36 +01:00
Marcelo Trylesinski 2ce41a8347 Drop dependencies parameter from FastMCP (#1877) 2026-01-16 08:59:44 +00:00
Felix Weinberger cfb2909631 fix: change Resource URI fields from AnyUrl to str (#1863) 2026-01-16 09:58:57 +01:00
Marcelo Trylesinski 812a46ab97 Remove deprecated cursor parameter and ResourceReference (#1871) 2026-01-15 21:33:21 +01:00
Marcelo Trylesinski 024d7597fd Drop Content and args parameter in ClientSessionGroup.call_tool (#1866) 2026-01-15 16:24:53 +00:00
Marcelo Trylesinski 32a4587da9 chore: drop as _annotations (#1858) 2026-01-15 10:07:06 +00:00
Marcelo Trylesinski 8893b022e8 Drop deprecated streamablehttp_client (#1836) 2026-01-15 11:02:24 +01:00
Max Isbey b26e5b907f Add missing TasksCallCapability to enable proper MCP task support (#1854)
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-15 10:55:38 +01:00
Yann Jouanin 0da9a074d0 Support for Resource and ResourceTemplate metadata (#1840)
Co-authored-by: Jacem Elwaar <jacem@mcpappsbuilders.com>
2026-01-12 14:45:31 +00:00
Marcelo Trylesinski 3ffe142e9a Support Python 3.14 (#1834) 2026-01-07 16:28:23 +00:00
Yann Jouanin 3863f203e9 Server initialize response update to last spec (add title, description) (#1634) 2026-01-06 21:34:08 +00:00
Jay Hemnani f397783c39 fix: add explicit type annotation for call_tool decorator (#1826)
Co-authored-by: Jay Hemnani <jayhemnani9910@gmail.com>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2026-01-06 21:11:36 +01:00
Marcelo Trylesinski 201de920a0 refactor: use __future__.annotations (#1832) 2026-01-06 20:03:13 +01:00
Max Isbey 37de50144f fix: add StatelessModeNotSupported exception and improve tests (#1828) 2026-01-06 11:26:26 +00:00
Max Isbey bb6cb029f0 fix: raise clear error for server-to-client requests in stateless mode (#1827) 2026-01-05 17:17:54 +00:00
gazzadownunder d52937b39c Make refresh_token grant type optional in DCR handler (#1651)
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-05 13:41:45 +00:00
Maxime 78a9504ec1 fix: return HTTP 404 for unknown session IDs instead of 400 (#1808)
Co-authored-by: Max Isbey <224885523+maxisbey@users.noreply.github.com>
2025-12-31 14:06:12 +00:00
jnjpng a9cc822a10 fix: accept HTTP 201 status code in token exchange (#1503)
Co-authored-by: Paul Carleton <paulcarletonjr@gmail.com>
2025-12-19 18:22:00 +00:00
Ankesh Kumar Thakur a4bf947540 fix: Token endpoint response for invalid_client (#1481)
Co-authored-by: Max Isbey <224885523+maxisbey@users.noreply.github.com>
2025-12-19 18:19:00 +00:00
V 06748eb4c4 fix: Include extra field for context log (#1535) 2025-12-19 17:54:03 +00:00
Yugan 2aa1ad2a69 feat: standardize timeout values to floats in seconds (#1766) 2025-12-19 12:22:56 +00:00
zenlytix 8ac0cab98c Fix for Url Elicitation issue 1768 (#1780) 2025-12-15 18:58:17 +01:00
Marcelo Trylesinski a3a4b8d11a Add streamable_http_client which accepts httpx.AsyncClient instead of httpx_client_factory (#1177)
Co-authored-by: Felix Weinberger <fweinberger@anthropic.com>
2025-12-10 16:39:00 +00:00