Commit Graph

328 Commits

Author SHA1 Message Date
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
837309c3c8 Merge pull request #41 from modelcontextprotocol/davidsp/readme
update package name in readme
2024-11-11 16:50:38 +00:00
David Soria Parra
500f48d1ad update package name in readme 2024-11-11 16:22:26 +00:00
David Soria Parra
01e8040428 Merge pull request #39 from modelcontextprotocol/davidsp/pyproject
update pyproject toml
2024-11-11 16:10:12 +00:00
Justin Spahr-Summers
25a930901e Merge pull request #40 from modelcontextprotocol/jspahrsummers-patch-1
Update README title
2024-11-11 16:07:18 +00:00
Justin Spahr-Summers
f2f324cd5b Update README title 2024-11-11 16:00:48 +00:00
David Soria Parra
b47924f42d update pyproject toml 2024-11-11 15:40:11 +00:00
David Soria Parra
dfe42131f6 Merge pull request #38 from modelcontextprotocol/davidsp/mcp
rename mcp_python to mcp
2024-11-11 15:11:51 +00:00
David Soria Parra
ed87ae9f06 rename mcp_python to mcp 2024-11-11 12:40:32 +00:00
David Soria Parra
aa164ab556 Merge branch 'v0.6.x' 2024-11-10 23:55:17 +00:00
David Soria Parra
586b495f22 Merge pull request #37 from modelcontextprotocol/davidsp/bump
bump version
2024-11-10 23:54:52 +00:00
David Soria Parra
34ffcf4e43 bump version 2024-11-10 23:53:55 +00:00
David Soria Parra
aec2ca5270 v0.6.1 2024-11-10 23:50:55 +00:00
David Soria Parra
935fe5d1a0 Make call_tool() return value covariant
`list` is invariant, hence handlers can't just return `list[str]`.
We need to use Sequence here.
2024-11-10 21:47:26 +00:00
David Soria Parra
74c49c2906 Bump v0.6.0 2024-11-10 21:45:23 +00:00
David Soria Parra
4eae68d67e Merge pull request #33 from modelcontextprotocol/davidsp/license
Add LICENSE file
2024-11-07 16:58:26 +00:00
David Soria Parra
d0b055dfc8 Merge pull request #32 from modelcontextprotocol/davidsp/readme
Add README
2024-11-07 16:58:14 +00:00
David Soria Parra
551eadb603 Add LICENSE file 2024-11-07 14:59:39 +00:00
David Soria Parra
e94bf7fbba Add README 2024-11-07 14:57:56 +00:00
David Soria Parra
b0787fd147 Merge pull request #30 from modelcontextprotocol/davidsp/capabilities
feat: add structured capability types
2024-11-07 14:51:20 +00:00
David Soria Parra
5497da0afd feat: add structured capability types
Replace generic capability dictionaries with structured types for prompts,
resources, tools, and roots. This improves type safety and makes capability
features like listChanged and subscribe more explicit in the protocol.
2024-11-07 14:49:40 +00:00
David Soria Parra
14addfb872 Merge pull request #26 from modelcontextprotocol/bump-main-branch-to-0.6.0.dev
bump main branch to 0.6.0.dev
2024-11-07 14:16:31 +00:00
Justin Spahr-Summers
975f79b119 Merge pull request #31 from modelcontextprotocol/justin/is-error-optional
`CallToolResult.isError` should be optional
2024-11-07 13:39:15 +00:00
Justin Spahr-Summers
405fb3e18c CallToolResult.isError should be optional 2024-11-07 13:38:01 +00:00
Justin Spahr-Summers
5587c0276c Merge pull request #28 from modelcontextprotocol/justin/spec-updates
Update to spec version 2024-11-05
2024-11-07 11:45:36 +00:00
Justin Spahr-Summers
48beb52ffd Merge pull request #27 from modelcontextprotocol/justin/env-var-inheritance
Inherit environment variables deemed safe by default
2024-11-07 11:11:27 +00:00
Justin Spahr-Summers
c7d8f11e0c Formatting 2024-11-06 12:35:32 +00:00
Justin Spahr-Summers
a891ad4689 Update tool calls to use structured results 2024-11-06 12:33:50 +00:00
Justin Spahr-Summers
185a186215 Rename request_create_message for consistency 2024-11-06 12:25:09 +00:00
Justin Spahr-Summers
4ac03d40f9 Update convenience methods on ClientSession and ServerSession 2024-11-06 12:24:53 +00:00
Justin Spahr-Summers
1634343931 Update types for spec changes 2024-11-06 12:24:46 +00:00
Justin Spahr-Summers
df901f698d Manually fix ruff issue 2024-11-06 11:08:22 +00:00
Justin Spahr-Summers
5508697b13 Inherit environment variables deemed safe by default 2024-11-06 11:05:20 +00:00
Nick Merrill
12c648f9f1 bump main branch to 0.6.0.dev 2024-11-05 18:48:36 -05:00
Nick Merrill
60e9c7a0d7 Add in-memory transport (#25)
## Goal

Support running an MCP server in the same process as the client, while preserving MCP abstractions.

## Details

1. **(core change)** Adds a new `memory` transport module that enables in-process client-server communication.
This includes:
   - `create_client_server_memory_streams()` to create bidirectional memory streams
   - `create_connected_server_and_client_session()` to establish an in-process client-server connection

3. (minor) Enhances error handling and timeout support:
   - Adds configurable read timeouts to sessions via `read_timeout_seconds` parameter
   - Improves exception handling in the server with a new `raise_exceptions` flag to control whether errors are returned to clients or raised directly
   - Ensures proper cleanup of request context tokens in error cases

4. (minor) Makes server improvements:
   - Adds built-in ping handler support
2024-11-05 15:42:41 -08:00
David Soria Parra
1a60e1b7c7 Merge pull request #23 from modelcontextprotocol/davidsp/upgrade
Upgrade packages and bump version
2024-10-21 16:14:59 +01:00
David Soria Parra
cf1dfb751e Upgrade packages 2024-10-21 16:12:42 +01:00
David Soria Parra
1e8cf6ba58 bump version 2024-10-21 16:12:42 +01:00
David Soria Parra
423f89561c Merge pull request #22 from modelcontextprotocol/davidsp/release
A short overview of how to do a release
2024-10-21 15:57:17 +01:00
David Soria Parra
6a4bbee5ab Merge pull request #21 from modelcontextprotocol/davidsp/call-tool
Pass arguments as a dictionary instead of spreading them into kwargs
2024-10-21 15:54:44 +01:00
David Soria Parra
a1818e4c5f A short overview of how to do a release 2024-10-21 15:54:17 +01:00
David Soria Parra
fa3e145dac Pass arguments as a dictionary instead of spreading them into kwargs 2024-10-21 15:48:33 +01:00
Justin Spahr-Summers
6cdd97bf1b Merge pull request #19 from modelcontextprotocol/justin/upgrade-spec
Upgrade to protocol version 2024-10-07
2024-10-21 15:33:30 +01:00
David Soria Parra
59199d7312 Merge pull request #20 from modelcontextprotocol/davidsp/bump-version
bump version
2024-10-21 15:31:00 +01:00
Justin Spahr-Summers
9eb239b3fb Remove resourceTemplates from list_resources 2024-10-21 14:55:27 +01:00
Justin Spahr-Summers
ffff3d9450 ruff --fix 2024-10-21 14:54:47 +01:00
Justin Spahr-Summers
eb1024c654 Update protocol version handling 2024-10-21 14:50:44 +01:00
Justin Spahr-Summers
2d55eabb2f Update types for protocol version 2024-10-07 2024-10-21 14:47:44 +01:00
David Soria Parra
14c2ce16fe bump version 2024-10-14 17:48:55 +01:00
David Soria Parra
5c70e16475 Merge pull request #18 from modelcontextprotocol/davidsp/list_tools
Add support for tools/list
2024-10-14 13:19:11 +01:00