Commit graph python-sdk/src/mcp/server/__init__.py
Author SHA1 Message Date
arthrod
e334f7e4b6
Update __init__.py (#335) 2025-03-20 17:20:40 +00:00
David Soria Parra
a79f51f55f
style: Fix imports and line length formatting 2024-12-21 00:46:36 +00:00
David Soria Parra
557e90d2e7
Integrate FastMCP
This commit integrates FastMCP, a high-level MCP server implementation originally written by Jeremiah Lowin,
into the official MCP SDK. It also updates dependencies and adds new dev dependencies.
It moves the existing SDK into a .lowlevel .
2024-12-21 00:41:38 +00:00
David Soria Parra
587dbb739d
Add handler for resource templates
We missed to have a handler for resource templates. We add this
now. One caveat is still that the `uriTemplate` in `ResourceTemplate`
is not a pydantic type.
2024-11-27 23:01:11 +00:00
David Soria Parra
873f6bf03e
Merge pull request #62 from modelcontextprotocol/davidsp/error-fixes
Handle MCPErrors separately
2024-11-25 14:15:06 +00:00
David Soria Parra
33f0e590c8
Add a simple module documentation to help LLMs with the pattern
LLMs have issue infering the actual usage pattern from the code
itself. We add a simple module documentation to help with that.
2024-11-25 13:56:38 +00:00
David Soria Parra
f7e47f39c2
Correct comment 2024-11-22 22:54:35 +00:00
David Soria Parra
afe1c0913a
When any handler raises an McpError, we pass it as a response 2024-11-22 22:54:35 +00:00
David Soria Parra
07d3b2fca5
fix return values of tools 2024-11-20 11:24:18 +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
f5d82bd229
Remove helper types
The helper types in mcp.server.types got really confusioning during
implementation as they overlapped with mcp.types. I now believe it
is better if we stay more low level to the spec types.

To do this, we now only use mcp.types everywhere. We renamed mcp.server.types
to mcp.server.models and removed it to the absolute minimum.
2024-11-11 20:05:51 +00:00
David Soria Parra
ed87ae9f06
rename mcp_python to mcp 2024-11-11 12:40:32 +00:00
Renamed from mcp_python/server/__init__.py (Previous history)