Configure the Gitopia MCP Server for use with Claude Code.
Add to your project's .mcp.json:
{
"mcpServers": {
"gitopia": {
"command": "docker",
"args": [
"run", "--rm", "-i", "--platform", "linux/amd64",
"-v", "${HOME}/.mcp/gitopia:/home/mcp/.mcp/gitopia",
"-v", "${PWD}:/workspace",
"-w", "/workspace",
"-e", "MCP_WORKSPACE_PATH=/workspace",
"ghcr.io/gitopia/gitopia-mcp-server:latest", "stdio"
],
"env": {}
}
}
}A new wallet is auto-generated on first use. To use an existing wallet, set GITOPIA_MNEMONIC in your shell environment and add "-e", "GITOPIA_MNEMONIC" to the Docker args.
If you have the gitopia-mcp-server binary installed locally, use the full path. Requires git-remote-gitopia for git clone/push (curl https://get.gitopia.com | bash):
{
"mcpServers": {
"gitopia": {
"command": "/path/to/gitopia-mcp-server",
"env": {
"MCP_WORKSPACE_PATH": "${PWD}",
"MCP_LOG_LEVEL": "info",
"TRUST_LEVEL": "chainwrite"
}
}
}
}If installed via go install, the binary is at $(go env GOPATH)/bin/gitopia-mcp-server.
Control tool access via TRUST_LEVEL:
| Level | Access |
|---|---|
readonly |
Query operations only (list repos, issues, PRs, tags, commits, releases, labels) |
localwrite |
Readonly + local file/git operations (write, add, commit, clone) |
chainwrite |
Full access including on-chain transactions (default) |
For extra safety, enable approval mode to review chain-write transactions before they broadcast:
"env": {
"APPROVAL_MODE": "true",
"TRUST_LEVEL": "chainwrite"
}Transactions are held until you confirm them via the confirm_transaction tool.