|
2 | 2 |
|
3 | 3 | A Python utility package for building Model Context Protocol (MCP) servers. |
4 | 4 |
|
| 5 | +## Table of Contents |
| 6 | + |
| 7 | +- [mcp-utils](#mcp-utils) |
| 8 | + - [Table of Contents](#table-of-contents) |
| 9 | + - [Overview](#overview) |
| 10 | + - [Key Features](#key-features) |
| 11 | + - [Installation](#installation) |
| 12 | + - [Requirements](#requirements) |
| 13 | + - [Optional Dependencies](#optional-dependencies) |
| 14 | + - [Usage](#usage) |
| 15 | + - [Basic MCP Server](#basic-mcp-server) |
| 16 | + - [Flask with Redis Example](#flask-with-redis-example) |
| 17 | + - [Connecting with MCP Clients](#connecting-with-mcp-clients) |
| 18 | + - [Claude Desktop](#claude-desktop) |
| 19 | + - [Installing via Smithery](#installing-via-smithery) |
| 20 | + - [Installing via PyPI](#installing-via-pypi) |
| 21 | + - [Contributing](#contributing) |
| 22 | + - [Related Projects](#related-projects) |
| 23 | + - [License](#license) |
| 24 | + |
5 | 25 | ## Overview |
6 | 26 |
|
7 | 27 | `mcp-utils` provides utilities and helpers for building MCP-compliant servers in Python, with a focus on synchronous implementations using Flask. This package is designed for developers who want to implement MCP servers in their existing Python applications without the complexity of asynchronous code. |
@@ -108,14 +128,56 @@ if __name__ == "__main__": |
108 | 128 |
|
109 | 129 | For a more comprehensive example including logging setup and session management, check out the [example Flask application](https://github.com/fulfilio/mcp-utils/blob/main/examples/flask_app.py) in the repository. |
110 | 130 |
|
111 | | -## Contributing |
| 131 | +## Connecting with MCP Clients |
112 | 132 |
|
113 | | -Contributions are welcome! Please feel free to submit a Pull Request. |
| 133 | +### Claude Desktop |
114 | 134 |
|
115 | | -## License |
| 135 | +Currently, only Claude Desktop (not claude.ai) can connect to MCP servers. As of this writing, Claude Desktop does not support MCP through SSE and only supports stdio. To connect Claude Desktop with an MCP server, you'll need to use [mcp-proxy](https://github.com/sparfenyuk/mcp-proxy). |
116 | 136 |
|
117 | | -MIT License |
| 137 | +Configuration example for Claude Desktop: |
| 138 | + |
| 139 | +```json |
| 140 | +{ |
| 141 | + "mcpServers": { |
| 142 | + "fulfil": { |
| 143 | + "command": "/Users/yourname/.local/bin/mcp-proxy", |
| 144 | + "args": ["http://127.0.0.1:9000/sse"] |
| 145 | + } |
| 146 | + } |
| 147 | +} |
| 148 | +``` |
| 149 | + |
| 150 | +#### Installing via Smithery |
| 151 | + |
| 152 | +To install MCP Proxy for Claude Desktop automatically via [Smithery](https://smithery.ai/server/mcp-proxy): |
| 153 | + |
| 154 | +```bash |
| 155 | +npx -y @smithery/cli install mcp-proxy --client claude |
| 156 | +``` |
| 157 | + |
| 158 | +#### Installing via PyPI |
| 159 | + |
| 160 | +The stable version of the package is available on the PyPI repository. You can install it using the following command: |
| 161 | + |
| 162 | +```bash |
| 163 | +# Option 1: With uv (recommended) |
| 164 | +uv tool install mcp-proxy |
| 165 | + |
| 166 | +# Option 2: With pipx (alternative) |
| 167 | +pipx install mcp-proxy |
| 168 | +``` |
| 169 | + |
| 170 | +Once installed, you can run the server using the `mcp-proxy` command. |
| 171 | + |
| 172 | +## Contributing |
| 173 | + |
| 174 | +Contributions are welcome! Please feel free to submit a Pull Request. |
118 | 175 |
|
119 | 176 | ## Related Projects |
120 | 177 |
|
121 | 178 | - [MCP Python SDK](https://github.com/modelcontextprotocol/python-sdk) - The official async Python SDK for MCP |
| 179 | +- [mcp-proxy](https://github.com/sparfenyuk/mcp-proxy) - A proxy tool to connect Claude Desktop with MCP servers |
| 180 | + |
| 181 | +## License |
| 182 | + |
| 183 | +MIT License |
0 commit comments