NestDaddy

CTFd

io.github.MrJamescot/ctfd-mcp-server ยท v1.0.4

MCP server for CTFd v3: list challenges, submit flags, and query scoreboards via AI agents.

Connect Runs on your machine

Terminal
claude mcp add ctfd-mcp-server -e CTFD_BASE_URL=<CTFD_BASE_URL> -e CTFD_ADMIN_TOKEN=<CTFD_ADMIN_TOKEN> -e CTFD_SESSION_COOKIE=<CTFD_SESSION_COOKIE> -e CTFD_USERNAME=<CTFD_USERNAME> -e CTFD_PASSWORD=<CTFD_PASSWORD> -e CTFD_HTTP_TIMEOUT=<CTFD_HTTP_TIMEOUT> -- uvx ctfd-mcp-server==1.0.4
claude_desktop_config.json
{
  "mcpServers": {
    "ctfd-mcp-server": {
      "command": "uvx",
      "args": [
        "ctfd-mcp-server==1.0.4"
      ],
      "env": {
        "CTFD_BASE_URL": "<CTFD_BASE_URL>",
        "CTFD_ADMIN_TOKEN": "<CTFD_ADMIN_TOKEN>",
        "CTFD_SESSION_COOKIE": "<CTFD_SESSION_COOKIE>",
        "CTFD_USERNAME": "<CTFD_USERNAME>",
        "CTFD_PASSWORD": "<CTFD_PASSWORD>",
        "CTFD_HTTP_TIMEOUT": "<CTFD_HTTP_TIMEOUT>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "ctfd-mcp-server": {
      "command": "uvx",
      "args": [
        "ctfd-mcp-server==1.0.4"
      ],
      "env": {
        "CTFD_BASE_URL": "<CTFD_BASE_URL>",
        "CTFD_ADMIN_TOKEN": "<CTFD_ADMIN_TOKEN>",
        "CTFD_SESSION_COOKIE": "<CTFD_SESSION_COOKIE>",
        "CTFD_USERNAME": "<CTFD_USERNAME>",
        "CTFD_PASSWORD": "<CTFD_PASSWORD>",
        "CTFD_HTTP_TIMEOUT": "<CTFD_HTTP_TIMEOUT>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "ctfd-mcp-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "ctfd-mcp-server==1.0.4"
      ],
      "env": {
        "CTFD_BASE_URL": "<CTFD_BASE_URL>",
        "CTFD_ADMIN_TOKEN": "<CTFD_ADMIN_TOKEN>",
        "CTFD_SESSION_COOKIE": "<CTFD_SESSION_COOKIE>",
        "CTFD_USERNAME": "<CTFD_USERNAME>",
        "CTFD_PASSWORD": "<CTFD_PASSWORD>",
        "CTFD_HTTP_TIMEOUT": "<CTFD_HTTP_TIMEOUT>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
CTFD_BASE_URL
Required
Root URL of the CTFd v3 instance, e.g. https://ctf.example.com (without /api/v1)
CTFD_ADMIN_TOKEN
Optional, secret
CTFd API access token (preferred authentication method)
CTFD_SESSION_COOKIE
Optional, secret
Full CTFd session cookie, e.g. session=abc...
CTFD_USERNAME
Optional
Username for CTFd form login
CTFD_PASSWORD
Optional, secret
Password for CTFd form login
CTFD_HTTP_TIMEOUT
Optional
Per-request HTTP timeout in seconds (default 15)

Details

Package[email protected] (PYPI, stdio)
First published21 Sep 2026
Last updated21 Sep 2026
Registry nameio.github.MrJamescot/ctfd-mcp-server

More ai and media servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.