mcpField
R
repology-mcp-server

repology-mcp-server

本地服务
github.com/tschoonj开发工具057 周前更新

关于 repology-mcp-server

repology-mcp-server 将 MCP 客户端连接到 Repology 软件包仓库数据,提供项目搜索、详情查询、筛选列表,以及查看仓库或维护者报告问题的工具。

主要功能

  1. 01按名称搜索项目
  2. 02获取项目详细信息
  3. 03列出并筛选项目
  4. 04查看仓库报告的问题
  5. 05查看维护者软件包问题

适用场景

  1. 01查询仓库数据中的软件包项目
  2. 02按维护者或仓库存在情况筛选项目
  3. 03调查仓库或维护者报告的问题

MCP 相关

该 MCP 服务向 MCP 客户端提供 Repology 项目搜索、查询和列表工具,以及仓库或维护者问题报告工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"tschoonj-repology": {
"command": "uvx",
"args": [
"repology-mcp-server"
]
}
}
}
启动命令uvx repology-mcp-server

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypirepology-mcp-server0.1.1
ocighcr.io/tschoonj/repology-mcp-server:0.1.1

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Repology MCP 服务

CI Docker Docker Image PyPI License: MIT

一个模型上下文协议(MCP)服务,通过标准化接口提供对 Repology 软件包仓库数据的访问。

功能

此 MCP 服务提供以下工具:

  • search_projects:按名称搜索项目
  • get_project:获取特定项目的详细信息
  • list_projects:列出项目,可选择筛选条件
  • get_repository_problems:获取仓库报告的问题
  • get_maintainer_problems:获取特定维护者报告的问题

安装

使用 uv(推荐)
# Install dependencies
uv sync

# Install in development mode
uv pip install -e .
使用 pip
pip install -e .

使用方法

作为独立服务运行
# Run with stdio transport (for Claude Desktop, etc.)
repology-mcp-server

# Run with HTTP transport
repology-mcp-server --transport http --port 8000
与 Claude Desktop 搭配使用

将以下内容添加到 Claude Desktop 配置中:

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

也可以使用预构建的 Docker 镜像:

{
  "mcpServers": {
    "repology": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "ghcr.io/tschoonj/repology-mcp-server:latest"]
    }
  }
}
与 VS Code 搭配使用

将以下内容添加到 VS Code 设置(.vscode/settings.json 或用户设置)中:

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

也可以使用预构建的 Docker 镜像:

{
  "mcp.servers": {
    "repology": {
      "command": "docker",
      "args": ["run", "-i", "--rm", "ghcr.io/tschoonj/repology-mcp-server:latest"]
    }
  }
}
作为开发服务运行
# Run in development mode with MCP inspector
uv run mcp dev src/repology_mcp/server.py
使用 Docker
使用 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
使用 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

开发

设置
# Clone the repository
git clone <repository-url>
cd repology-mcp-server

# Install development dependencies
uv sync --extra dev
运行测试
# 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
代码格式化
# Format code
uv run black src tests
uv run isort src tests

# Type checking
uv run mypy src

API 参考

工具
search_projects

按项目名称子字符串搜索项目。

参数:

  • query(字符串):用于匹配项目名称的搜索词
  • limit(整数,可选):最大结果数(默认值:10,最大值:100)
get_project

获取特定项目的软件包详细信息。

参数:

  • project_name(字符串):要获取的项目的确切名称
list_projects

列出项目,可选择筛选条件。

参数:

  • start_from(字符串,可选):开始列出项目时所依据的项目名称
  • limit(整数,可选):最大结果数(默认值:10,最大值:200)
  • maintainer(字符串,可选):按维护者邮箱筛选
  • category(字符串,可选):按类别筛选
  • inrepo(字符串,可选):按是否存在于仓库中筛选
  • notinrepo(字符串,可选):按是否不存在于仓库中筛选
get_repository_problems

获取特定仓库报告的问题。

参数:

  • repository(字符串):仓库名称(例如,“freebsd”、“debian”)
  • start_from(字符串,可选):用于分页的起始项目名称
get_maintainer_problems

获取特定人员维护的软件包所报告的问题。

参数:

  • maintainer(字符串):维护者的电子邮箱地址
  • repository(字符串,可选):仅限特定仓库
  • start_from(字符串,可选):用于分页的起始项目名称

许可证

MIT 许可证——详情请参阅 LICENSE 文件。

参与贡献

  1. Fork 此仓库
  2. 创建功能分支
  3. 进行修改
  4. 为新功能添加测试
  5. 运行测试套件
  6. 提交拉取请求

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。