Codeforces API访问服务

一个提供标准化MCP接口的服务器,用于无缝访问Codeforces API,包括比赛管理、用户信息、提交记录和评分数据等功能。

  • by Mohamed-hanfy
  • Python
  • 本地部署
  • 7 星标
  • 更新于
在 GitHub 查看 Mohamed-hanfy/codeforces-mcp

使用说明

Codeforces MCP服务器

一种模型上下文协议(MCP)服务器,提供对代码部队API的无缝访问。此服务器允许您通过标准化的MCP界面与Codeforce竞赛、用户数据、提交和评级进行交互。

特性

  • 竞赛管理:获取比赛列表、排名和评分更改
  • 用户信息:检索用户配置文件、评级历史和提交
  • 提交跟踪:访问最近提交的作品和特定于比赛的作品
  • 评级数据:获取用户评级更改和评级用户列表
  • 异步支持:内置async/await以获得最佳性能

可用工具

竞赛工具

  • get_contest_list -获取比赛列表(带有可选的健身房和团体过滤器)
  • get_contest_rating_changes -在特定比赛后获得评分更改
  • get_contest_standings -使用可定制的过滤器获取比赛排名
  • get_contest_status -获取特定比赛的参赛作品

用户工具

  • get_user_info -获取详细的用户信息
  • get_user_rating -获取用户的完整评分历史记录
  • get_user_submissions -获取用户的提交历史记录
  • get_rated_users -获取所有已评级用户的列表

通用工具

  • get_recent_submissions -获取整个平台的最新提交内容

项目结构

.
├── Dockerfile              # Docker container configuration 
├── LICENSE                 
├── README.md              
└── src/                   
    ├── codeforces_mcp.py  # Main MCP server implementation with Codeforces API integration.
    └── requirements.txt   # Python dependencies.

安装

Docker(推荐)

  1. 从Docker Hub中提取镜像:
docker pull mohamed2x/codeforces-mcp
  1. 运行容器:
docker run -i --rm mohamed2x/codeforces-mcp:latest

配置

默认情况下,服务器运行在stdio传输上,并连接到位于的官方Codeforces API https://codeforces.com/api.

依赖项

  • fastmcp -MCP服务器框架
  • httpx -异步HTTP客户端
  • urllib.parse -URL参数编码