{
  "markdown": "# Repology MCP Server\n\n<!-- mcp-name: io.github.tschoonj/repology-mcp-server -->\n\n[![CI](https://github.com/tschoonj/repology-mcp-server/actions/workflows/ci.yml/badge.svg)](https://github.com/tschoonj/repology-mcp-server/actions/workflows/ci.yml)\n[![Docker](https://github.com/tschoonj/repology-mcp-server/actions/workflows/docker.yml/badge.svg)](https://github.com/tschoonj/repology-mcp-server/actions/workflows/docker.yml)\n[![Docker Image](https://img.shields.io/badge/docker-ghcr.io%2Ftschoonj%2Frepology--mcp--server-blue)](https://github.com/tschoonj/repology-mcp-server/pkgs/container/repology-mcp-server)\n[![PyPI](https://img.shields.io/pypi/v/repology-mcp-server)](https://pypi.org/project/repology-mcp-server/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\nA Model Context Protocol (MCP) server that provides access to the [Repology](https://repology.org) package repository data through a standardized interface.\n\n## Features\n\nThis MCP server exposes the following tools:\n\n- **search_projects**: Search for projects by name\n- **get_project**: Get detailed information about a specific project\n- **list_projects**: List projects with optional filtering\n- **get_repository_problems**: Get problems reported for repositories\n- **get_maintainer_problems**: Get problems reported for specific maintainers\n\n## Installation\n\n### Using uv (recommended)\n\n```bash\n# Install dependencies\nuv sync\n\n# Install in development mode\nuv pip install -e .\n```\n\n### Using pip\n\n```bash\npip install -e .\n```\n\n## Usage\n\n### As a standalone server\n\n```bash\n# Run with stdio transport (for Claude Desktop, etc.)\nrepology-mcp-server\n\n# Run with HTTP transport\nrepology-mcp-server --transport http --port 8000\n```\n\n### With Claude Desktop\n\nAdd to your Claude Desktop configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"repology\": {\n      \"command\": \"uv\",\n      \"args\": [\"run\", \"repology-mcp-server\"]\n    }\n  }\n}\n```\n\nOr using the pre-built Docker image:\n\n```json\n{\n  \"mcpServers\": {\n    \"repology\": {\n      \"command\": \"docker\",\n      \"args\": [\"run\", \"-i\", \"--rm\", \"ghcr.io/tschoonj/repology-mcp-server:latest\"]\n    }\n  }\n}\n```\n\n### With VS Code\n\nAdd to your VS Code settings (`.vscode/settings.json` or user settings):\n\n```json\n{\n  \"mcp.servers\": {\n    \"repology\": {\n      \"command\": \"uv\",\n      \"args\": [\"run\", \"repology-mcp-server\"]\n    }\n  }\n}\n```\n\nOr using the pre-built Docker image:\n\n```json\n{\n  \"mcp.servers\": {\n    \"repology\": {\n      \"command\": \"docker\",\n      \"args\": [\"run\", \"-i\", \"--rm\", \"ghcr.io/tschoonj/repology-mcp-server:latest\"]\n    }\n  }\n}\n```\n\n### As a development server\n\n```bash\n# Run in development mode with MCP inspector\nuv run mcp dev src/repology_mcp/server.py\n```\n\n### Using Docker\n\n#### Pre-built images from GitHub Container Registry\n\n```bash\n# Pull the latest image\ndocker pull ghcr.io/tschoonj/repology-mcp-server:latest\n\n# Run with stdio transport\ndocker run -i --rm ghcr.io/tschoonj/repology-mcp-server:latest\n\n# Run with HTTP transport on port 8000\ndocker run --rm -p 8000:8000 ghcr.io/tschoonj/repology-mcp-server:latest --transport http --port 8000\n\n# Use a specific version\ndocker pull ghcr.io/tschoonj/repology-mcp-server:1.0.0\ndocker run -i --rm ghcr.io/tschoonj/repology-mcp-server:1.0.0\n```\n\n#### Local development with Docker\n\n```bash\n# Build the Docker image locally\ndocker build -t repology-mcp-server .\n\n# Run with stdio transport\ndocker run -i --rm repology-mcp-server\n\n# Run with HTTP transport on port 8000\ndocker run --rm -p 8000:8000 repology-mcp-server --transport http --port 8000\n```\n\n## Development\n\n### Setup\n\n```bash\n# Clone the repository\ngit clone <repository-url>\ncd repology-mcp-server\n\n# Install development dependencies\nuv sync --extra dev\n```\n\n### Running tests\n\n```bash\n# Run all tests\nuv run pytest\n\n# Run with coverage\nuv run pytest --cov=repology_mcp --cov-report=html\n\n# Run specific test file\nuv run pytest tests/test_client.py -v\n```\n\n### Code formatting\n\n```bash\n# Format code\nuv run black src tests\nuv run isort src tests\n\n# Type checking\nuv run mypy src\n```\n\n## API Reference\n\n### Tools\n\n#### search_projects\nSearch for projects by name substring.\n\n**Parameters:**\n- `query` (string): Search term to match against project names\n- `limit` (integer, optional): Maximum number of results (default: 10, max: 100)\n\n#### get_project\nGet detailed package information for a specific project.\n\n**Parameters:**\n- `project_name` (string): Exact name of the project to retrieve\n\n#### list_projects  \nList projects with optional filtering.\n\n**Parameters:**\n- `start_from` (string, optional): Project name to start listing from\n- `limit` (integer, optional): Maximum number of results (default: 10, max: 200)\n- `maintainer` (string, optional): Filter by maintainer email\n- `category` (string, optional): Filter by category\n- `inrepo` (string, optional): Filter by repository presence\n- `notinrepo` (string, optional): Filter by repository absence\n\n#### get_repository_problems\nGet problems reported for a specific repository.\n\n**Parameters:**\n- `repository` (string): Repository name (e.g., \"freebsd\", \"debian\")\n- `start_from` (string, optional): Project name to start from for pagination\n\n#### get_maintainer_problems  \nGet problems reported for packages maintained by a specific person.\n\n**Parameters:**\n- `maintainer` (string): Maintainer email address\n- `repository` (string, optional): Limit to specific repository\n- `start_from` (string, optional): Project name to start from for pagination\n\n## License\n\nMIT License - see LICENSE file for details.\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests for new functionality\n5. Run the test suite\n6. Submit a pull request",
  "bytes": 5727,
  "sha": "7f77c9cf0510ae596d6d45b14d23f494152c2d6a88276c937fb291e2027b3089",
  "repo_slug": "tschoonj/repology-mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_tschoonj_repology_mcp_server_27ea71c5/readme"
}