Files
mcp-python-sdk/README.md
David Soria Parra 464cb02fdd Update READMEs
2024-11-19 12:37:10 +00:00

73 lines
1.9 KiB
Markdown

# MCP Python SDK
Python implementation of the Model Context Protocol (MCP), providing both client and server capabilities for integrating with LLM surfaces.
## Overview
The Model Context Protocol allows applications to provide context for LLMs in a standardized way, separating the concerns of providing context from the actual LLM interaction. This Python SDK implements the full MCP specification, making it easy to:
- Build MCP clients that can connect to any MCP server
- Create MCP servers that expose resources, prompts and tools
- Use standard transports like stdio and SSE
- Handle all MCP protocol messages and lifecycle events
## Installation
```bash
uv add mcp
```
## Quick Start
### Creating a Client
```python
from mcp import ClientSession
from mcp.client.stdio import stdio_client
async with stdio_client(command="path/to/server") as (read, write):
async with ClientSession(read, write) as session:
# Initialize the connection
await session.initialize()
# List available resources
resources = await session.list_resources()
```
### Creating a Server
```python
from mcp.server import Server
from mcp.server.stdio import stdio_server
# Create a server instance
server = Server("example-server")
# Add capabilities
@server.list_resources()
async def list_resources():
return [
{
"uri": "file:///example.txt",
"name": "Example Resource"
}
]
# Run the server
async with stdio_server() as (read, write):
await server.run(read, write, server.create_initialization_options())
```
## Documentation
- [MCP Specification](https://modelcontextprotocol.io)
- [Example Servers](https://github.com/modelcontextprotocol/servers)
## Contributing
Issues and pull requests are welcome on GitHub at https://github.com/modelcontextprotocol/python-sdk.
## License
This project is licensed under the MIT License - see the LICENSE file for details.