28 Commits

Author SHA1 Message Date
David Soria Parra 91b255f83f v1.0.0 2024-11-25 14:17:46 +00:00
David Soria Parra 9bdb8a2401 Update supported language
Since we are pulling the list of Python versions in the README
badge from PyPi we need to ensure we correctly reflect all supported
versions.
2024-11-25 13:06:53 +00:00
David Soria Parra 22c4b0ff80 Add URLs 2024-11-20 16:12:21 +00:00
David Soria Parra 46a960f6d5 bump and constraint 2024-11-19 12:33:23 +00:00
David Soria Parra 654480f675 bump 2024-11-19 12:26:43 +00:00
David Soria Parra fb0cffe268 Merge branch 'main' into davidsp/anyio 2024-11-18 18:13:23 +00:00
David Soria Parra 1df0df1028 Restrict anyio to 4.6 and above
We are using features from 4.6 so we want to make sure we use
a recednt one
2024-11-18 17:12:29 +00:00
David Soria Parra 9c79527917 bump 2024-11-18 17:09:48 +00:00
David Soria Parra 8668a04211 v0.8.0 2024-11-13 14:44:48 +00:00
David Soria Parra 10881fb19b Example server to expose a fetch tool and a fetch prompt 2024-11-12 13:53:36 +00:00
David Soria Parra 5506abd153 bump 2024-11-11 21:11:42 +00:00
David Soria Parra b47924f42d update pyproject toml 2024-11-11 15:40:11 +00:00
David Soria Parra ed87ae9f06 rename mcp_python to mcp 2024-11-11 12:40:32 +00:00
David Soria Parra 34ffcf4e43 bump version 2024-11-10 23:53:55 +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 1e8cf6ba58 bump version 2024-10-21 16:12:42 +01:00
David Soria Parra 14c2ce16fe bump version 2024-10-14 17:48:55 +01:00
David Soria Parra 211b5f069a github: add workflows to check formatting and typecheck 2024-10-11 16:17:04 +01:00
David Soria Parra cc342a05ad Allow passing initialization options to a session
We need a way for servers to pass initialization options to the session.
This is the beginning of this.
2024-10-11 16:06:54 +01:00
David Soria Parra 34937b72f2 pyproject: Remove strict typing for now
We currently have 21 non strict typing issues and 112 strict typing
issues. Most of the strict ones come from generic handling.

This is the initial step to tackle the non strict errors by
ignoring strict errors and adding github actions to check for type
errors. Once this is place we move back to using strict types.
2024-10-11 12:09:30 +01:00
David Soria Parra a05e66b4ab pyproject: Update ruff config to new layout 2024-10-11 12:09:29 +01:00
David Soria Parra b95794b5a5 pyproject: Add venv to pyproject
pyright and Zed use the venv setting in pyright to correctly determine
the virtual env to use.
2024-10-11 10:53:51 +01:00
David Soria Parra c610b6d76d bump version for next release 2024-10-11 01:20:46 +01:00
Justin Spahr-Summers 8f4359e4d2 Bump version 2024-10-03 10:48:01 +00:00
Justin Spahr-Summers a684ef1ccc Require Python 3.10 2024-10-02 21:54:55 +01:00
Kenneth Lien 4f0abd197c Add header support for sse_client 2024-09-30 12:46:18 -07:00
David Soria Parra 4cbf815430 Initial import 2024-09-24 22:04:19 +01:00