# codabench-mcp [Health: Active]

**Category:** 🧮 Data Science Tools  
**Repository:** https://github.com/harshitAgr/codabench-mcp  
**GitHub Stars:** 0  
**Views:** 2  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/codabench-mcp

## Description
MCP server for the Codabench REST API — drives a full ML-benchmark participant workflow.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `uvx` (confidence: high):

```json
"mcpServers": {
  "codabench-mcp": {
    "command": "uvx",
    "args": ["codabench-mcp"],
    "env": {
      "CODABENCH_API_TOKEN": "",
      "CODABENCH_BASE_URL": "",
      "CODABENCH_ALLOW_WRITE_RAW": "",
      "CODABENCH_MAX_DOWNLOAD_BYTES": ""
    }
  }
}
```

**Requires environment variables:** `CODABENCH_API_TOKEN`, `CODABENCH_BASE_URL`, `CODABENCH_ALLOW_WRITE_RAW`, `CODABENCH_MAX_DOWNLOAD_BYTES` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What codabench-mcp does

The codabench-mcp MCP server exposes the Codabench REST API through tools designed around the participant journey for machine-learning benchmarks. An agent can search for competitions, inspect a selected competition and its phases, read rules, enumerate tasks, and retrieve task details. It can also access account-specific information such as the current user's profile and previous submissions.

The server covers the operational steps after competition discovery. It can download a dataset, send a submission to a phase, wait for processing, inspect submission logs, and retrieve leaderboard information. This makes it suitable for agents that need to move from understanding a benchmark to running a complete submission workflow.

## How it works

At startup, the server reads a Codabench API token from the environment and sends it as a DRF token in the authorization header. The default API host is `https://www.codabench.org`, with an option to replace it for testing or another supported deployment.

Dataset downloads are streamed and checked with SHA-256. Submission handling follows Codabench's three-step upload process rather than requiring the agent to implement those HTTP steps itself. For asynchronous jobs, `poll_submission` uses backoff and a timeout; a submission that remains in progress is returned as a non-error state.

The `codabench_request` tool provides a lower-level REST option. It permits GET requests by default and can be configured to permit non-GET methods. This is useful for API paths not represented by the curated tools, but it also puts more responsibility on the caller.

## Setup and configuration

Install the released package with `uvx codabench-mcp`. To run the repository's current `main` branch, use `uvx --from git+https://github.com/harshitAgr/codabench-mcp codabench-mcp`. A development checkout can be started after `uv sync` with `uv run codabench-mcp`.

Create a Codabench API token through the site's Swagger UI or by posting credentials to the token-auth endpoint. Set `CODABENCH_API_TOKEN` in the MCP client's environment.

`CODABENCH_BASE_URL` overrides the default host. `CODABENCH_ALLOW_WRITE_RAW=1` enables non-GET calls through the raw request tool. `CODABENCH_MAX_DOWNLOAD_BYTES` limits dataset downloads; its documented default is 5 GB.

## Tools and capabilities

The codabench-mcp MCP server includes tools for:

- Searching and retrieving competitions, phases, rules, tasks, and task details.
- Streaming datasets with a SHA-256 check.
- Listing submissions and retrieving an individual submission or its logs.
- Uploading a submission to a phase through Codabench's required flow.
- Polling asynchronous submission status with backoff and timeout handling.
- Reading leaderboards and the authenticated user's profile.
- Making generic REST requests, GET-only by default.

## Limitations and notes

A valid Codabench API token is required to run the server. The raw REST escape hatch does not allow non-GET methods unless its environment setting is enabled. Dataset retrieval is bounded by the configured download-size cap. The documented development tests run without network access, so they do not by themselves verify a live Codabench account or endpoint.

_Full upstream README: https://allmcps.com/mcp/codabench-mcp/readme_

