A Model Context Protocol server that exposes a self-hosted Atlassian Bamboo instance to AI assistants, Claude Desktop, Claude Code, Cursor, Windsurf, or any other MCP client. Ask "who deployed CHECKOUT to staging and did it pass?" instead of clicking through the Bamboo UI. Read-only by design.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add bamboo --env BAMBOO_URL='<BAMBOO_URL>' --env BAMBOO_TOKEN='<BAMBOO_TOKEN>' --env MCP_TRANSPORT='<MCP_TRANSPORT>' -- docker run -i --rm -e BAMBOO_URL -e BAMBOO_TOKEN -e MCP_TRANSPORT ghcr.io/hmdmph/bamboo-mcp:0.1.2~/.codex/config.toml
[mcp_servers.bamboo]
command = "docker"
args = ["run", "-i", "--rm", "-e", "BAMBOO_URL", "-e", "BAMBOO_TOKEN", "-e", "MCP_TRANSPORT", "ghcr.io/hmdmph/bamboo-mcp:0.1.2"]
env = { BAMBOO_URL = "<BAMBOO_URL>", BAMBOO_TOKEN = "<BAMBOO_TOKEN>", MCP_TRANSPORT = "<MCP_TRANSPORT>" }
# codex mcp add bamboo --env BAMBOO_URL='<BAMBOO_URL>' --env BAMBOO_TOKEN='<BAMBOO_TOKEN>' --env MCP_TRANSPORT='<MCP_TRANSPORT>' -- docker run -i --rm -e BAMBOO_URL -e BAMBOO_TOKEN -e MCP_TRANSPORT ghcr.io/hmdmph/bamboo-mcp:0.1.2~/.cursor/mcp.json
{
"mcpServers": {
"bamboo": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BAMBOO_URL",
"-e",
"BAMBOO_TOKEN",
"-e",
"MCP_TRANSPORT",
"ghcr.io/hmdmph/bamboo-mcp:0.1.2"
],
"env": {
"BAMBOO_URL": "<BAMBOO_URL>",
"BAMBOO_TOKEN": "<BAMBOO_TOKEN>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"bamboo": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BAMBOO_URL",
"-e",
"BAMBOO_TOKEN",
"-e",
"MCP_TRANSPORT",
"ghcr.io/hmdmph/bamboo-mcp:0.1.2"
],
"env": {
"BAMBOO_URL": "<BAMBOO_URL>",
"BAMBOO_TOKEN": "<BAMBOO_TOKEN>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"bamboo": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BAMBOO_URL",
"-e",
"BAMBOO_TOKEN",
"-e",
"MCP_TRANSPORT",
"ghcr.io/hmdmph/bamboo-mcp:0.1.2"
],
"env": {
"BAMBOO_URL": "<BAMBOO_URL>",
"BAMBOO_TOKEN": "<BAMBOO_TOKEN>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"bamboo": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BAMBOO_URL",
"-e",
"BAMBOO_TOKEN",
"-e",
"MCP_TRANSPORT",
"ghcr.io/hmdmph/bamboo-mcp:0.1.2"
],
"env": {
"BAMBOO_URL": "<BAMBOO_URL>",
"BAMBOO_TOKEN": "<BAMBOO_TOKEN>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"bamboo": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BAMBOO_URL",
"-e",
"BAMBOO_TOKEN",
"-e",
"MCP_TRANSPORT",
"ghcr.io/hmdmph/bamboo-mcp:0.1.2"
],
"env": {
"BAMBOO_URL": "<BAMBOO_URL>",
"BAMBOO_TOKEN": "<BAMBOO_TOKEN>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>"
}
}
}
}Environment variables
BAMBOO_URLBAMBOO_TOKENMCP_TRANSPORT
Replace the placeholders with your own credentials and keep them out of version control.