Repology Mcp Server

io.github.tschoonjPublished by GitHub account tschoonjv0.1.1Updated Oct 24, 2026

MCP server that provides access to Repology package repository data

VerifiedSTDIODesktop onlyDeveloper ToolsData & Analytics

Overview

AI-generated overview

Lets an assistant query Repology package repository data, including project details, repository listings, and reported packaging problems.

What you can do
Exposes five read-only tools over the Repology package data: search_projects searches project names by substring, get_project returns detailed package information for one project, and list_projects lists projects with filters such as maintainer, category, and repository presence or absence. Two further tools, get_repository_problems and get_maintainer_problems, report packaging problems for a repository or for a maintainer's packages.
When to use it
Useful when an assistant needs to check which repositories carry a package, compare versions across distributions, or look up packaging problems and maintainer issues. It suits packaging, distribution, and dependency research rather than general web search.
Requirements
Runs locally over stdio. Install the PyPI package repology-mcp-server (for example with uv or pip) or run the published container image. No accounts, API keys, or environment variables are declared; network access to Repology is implied by the data it serves.
Before you install
The tools are read-only and no credentials are requested, so the main considerations are network access to Repology and the accuracy or freshness of third-party package data. Maintainer filters take email addresses, which are sent to the upstream service.

Installation

In SourceWeft

  1. Open Repology Mcp Server in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

Repology MCP Server

[CI] [Docker] [Docker Image] [PyPI] [License: MIT]

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)

bash
# Install dependenciesuv sync
# Install in development modeuv pip install -e .

Using pip

bash
pip install -e .

Usage

As a standalone server

bash
# Run with stdio transport (for Claude Desktop, etc.)repology-mcp-server
# Run with HTTP transportrepology-mcp-server --transport http --port 8000

With Claude Desktop

Add to your Claude Desktop configuration:

json
{  "mcpServers": {    "repology": {      "command": "uv",      "args": ["run", "repology-mcp-server"]    }  }}

Or using the pre-built Docker image:

json
{  "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):

json
{  "mcp.servers": {    "repology": {      "command": "uv",      "args": ["run", "repology-mcp-server"]    }  }}

Or using the pre-built Docker image:

json
{  "mcp.servers": {    "repology": {      "command": "docker",      "args": ["run", "-i", "--rm", "ghcr.io/tschoonj/repology-mcp-server:latest"]    }  }}

As a development server

bash
# Run in development mode with MCP inspectoruv run mcp dev src/repology_mcp/server.py

Using Docker

Pre-built images from GitHub Container Registry
bash
# Pull the latest imagedocker pull ghcr.io/tschoonj/repology-mcp-server:latest
# Run with stdio transportdocker run -i --rm ghcr.io/tschoonj/repology-mcp-server:latest
# Run with HTTP transport on port 8000docker run --rm -p 8000:8000 ghcr.io/tschoonj/repology-mcp-server:latest --transport http --port 8000
# Use a specific versiondocker pull ghcr.io/tschoonj/repology-mcp-server:1.0.0docker run -i --rm ghcr.io/tschoonj/repology-mcp-server:1.0.0
Local development with Docker
bash
# Build the Docker image locallydocker build -t repology-mcp-server .
# Run with stdio transportdocker run -i --rm repology-mcp-server
# Run with HTTP transport on port 8000docker run --rm -p 8000:8000 repology-mcp-server --transport http --port 8000

Development

Setup

bash
# Clone the repositorygit clone <repository-url>cd repology-mcp-server
# Install development dependenciesuv sync --extra dev

Running tests

bash
# Run all testsuv run pytest
# Run with coverageuv run pytest --cov=repology_mcp --cov-report=html
# Run specific test fileuv run pytest tests/test_client.py -v

Code formatting

bash
# Format codeuv run black src testsuv run isort src tests
# Type checkinguv run mypy src

API Reference

Tools

search_projects

Search for projects by name substring.

Parameters:

  • query (string): Search term to match against project names
  • limit (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 from
  • limit (integer, optional): Maximum number of results (default: 10, max: 200)
  • maintainer (string, optional): Filter by maintainer email
  • category (string, optional): Filter by category
  • inrepo (string, optional): Filter by repository presence
  • notinrepo (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 address
  • repository (string, optional): Limit to specific repository
  • start_from (string, optional): Project name to start from for pagination

License

MIT License - see LICENSE file for details.

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests for new functionality
  5. Run the test suite
  6. Submit a pull request

Source: README.md at commit f8b0700

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.1LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts