
repology-mcp-server
io.github.tschoonj/repology-mcp-server
MCP server that provides access to Repology package repository data
Documentation
Repology MCP Server
A Model Context Protocol (MCP) server that provides access to the Repology package repository data through a standardized interface.
Features
This MCP server exposes the following tools:
- search_projects: Search for projects by name
- get_project: Get detailed information about a specific project
- list_projects: List projects with optional filtering
- get_repository_problems: Get problems reported for repositories
- get_maintainer_problems: Get problems reported for specific maintainers
Installation
Using uv (recommended)
# Install dependencies
uv sync
# Install in development mode
uv pip install -e .
Using pip
pip install -e .
Usage
As a standalone server
# Run with stdio transport (for Claude Desktop, etc.)
repology-mcp-server
# Run with HTTP transport
repology-mcp-server --transport http --port 8000
With Claude Desktop
Add to your Claude Desktop configuration:
{
"mcpServers": {
"repology": {
"command": "uv",
"args": ["run", "repology-mcp-server"]
}
}
}
Or using the pre-built Docker image:
{
"mcpServers": {
"repology": {
"command": "docker",
"args": ["run", "-i", "--rm", "ghcr.io/tschoonj/repology-mcp-server:latest"]
}
}
}
With VS Code
Add to your VS Code settings (.vscode/settings.json
or user settings):
{
"mcp.servers": {
"repology": {
"command": "uv",
"args": ["run", "repology-mcp-server"]
}
}
}
Or using the pre-built Docker image:
{
"mcp.servers": {
"repology": {
"command": "docker",
"args": ["run", "-i", "--rm", "ghcr.io/tschoonj/repology-mcp-server:latest"]
}
}
}
As a development server
# Run in development mode with MCP inspector
uv run mcp dev src/repology_mcp/server.py
Using Docker
Pre-built images from GitHub Container Registry
# Pull the latest image
docker pull ghcr.io/tschoonj/repology-mcp-server:latest
# Run with stdio transport
docker run -i --rm ghcr.io/tschoonj/repology-mcp-server:latest
# Run with HTTP transport on port 8000
docker run --rm -p 8000:8000 ghcr.io/tschoonj/repology-mcp-server:latest --transport http --port 8000
# Use a specific version
docker pull ghcr.io/tschoonj/repology-mcp-server:1.0.0
docker run -i --rm ghcr.io/tschoonj/repology-mcp-server:1.0.0
Local development with Docker
# Build the Docker image locally
docker build -t repology-mcp-server .
# Run with stdio transport
docker run -i --rm repology-mcp-server
# Run with HTTP transport on port 8000
docker run --rm -p 8000:8000 repology-mcp-server --transport http --port 8000
Development
Setup
# Clone the repository
git clone <repository-url>
cd repology-mcp-server
# Install development dependencies
uv sync --extra dev
Running tests
# Run all tests
uv run pytest
# Run with coverage
uv run pytest --cov=repology_mcp --cov-report=html
# Run specific test file
uv run pytest tests/test_client.py -v
Code formatting
# Format code
uv run black src tests
uv run isort src tests
# Type checking
uv run mypy src
API Reference
Tools
search_projects
Search for projects by name substring.
Parameters:
query
(string): Search term to match against project nameslimit
(integer, optional): Maximum number of results (default: 10, max: 100)
get_project
Get detailed package information for a specific project.
Parameters:
project_name
(string): Exact name of the project to retrieve
list_projects
List projects with optional filtering.
Parameters:
start_from
(string, optional): Project name to start listing fromlimit
(integer, optional): Maximum number of results (default: 10, max: 200)maintainer
(string, optional): Filter by maintainer emailcategory
(string, optional): Filter by categoryinrepo
(string, optional): Filter by repository presencenotinrepo
(string, optional): Filter by repository absence
get_repository_problems
Get problems reported for a specific repository.
Parameters:
repository
(string): Repository name (e.g., "freebsd", "debian")start_from
(string, optional): Project name to start from for pagination
get_maintainer_problems
Get problems reported for packages maintained by a specific person.
Parameters:
maintainer
(string): Maintainer email addressrepository
(string, optional): Limit to specific repositorystart_from
(string, optional): Project name to start from for pagination
License
MIT License - see LICENSE file for details.
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests for new functionality
- Run the test suite
- Submit a pull request
repology-mcp-server
pip install repology-mcp-server
ghcr.io/tschoonj/repology-mcp-server:0.1.1
docker pull ghcr.io/tschoonj/repology-mcp-server:0.1.1:undefined
Related Servers
ai.smithery/Hint-Services-obsidian-github-mcp
Connect AI assistants to your GitHub-hosted Obsidian vault to seamlessly access, search, and analy…
ai.smithery/anirbanbasu-pymcp
Primarily to be used as a template repository for developing MCP servers with FastMCP in Python, P…
ai.smithery/neverinfamous-memory-journal-mcp
A MCP server built for developers enabling Git based project management with project and personal…