CTFd for VS Code
io.github.mrjamescot/ctfd-mcp-server
MCP server for CTFd v3: list challenges, submit flags, and query scoreboards via AI agents.
client:VS Code
transport:stdio
runtime:pypi
Install CTFd in VS Code
.vscode/mcp.json
{
"inputs": [
{
"type": "promptString",
"id": "ctfd-base-url",
"description": "CTFD_BASE_URL",
"password": true
},
{
"type": "promptString",
"id": "ctfd-admin-token",
"description": "CTFD_ADMIN_TOKEN",
"password": true
},
{
"type": "promptString",
"id": "ctfd-session-cookie",
"description": "CTFD_SESSION_COOKIE",
"password": true
},
{
"type": "promptString",
"id": "ctfd-username",
"description": "CTFD_USERNAME",
"password": true
},
{
"type": "promptString",
"id": "ctfd-password",
"description": "CTFD_PASSWORD",
"password": true
},
{
"type": "promptString",
"id": "ctfd-http-timeout",
"description": "CTFD_HTTP_TIMEOUT",
"password": true
}
],
"servers": {
"ctfd-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"ctfd-mcp-server"
],
"env": {
"CTFD_BASE_URL": "${input:ctfd-base-url}",
"CTFD_ADMIN_TOKEN": "${input:ctfd-admin-token}",
"CTFD_SESSION_COOKIE": "${input:ctfd-session-cookie}",
"CTFD_USERNAME": "${input:ctfd-username}",
"CTFD_PASSWORD": "${input:ctfd-password}",
"CTFD_HTTP_TIMEOUT": "${input:ctfd-http-timeout}"
}
}
}
}
VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs