Atlassian Bamboo MCP Server
Enables AI assistants to interact with Atlassian Bamboo CI/CD, allowing natural language queries to check build status, fetch logs, trigger builds, and manage deployments.
README
Atlassian Bamboo MCP Server
A Model Context Protocol (MCP) server that brings Atlassian Bamboo CI/CD operations directly into AI assistants like Claude Code and Cursor.
❌ Without Bamboo MCP
Working with Bamboo CI/CD requires constant context switching:
- ❌ Switching to browser to check build status
- ❌ Manually navigating through Bamboo UI to find logs
- ❌ Copy-pasting build keys and deployment IDs
- ❌ No AI assistance for CI/CD troubleshooting
✅ With Bamboo MCP
Bamboo MCP brings your CI/CD operations directly into your AI workflow:
What's the status of the latest build for project MY-PROJECT?
Show me the deployment logs for deployment result 2661941325
Trigger a build for plan PROJ-PLAN with variable ENV=staging
No tab-switching, no manual navigation — just ask and get instant CI/CD insights.
Features
- 26 tools covering all major Bamboo operations
- Build logs with actual content (not just URLs)
- Deployment logs with full output
- Proxy support for corporate environments
- TypeScript with full type safety
Installation
Prerequisites
- Node.js 18+
- Bamboo personal access token (how to create)
From Source
git clone https://github.com/norus/atlassian-bamboo-mcp.git
cd atlassian-bamboo-mcp
npm install
npm run build
From npm
npm install -g bamboo-mcp-server
Configuration
The server requires these environment variables:
| Variable | Required | Description |
|---|---|---|
BAMBOO_URL |
Yes | Base URL of your Bamboo server |
BAMBOO_TOKEN |
Yes | Personal access token |
BAMBOO_PROXY |
No | Proxy URL (e.g., http://proxy:8080) |
Creating a Bamboo Token
- Log into Bamboo
- Go to Profile → Personal access tokens
- Click Create token
- Give it a name and appropriate permissions
- Copy the token (you won't see it again)
Setup
<details> <summary><b>Claude Code</b></summary>
Run this command:
claude mcp add bamboo -- npx -y bamboo-mcp-server@latest
Or add to ~/.claude/settings.json:
{
"mcpServers": {
"bamboo": {
"command": "npx",
"args": ["-y", "bamboo-mcp-server@latest"],
"env": {
"BAMBOO_URL": "https://bamboo.example.com",
"BAMBOO_TOKEN": "your-token"
}
}
}
}
</details>
<details> <summary><b>Claude Desktop</b></summary>
Add to your config file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"bamboo": {
"command": "npx",
"args": ["-y", "bamboo-mcp-server@latest"],
"env": {
"BAMBOO_URL": "https://bamboo.example.com",
"BAMBOO_TOKEN": "your-token",
"BAMBOO_PROXY": "http://proxy:8080"
}
}
}
}
</details>
<details> <summary><b>Cursor</b></summary>
Add to ~/.cursor/mcp.json:
{
"mcpServers": {
"bamboo": {
"command": "npx",
"args": ["-y", "bamboo-mcp-server@latest"],
"env": {
"BAMBOO_URL": "https://bamboo.example.com",
"BAMBOO_TOKEN": "your-token"
}
}
}
}
</details>
<details> <summary><b>npx</b></summary>
BAMBOO_URL="https://bamboo.example.com" \
BAMBOO_TOKEN="your-token" \
npx bamboo-mcp-server
</details>
<details> <summary><b>Docker</b></summary>
Build the image
docker build -t bamboo-mcp-server .
Run with Docker
docker run -i --rm \
-e BAMBOO_URL="https://bamboo.example.com" \
-e BAMBOO_TOKEN="your-token" \
-e BAMBOO_PROXY="http://host.docker.internal:8080" \
bamboo-mcp-server
Proxy configuration
When using a proxy from Docker:
- macOS/Windows: Use
host.docker.internalto reach the host (e.g.,http://host.docker.internal:8080) - Linux: Use
--network hostflag or the host's actual IP address
Use with Claude Desktop
{
"mcpServers": {
"bamboo": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "BAMBOO_URL=https://bamboo.example.com",
"-e", "BAMBOO_TOKEN=your-token",
"-e", "BAMBOO_PROXY=http://host.docker.internal:8080",
"bamboo-mcp-server"
]
}
}
}
Docker Compose
services:
bamboo-mcp:
build: .
environment:
- BAMBOO_URL=https://bamboo.example.com
- BAMBOO_TOKEN=${BAMBOO_TOKEN}
- BAMBOO_PROXY=http://host.docker.internal:8080
stdin_open: true
</details>
Available Tools
Server (2)
| Tool | Description |
|---|---|
bamboo_server_info |
Get Bamboo server version and state |
bamboo_health_check |
Check server health status |
Projects (2)
| Tool | Description |
|---|---|
bamboo_list_projects |
List all projects |
bamboo_get_project |
Get project details by key |
Plans (6)
| Tool | Description |
|---|---|
bamboo_list_plans |
List all build plans |
bamboo_get_plan |
Get plan details by key |
bamboo_search_plans |
Search plans by name |
bamboo_enable_plan |
Enable a build plan |
bamboo_disable_plan |
Disable a build plan |
bamboo_clone_plan |
Clone a build plan to a new plan |
Branches (2)
| Tool | Description |
|---|---|
bamboo_list_plan_branches |
List branches for a plan |
bamboo_get_plan_branch |
Get branch details |
Builds (7)
| Tool | Description |
|---|---|
bamboo_trigger_build |
Trigger a build (supports variables) |
bamboo_stop_build |
Stop a running build |
bamboo_get_build_result |
Get specific build result |
bamboo_get_latest_result |
Get latest build result |
bamboo_list_build_results |
List build results with filters |
bamboo_get_build_logs |
Get build log file URLs |
bamboo_get_build_result_logs |
Get build logs with actual content |
Queue (2)
| Tool | Description |
|---|---|
bamboo_get_build_queue |
Get current build queue |
bamboo_get_deployment_queue |
Get deployment queue status |
Deployments (6)
| Tool | Description |
|---|---|
bamboo_list_deployment_projects |
List deployment projects |
bamboo_get_deployment_project |
Get deployment project details |
bamboo_create_deployment_project |
Create a deployment project linked to a build plan |
bamboo_get_deployment_results |
Get deployment results for environment |
bamboo_get_deployment_result |
Get deployment result with logs |
bamboo_trigger_deployment |
Trigger a deployment |
Example Prompts
Show me all failed builds in the last 24 hours
What's blocking the deployment queue?
Get the logs for build PROJ-PLAN-123 and tell me why it failed
Trigger a build for MY-PROJECT with variable DEPLOY_ENV=staging
List all branches for plan MY-PLAN and their build status
Development
# Install dependencies
npm install
# Build
npm run build
# Run tests
npm test
# Run tests with coverage
npm run test:coverage
# Run locally
BAMBOO_URL="https://bamboo.example.com" \
BAMBOO_TOKEN="your-token" \
node dist/index.js
Troubleshooting
<details> <summary><b>Connection refused / timeout</b></summary>
- Verify
BAMBOO_URLis correct and accessible - If behind a proxy, set
BAMBOO_PROXY - Check if your token has expired
</details>
<details> <summary><b>401 Unauthorized</b></summary>
- Verify your
BAMBOO_TOKENis correct - Ensure the token hasn't expired
- Check token permissions in Bamboo
</details>
<details> <summary><b>Tool not found in Claude</b></summary>
- Restart Claude Code/Desktop after config changes
- Verify the path to
dist/index.jsis absolute - Check Claude's MCP logs for errors
</details>
Security
- No hardcoded secrets — all credentials via environment variables
- Input validation — Zod schemas on all tool inputs
- Proxy support — works in corporate environments
- Read-heavy — most operations are read-only
For security issues, please report via GitHub Security tab.
License
MIT
Contributing
Contributions welcome! Please read our contributing guidelines before submitting PRs.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.