The Python SDK is available on PyPI as mcp so installation is as simple as:
=== "pip"
```bash
pip install mcp
```
=== "uv"
```bash
uv add mcp
```
The following dependencies are automatically installed:
httpx: HTTP client to handle HTTP Streamable and SSE transports.httpx-sse: HTTP client to handle SSE transport.pydantic: Types, JSON schema generation, data validation, and more.starlette: Web framework used to build the HTTP transport endpoints.python-multipart: Handle HTTP body parsing.sse-starlette: Server-Sent Events for Starlette, used to build the SSE transport endpoint.pydantic-settings: Settings management used in MCPServer.uvicorn: ASGI server used to run the HTTP transport endpoints.jsonschema: JSON schema validation.
This package has the following optional groups:
cli: Installstyperandpython-dotenvfor the MCP CLI tools.stdio: Installspywin32on Windows for Job Object based subprocess cleanup inmcp.client.stdio.
Server-only Windows installs can use the base mcp package (or mcp[cli]) without pulling in pywin32. Add the stdio extra only if you want the additional Windows stdio cleanup integration.