Go MCP server for the Hackless public API.
This is the public distribution repo for the Hackless MCP server. It is meant to be installed with go install and used locally by Claude, while the server itself talks to the production Hackless API.
HACKLESS_BASE_URL- defaulthttps://hackless.devHACKLESS_COOKIE- optional session cookie for authenticated toolsHACKLESS_EVENT_API_KEY- optional event-scoped API key for event management toolsADDR- listen address, default:8000
cd hackless-mcp-platform
go run .For manual HTTP smoke tests only:
go run . --httpBuild the binary first:
cd hackless-mcp-platform
go build -o hackless-mcpThen register it in Claude as a local stdio MCP server:
claude mcp add hackless -- /absolute/path/to/hackless-mcp-platform/hackless-mcpTo point it at production explicitly, pass the base URL:
HACKLESS_BASE_URL=https://hackless.dev /absolute/path/to/hackless-mcp-platform/hackless-mcpIf the server needs to read your logged-in Hackless session, pass the cookie as an environment variable when you launch it:
HACKLESS_COOKIE='your-session-cookie' /absolute/path/to/hackless-mcp-platform/hackless-mcpFor API-key auth, set:
HACKLESS_API_KEY='your-mcp-key' /absolute/path/to/hackless-mcp-platform/hackless-mcpIf you also want Claude to operate on a specific event, add the event API key too:
HACKLESS_EVENT_API_KEY='your-event-api-key' /absolute/path/to/hackless-mcp-platform/hackless-mcpInstall via Go:
go install github.com/Rarex224/hackless-mcp-platform@latestIf you want to host the MCP server as a separate service, deploy this repo as its own Railway service and set:
HACKLESS_BASE_URL=https://hackless.devHACKLESS_API_KEY=<your_hackless_api_key>HACKLESS_EVENT_API_KEY=<your_event_api_key>
For Claude Desktop usage you usually do not need Railway; the normal flow is to install the binary locally and let Claude launch it as a stdio MCP server.
healthlist_challengesget_challengeget_my_progressget_public_profileview_leaderboardsubmit_flaglist_writeups_for_challengeget_eventupdate_eventadd_event_challengesremove_event_challengelist_event_participants
This server speaks JSON-RPC over stdio for Claude and also supports HTTP test mode on --http.
It defaults to https://hackless.dev and can be overridden with HACKLESS_BASE_URL, --base-url, or the first positional argument.
It uses the Hackless public REST endpoints instead of the internal tRPC router.