Developer Tools MCP Server
README.md
# Developer Tools MCP Server
An MCP (Model Context Protocol) server that provides developer-focused tools for searching packages, repositories, and coding Q&A — all using public APIs with no API keys required.
## Tools
### 1. `search_pypi`
Search PyPI for a Python package and get its name, description, latest version, and pip install command.
**Parameters:**
- `package_name` (str): The name of the package to search for (e.g. `"requests"`)
**Example response:**
```json
{
"name": "requests",
"description": "Python HTTP for Humans.",
"latest_version": "2.31.0",
"pip_install": "pip install requests"
}
```
### 2. `get_github_repo`
Fetch public info about a GitHub repository including stars, description, language, and last updated date.
**Parameters:**
- `owner` (str): The repository owner (e.g. `"pallets"`)
- `repo` (str): The repository name (e.g. `"flask"`)
**Example response:**
```json
{
"full_name": "pallets/flask",
"description": "The Python micro framework for building web applications.",
"stars": 65000,
"language": "Python",
"last_updated": "2024-01-15T10:30:00Z",
"open_issues": 5,
"forks": 15000,
"url": "https://github.com/pallets/flask"
}
```
### 3. `search_stackoverflow`
Search Stack Overflow for coding questions and return the top 3 results with titles, links, and scores.
**Parameters:**
- `query` (str): The search query (e.g. `"python async await"`)
**Example response:**
```json
{
"query": "python async await",
"result_count": 3,
"results": [
{
"title": "How to use async/await in Python?",
"link": "https://stackoverflow.com/questions/...",
"score": 150,
"answer_count": 5,
"is_answered": true
}
]
}
```
### 4. `check_package_compatibility`
Check if a Python package supports a specific Python version using PyPI classifier metadata.
**Parameters:**
- `package_name` (str): The package name (e.g. `"requests"`)
- `python_version` (str): The Python version to check (e.g. `"3.12"`)
**Example response:**
```json
{
"package": "requests",
"latest_version": "2.31.0",
"python_version_checked": "3.12",
"is_compatible": true,
"supported_python_versions": ["3", "3.8", "3.9", "3.10", "3.11", "3.12"],
"requires_python": ">=3.8",
"compatibility_source": "classifiers"
}
```
## Setup
```bash
# Install dependencies
pip install -r requirements.txt
# Run the server directly
python mcp_server.py
# Run tests
pytest test_server.py -v
```
## Connect to Claude Desktop
Add the following to your Claude Desktop configuration file:
- **macOS:** `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows:** `%APPDATA%\Claude\claude_desktop_config.json`
```json
{
"mcpServers": {
"developer-tools": {
"command": "python",
"args": ["/absolute/path/to/mcp_server.py"]
}
}
}
```
Replace `/absolute/path/to/mcp_server.py` with the actual absolute path to the file.
After saving, restart Claude Desktop. The four tools will appear in the tools menu (hammer icon).
## Connect to Claude Code
Add to your Claude Code settings (`.claude/settings.json` or project-level):
```json
{
"mcpServers": {
"developer-tools": {
"command": "python",
"args": ["/absolute/path/to/mcp_server.py"]
}
}
}
```
Or use the CLI:
```bash
claude mcp add developer-tools python /absolute/path/to/mcp_server.py
```
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues