codeocean/codeocean-mcp-server
If you are the rightful owner of codeocean-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.
The Code Ocean MCP Server is a Model Context Protocol server designed to facilitate the management and execution of capsules and pipelines, as well as the handling of data assets within the Code Ocean platform.
Code Ocean MCP Server
Model Context Protocol (MCP) server for Code Ocean.
This MCP server provides tools to search and run capsules and pipelines, and manage data assets.
Table of Contents
Prerequisites
- Install
uvfrom Astral or the GitHub README - Install Python 3.10 or newer using
uv python install 3.10(or a more recent version) - Generate a Code Ocean access token. Follow instructions in the Code Ocean user guide.
Code Ocean Platform Version Compatibility
Each release of this Code Ocean MCP Server is tested and verified against a specific minimum version of the Code Ocean platform API. Generally, this minimum version is the latest Code Ocean version at the time of the MCP Server release. We recommend ensuring your MCP Server dependency is pinned to a version compatible with your Code Ocean deployment. For details on when the minimum Code Ocean platform version changes, see the .
Installation
Visual Studio Code
Here's an example VS Code MCP server configuration:
{
...
"mcp": {
"inputs": [
{
"type": "promptString",
"id": "codeocean-token",
"description": "Code Ocean API Key",
"password": true
}
],
"servers": {
"codeocean": {
"type": "stdio",
"command": "uvx",
"args": ["codeocean-mcp-server"],
"env": {
"CODEOCEAN_DOMAIN": "https://codeocean.acme.com",
"CODEOCEAN_TOKEN": "${input:codeocean-token}",
"AGENT_ID": "VS Code"
}
}
},
}
}
Claude Desktop
- Open the
claude_desktop_config.jsonfile:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Under the top-level "mcpServers" object, add a "codeocean" entry. For a stdio transport (child-process) it looks like this:
{
"mcpServers": {
"codeocean": {
"command": "uvx",
"args": ["codeocean-mcp-server"],
"env": {
"CODEOCEAN_DOMAIN": "https://codeocean.acme.com",
"CODEOCEAN_TOKEN": "<YOUR_API_KEY>",
"AGENT_ID": "Claude Desktop"
}
}
}
}
Cline
Cline stores all of its MCP settings in a JSON file called cline_mcp_settings.json. You can edit this either through the GUI (“Configure MCP Servers” in the MCP Servers pane) or by hand:
- Open Cline and click the MCP Servers icon in the sidebar.
- In the “Installed” tab, click Configure MCP Servers → this opens your cline_mcp_settings.json.
- Add a "codeocean" server under the "mcpServers" key. For stdio transport:
{
"mcpServers": {
"codeocean": {
"command": "uvx",
"args": ["codeocean-mcp-server"],
"env": {
"CODEOCEAN_DOMAIN": "https://codeocean.acme.com",
"CODEOCEAN_TOKEN": "<YOUR_API_KEY>",
"AGENT_ID": "Cline"
},
"alwaysAllow": [], // optional: list of tools to auto-approve
"disabled": false // ensure it’s enabled
}
}
}
- Save the file. Cline will automatically detect and launch the new server, making your Code Ocean tools available in chat .
Roo Code
Roo Code’s MCP support is configured globally across all workspaces via a JSON settings file or through its dedicated MCP Settings UI
Via the MCP Settings UI:
- Click the MCP icon in Roo Code’s sidebar. 
- Select Edit MCP Settings (opens cline_mcp_settings.json). 
- Under "mcpServers", add:
{
"mcpServers": {
"codeocean": {
"command": "uvx",
"args": ["codeocean-mcp-server"],
"env": {
"CODEOCEAN_DOMAIN": "https://codeocean.acme.com",
"CODEOCEAN_TOKEN": "<YOUR_API_KEY>",
"AGENT_ID": "Roo Code"
}
}
}
}
- Save and restart Roo Code; your Code Ocean tools will appear automatically.
Optional: Manually editing cline_mcp_settings.json
- Locate cline_mcp_settings.json (in your home directory or workspace). 
- Insert the same "codeocean" block under "mcpServers" as above.
- Save and restart.
Cursor
Cursor stores MCP servers in a JSON file at either ~/.cursor/mcp.json (global) or {project}/.cursor/mcp.json (project-specific) .
- Open .cursor/mcp.json (or create it if missing). 
- Add under "mcpServers":
{
"mcpServers": {
"codeocean": {
"command": "uvx",
"args": ["codeocean-mcp-server"],
"env": {
"CODEOCEAN_DOMAIN": "https://codeocean.acme.com",
"CODEOCEAN_TOKEN": "<YOUR_API_KEY>",
"AGENT_ID": "Cursor"
}
}
}
}
- Save the file. Cursor will automatically detect and launch the new server on next start. 
Windsurf
Windsurf (Cascade) uses mcp_config.json under ~/.codeium/windsurf/ (or via the Cascade → MCP Servers UI) .
- Open your Windsurf Settings and navigate to Cascade → MCP Servers, then click View Raw Config to open mcp_config.json. 
- Insert the following under "mcpServers":
{
"mcpServers": {
"codeocean": {
"command": "uvx",
"args": ["codeocean-mcp-server"],
"env": {
"CODEOCEAN_DOMAIN": "https://codeocean.acme.com",
"CODEOCEAN_TOKEN": "<YOUR_API_KEY>",
"AGENT_ID": "Windsurf"
}
}
}
}
- Save and restart Windsurf (or hit “Refresh” in the MCP panel).
Local Testing
You can test the MCP server locally during development with MCP Inspector:
npx @modelcontextprotocol/inspector uv tool run codeocean-mcp-server
This will start a web server where you can:
- View available tools and resources
- Test tool calls interactively
- See server logs and responses
Log Formatting (Optional)
The MCP server supports custom log formatting through the LOG_FORMAT environment variable. This allows you to control the format of log messages output by the server.
Example Format Strings: "%(asctime)s %(levelname)s [%(name)s] %(message)s".
If LOG_FORMAT is not set, the server uses FastMCP's default logging configuration.