CTFd MCP Server
An MCP server that connects AI agents to CTFd v3 instances. It supports multiple authentication modes (API token, cookie, or password), allows listing and filtering challenges, submitting flags safely, and querying instance health and state. It provides both MCP tools over stdio/SSE and an optional FastAPI REST interface.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
Checks and signals
Each line is separate evidence, not a trust score.
- Popularity 7 GitHub stars
What you can do with it
- List and filter challenges by category or solved status
- Submit flags for CTF challenges with confirmation
- Query instance health and authentication status
- Inspect detailed challenge information
Source and maintenance
- Last repository push
- Latest release
- v1.0.4
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
ctfd-mcp-server 1.0.4
{
"version": "1.0.4",
"transport": "stdio",
"identifier": "ctfd-mcp-server",
"runtimeHint": "uvx",
"registryType": "pypi",
"environmentVariables": [
{
"name": "CTFD_BASE_URL",
"format": "string",
"isRequired": true,
"description": "Root URL of the CTFd v3 instance, e.g. https://ctf.example.com (without /api/v1)"
},
{
"name": "CTFD_ADMIN_TOKEN",
"format": "string",
"description": "CTFd API access token (preferred authentication method)"
},
{
"name": "CTFD_SESSION_COOKIE",
"format": "string",
"description": "Full CTFd session cookie, e.g. session=abc..."
},
{
"name": "CTFD_USERNAME",
"format": "string",
"description": "Username for CTFd form login"
},
{
"name": "CTFD_PASSWORD",
"format": "string",
"description": "Password for CTFd form login"
},
{
"name": "CTFD_HTTP_TIMEOUT",
"format": "number",
"description": "Per-request HTTP timeout in seconds (default 15)"
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · repository · passed · metadata changed · updated
- · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"ctfd-mcp-server": {
"command": "uvx",
"args": [
"ctfd-mcp-server==1.0.4"
],
"env": {
"CTFD_BASE_URL": "<YOUR_CTFD_BASE_URL>",
"CTFD_ADMIN_TOKEN": "<YOUR_CTFD_ADMIN_TOKEN>",
"CTFD_SESSION_COOKIE": "<YOUR_CTFD_SESSION_COOKIE>",
"CTFD_USERNAME": "<YOUR_CTFD_USERNAME>",
"CTFD_PASSWORD": "<YOUR_CTFD_PASSWORD>",
"CTFD_HTTP_TIMEOUT": "<YOUR_CTFD_HTTP_TIMEOUT>"
}
}
}
}Cline
{
"mcpServers": {
"ctfd-mcp-server": {
"command": "uvx",
"args": [
"ctfd-mcp-server==1.0.4"
],
"env": {
"CTFD_BASE_URL": "<YOUR_CTFD_BASE_URL>",
"CTFD_ADMIN_TOKEN": "<YOUR_CTFD_ADMIN_TOKEN>",
"CTFD_SESSION_COOKIE": "<YOUR_CTFD_SESSION_COOKIE>",
"CTFD_USERNAME": "<YOUR_CTFD_USERNAME>",
"CTFD_PASSWORD": "<YOUR_CTFD_PASSWORD>",
"CTFD_HTTP_TIMEOUT": "<YOUR_CTFD_HTTP_TIMEOUT>"
}
}
}
}VS Code
{
"servers": {
"ctfd-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"ctfd-mcp-server==1.0.4"
],
"env": {
"CTFD_BASE_URL": "<YOUR_CTFD_BASE_URL>",
"CTFD_ADMIN_TOKEN": "<YOUR_CTFD_ADMIN_TOKEN>",
"CTFD_SESSION_COOKIE": "<YOUR_CTFD_SESSION_COOKIE>",
"CTFD_USERNAME": "<YOUR_CTFD_USERNAME>",
"CTFD_PASSWORD": "<YOUR_CTFD_PASSWORD>",
"CTFD_HTTP_TIMEOUT": "<YOUR_CTFD_HTTP_TIMEOUT>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"ctfd-mcp-server": {
"command": "uvx",
"args": [
"ctfd-mcp-server==1.0.4"
],
"env": {
"CTFD_BASE_URL": "<YOUR_CTFD_BASE_URL>",
"CTFD_ADMIN_TOKEN": "<YOUR_CTFD_ADMIN_TOKEN>",
"CTFD_SESSION_COOKIE": "<YOUR_CTFD_SESSION_COOKIE>",
"CTFD_USERNAME": "<YOUR_CTFD_USERNAME>",
"CTFD_PASSWORD": "<YOUR_CTFD_PASSWORD>",
"CTFD_HTTP_TIMEOUT": "<YOUR_CTFD_HTTP_TIMEOUT>"
}
}
}
}Let your agent find its tools
Find servers like CTFd MCP Server from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.