|
1 | | -# python-dep-manager-companion-mcp-server |
2 | | -A local Model Context Protocol (MCP) server that unifies the latest documentation for all Python dependency managers, making it instantly searchable from your agentic IDE. |
| 1 | +# Python Dependency Manager MCP Server |
| 2 | + |
| 3 | +> Updated on 2025-07-15 by @KemingHe |
| 4 | +
|
| 5 | +Local MCP server providing unified search across Python dependency manager documentation. |
| 6 | + |
| 7 | +## 📋 Overview |
| 8 | + |
| 9 | +Unified search for pip, poetry, uv, and conda docs via Docker with weekly auto-updates. Built with FastMCP and Tantivy. |
| 10 | + |
| 11 | +## 🚀 Getting Started |
| 12 | + |
| 13 | +### Step 1: Pull Docker Image |
| 14 | + |
| 15 | +```shell |
| 16 | +docker pull keminghe/py-dep-man-companion:latest |
| 17 | +``` |
| 18 | + |
| 19 | +### Step 2: Configure Your IDE |
| 20 | + |
| 21 | +Add to VSCode User Settings (JSON): |
| 22 | + |
| 23 | +```json |
| 24 | +{ |
| 25 | + "mcp": { |
| 26 | + "servers": { |
| 27 | + "python-deps": { |
| 28 | + "command": "docker", |
| 29 | + "args": ["run", "-i", "--rm", "keminghe/py-dep-man-companion:latest"] |
| 30 | + } |
| 31 | + } |
| 32 | + } |
| 33 | +} |
| 34 | +``` |
| 35 | + |
| 36 | +### Step 3: Start Searching |
| 37 | + |
| 38 | +Query latest and unified documentation across all supported Python dependency managers directly from your AI assistant. |
| 39 | + |
| 40 | +## 📁 Project Structure |
| 41 | + |
| 42 | +```plaintext |
| 43 | +python-dep-manager-companion-mcp-server/ |
| 44 | +├── .github/workflows/ |
| 45 | +│ ├── auto-update.yml # Orchestrator: Tuesday 6pm ET |
| 46 | +│ └── auto-update-docs.yml # Modular: Doc fetching workflow |
| 47 | +├── docs/ # Project documentation |
| 48 | +├── src/ |
| 49 | +│ ├── server.py # FastMCP server implementation |
| 50 | +│ ├── index.py # Tantivy search engine |
| 51 | +│ └── assets/ # Local documentation files |
| 52 | +│ ├── pip/ # Pip documentation .md files |
| 53 | +│ ├── poetry/ # Poetry documentation .md files |
| 54 | +│ ├── uv/ # UV documentation .md files |
| 55 | +│ └── conda/ # Conda documentation .md files |
| 56 | +├── Dockerfile # Container build configuration |
| 57 | +└── pyproject.toml # Project dependencies and metadata |
| 58 | +``` |
| 59 | + |
| 60 | +## 🛠️ Development |
| 61 | + |
| 62 | +**Transport Support**: Stdio (default) and HTTP modes following MCP standards. |
| 63 | + |
| 64 | +**Environment Variables**: |
| 65 | + |
| 66 | +- `TRANSPORT_MODE`: `stdio` or `http` (default: `stdio`) |
| 67 | +- `TRANSPORT_PORT`: HTTP server port (default: `8080`) |
| 68 | +- `TRANSPORT_HOST`: Host binding (default: `127.0.0.1`) |
| 69 | + |
| 70 | +**Local Development**: |
| 71 | + |
| 72 | +```shell |
| 73 | +# Clone and setup |
| 74 | +git clone <repo-url> |
| 75 | +cd python-dep-manager-companion-mcp-server |
| 76 | +uv sync |
| 77 | + |
| 78 | +# Run server |
| 79 | +uv run python src/server.py stdio |
| 80 | +``` |
| 81 | + |
| 82 | +**Roadmap**: Adding support for pipenv, pdm, pixi, and additional Python package managers. |
| 83 | + |
| 84 | +## 📄 License |
| 85 | + |
| 86 | +This project is licensed under the [MIT License](./LICENSE) - a permissive license that allows free use, modification, and distribution with attribution. |
| 87 | + |
| 88 | +## 📞 Support |
| 89 | + |
| 90 | +Open GitHub issues for bug reports and feature requests. Weekly documentation updates run automatically every Tuesday at 6pm ET with signed commits by `github-actions[bot]`. |
0 commit comments