About Codeforces MCP Server
Codeforces MCP Server is an MCP server for searching problems and retrieving public metadata through the official Codeforces API. It is intended for problem lookup and metadata checks, and exposes read-only operations without requiring API keys or judge credentials.
Key features
- 01Search by title, ID, rating, or tag
- 02Fetch official metadata by problem ID
- 03Check service health and latest API observation
- 04List available read operations and transport
Use cases
- 01Find problems matching tags and difficulty criteria
- 02Check public metadata for a problem ID
MCP support
It provides MCP clients with problem search, metadata lookup, health-check, and capability-reporting tools. Connect through its hosted HTTP endpoint or run locally over stdio.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://codeforces-oj-mcp.lantangtang54.workers.dev/mcpclaude mcp add --transport http ketherworks-codeforces https://codeforces-oj-mcp.lantangtang54.workers.dev/mcp{"mcpServers":{"ketherworks-codeforces":{"type":"http","url":"https://codeforces-oj-mcp.lantangtang54.workers.dev/mcp"}}}Open in Cursor{"servers":{"ketherworks-codeforces":{"type":"http","url":"https://codeforces-oj-mcp.lantangtang54.workers.dev/mcp"}}}Open in VS Code{"mcpServers":{"ketherworks-codeforces":{"type":"http","url":"https://codeforces-oj-mcp.lantangtang54.workers.dev/mcp"}}}{"mcpServers":{"ketherworks-codeforces":{"serverUrl":"https://codeforces-oj-mcp.lantangtang54.workers.dev/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
Details
From the project READMECodeforces MCP Server
Search official Codeforces problem metadata through a small MCP server.
Quick Start
Add the hosted server to your MCP configuration:
{
"servers": {
"codeforces": {
"type": "http",
"url": "https://codeforces-mcp.ksrnyx.top/mcp"
}
}
}
The endpoint accepts anonymous read requests. It does not need an API key, Cookie, or judge account.
Then ask:
Find five beginner Codeforces problems tagged implementation.
What It Can Do
| Tool | Purpose |
|---|---|
oj_capabilities | Report the available Codeforces read operations and transport. |
oj_health | Report service health and the latest official API observation. |
oj_search_problems | Search the official problemset by title, id, rating, or tag. |
codeforces_get_problem_metadata | Fetch official metadata by id, such as 158/A, 158A, or 158-A. |
Run Locally
Requires Node.js 22 or newer.
npm ci
npm run check
npm run build
node packages/codeforces/dist/index.js
MCP client configuration from a source checkout:
{
"servers": {
"codeforces": {
"type": "stdio",
"command": "node",
"args": ["/absolute/path/packages/codeforces/dist/index.js"]
}
}
}
Tagged GitHub releases attach a standalone npm tarball.
Availability
- Hosted MCP:
https://codeforces-mcp.ksrnyx.top/mcp - Official MCP Registry:
io.github.ketherworks/codeforces, described byserver.json - Health status: see the repository homepage or call
oj_health
Source and Safety
This standalone release is generated from the reviewed Competitive Programming MCP source. The release package bundles the shared OJ contract implementation, so its runtime does not depend on unpublished workspace packages.
Platform Rules
This project is unofficial and is not affiliated with or endorsed by Codeforces.
The server exposes no run or submit tool. It accepts no judge account credentials. See SECURITY.md for the security boundary and PROVENANCE.md for the canonical source revision.
Development
npm ci
npm run check
npm run pack:check
npm run deploy:dry
License
Adapter source code is MIT licensed. Judge problem content and trademarks are not relicensed by this repository.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.