Skip to main content
Glama

codebeamer-mcp

An MCP (Model Context Protocol) server for Codebeamer ALM. Allows Claude and other MCP clients to read and write projects, trackers, and items in Codebeamer using natural language.

codebeamer-mcp MCP server

Tools (19)

Read

Tool

Description

list_projects

List all projects

get_project

Get project details

list_trackers

List trackers in a project

get_tracker

Get tracker details

list_tracker_items

List items in a tracker

search_items

Full-text / cbQL search

get_item

Get item summary: ID, name, tracker, status and description. Lightweight — use when you only need to identify the item and read its content

get_item_details

Get full structured detail of an item: project, priority, assignees, timestamps, story points, custom fields and test steps. Description omitted — fetch it via get_item

get_item_relations

Get outgoing/incoming associations (depends on, blocks, …)

get_item_references

Get upstream/downstream traceability references (derived from, covers, …)

get_item_comments

Get item comments

get_item_reviews

Get Review Hub reviews for an item (result, reviewers, votes)

get_user

Get user details

Write

Tool

Description

create_item

Create a new item in a tracker. Supports folders, item type, and parent nesting

update_item

Update an existing item (name, description, status, priority, assignee, custom fields)

add_comment

Add a comment to an item

create_association

Create an association between two items (e.g. depends on, blocks)

create_reference

Add a downstream traceability reference between two items

create_harm

Create a harm entry in an RM Harms List tracker with IMDRF code and severity (1–5)

Related MCP server: Redmine MCP Server

Installation

Requirements

  • Node.js 20+

  • Access to a Codebeamer instance (URL, username, password)

Claude Code (CLI)

The fastest way — run this command in your terminal:

claude mcp add codebeamer -e CB_URL=https://your-instance.example.com/cb/api \
  -e CB_USERNAME=your_username -e CB_PASSWORD=your_password \
  -- npx -y codebeamer-mcp

Or add it manually to .mcp.json in the project root (or ~/.claude/mcp.json for global scope):

{
  "mcpServers": {
    "codebeamer": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "codebeamer-mcp"],
      "env": {
        "CB_URL": "https://your-instance.example.com/cb/api",
        "CB_USERNAME": "your_username",
        "CB_PASSWORD": "your_password"
      }
    }
  }
}

Claude Desktop

Edit the config file for your platform:

Platform

Path

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

Linux

~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "codebeamer": {
      "command": "npx",
      "args": ["-y", "codebeamer-mcp"],
      "env": {
        "CB_URL": "https://your-instance.example.com/cb/api",
        "CB_USERNAME": "your_username",
        "CB_PASSWORD": "your_password"
      }
    }
  }
}

Restart Claude Desktop after saving.

Cursor

Add to .cursor/mcp.json in the project root (project scope) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "codebeamer": {
      "command": "npx",
      "args": ["-y", "codebeamer-mcp"],
      "env": {
        "CB_URL": "https://your-instance.example.com/cb/api",
        "CB_USERNAME": "your_username",
        "CB_PASSWORD": "your_password"
      }
    }
  }
}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "codebeamer": {
      "command": "npx",
      "args": ["-y", "codebeamer-mcp"],
      "env": {
        "CB_URL": "https://your-instance.example.com/cb/api",
        "CB_USERNAME": "your_username",
        "CB_PASSWORD": "your_password"
      }
    }
  }
}

VS Code (Copilot)

Add to .vscode/mcp.json in the project root:

{
  "servers": {
    "codebeamer": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "codebeamer-mcp"],
      "env": {
        "CB_URL": "https://your-instance.example.com/cb/api",
        "CB_USERNAME": "your_username",
        "CB_PASSWORD": "your_password"
      }
    }
  }
}

Gemini CLI

Add to ~/.gemini/settings.json:

{
  "mcpServers": {
    "codebeamer": {
      "command": "npx",
      "args": ["-y", "codebeamer-mcp"],
      "env": {
        "CB_URL": "https://your-instance.example.com/cb/api",
        "CB_USERNAME": "your_username",
        "CB_PASSWORD": "your_password"
      }
    }
  }
}

Alternative: global install

npm install -g codebeamer-mcp

Then use "command": "codebeamer-mcp" (no args) instead of npx in any config above.

Pinning a specific version

"args": ["-y", "codebeamer-mcp@0.2.0"]

Updates

Method

Update behavior

npx -y codebeamer-mcp

Always fetches the latest version

npm install -g codebeamer-mcp

Stays on installed version. Run npm update -g codebeamer-mcp to update

Pinned version (@0.2.0)

Never auto-updates; change the version string manually

⚠️ Never commit .mcp.json with real credentials — it is listed in .gitignore.

From source (development)

git clone https://github.com/3KniGHtcZ/codebeamer-mcp.git
cd codebeamer-mcp
npm install
npm run build

Then use "command": "node" with "args": ["dist/index.js"] in your .mcp.json.

Development & Testing

# Run tests (no real Codebeamer instance needed)
npm test

# Start the mock API server (port 3001)
node mock-server.mjs

# Interactive testing via MCP Inspector
CB_URL=http://localhost:3001 CB_USERNAME=mock CB_PASSWORD=mock \
  npx @modelcontextprotocol/inspector node dist/index.js

Configuration

Variable

Description

Default

CB_URL

Codebeamer API URL, e.g. https://your-instance.example.com/cb/api (the server appends /v3 automatically)

(required)

CB_USERNAME

Login username

(required)

CB_PASSWORD

Password

(required)

CB_UNSAFE_SSL

Set to true to allow connections to servers with unverified/self-signed certificates

false

CB_API_VERSION

API version

v3

CB_TIMEOUT_MS

Request timeout (ms)

30000

CB_MAX_ITEMS

Max items per page

100

Available Tools

19 tools
add_commentAdd CommentA

Add a comment to a Codebeamer work item. Supports plain text and wiki markup formats. Returns the created comment.

Inputs: itemId (required), comment (required), format.

create_associationCreate AssociationA

Create an association (link) between two Codebeamer work items. Common association types: 'depends on', 'blocks', 'related to', 'derived from'. Use get_item_relations on an existing item to discover valid association type IDs.

Inputs: fromItemId (required), toItemId (required), typeId (required), description.

create_harmCreate HarmA

Create a new item in a Codebeamer RM Harms List tracker. Supports setting the IMDRF code (text) and Severity (integer 1–5). Use list_trackers to find the Harms List tracker ID for your project.

Inputs: trackerId (required), name (required), description, imdrfCode, +2 more.

create_itemCreate ItemA

Create a new work item in a Codebeamer tracker. Use get_tracker to discover available fields, statuses, and priorities. Returns the created item with all fields.

Inputs: trackerId (required), name (required), description, statusId, +6 more.

create_referenceCreate Downstream ReferenceA

Add a downstream reference from one Codebeamer item to another. Downstream references represent derivation/traceability links (e.g. a requirement derived from another). The 'from' item gets the downstream reference pointing to the 'to' item.

Inputs: fromItemId (required), toItemId (required).

get_itemGet ItemA

Get a lightweight summary of a Codebeamer work item: ID, name, tracker, status and description. Use this when you only need to identify the item and read its description. For priority, assignees, dates, story points, custom fields and test steps, call get_item_details.

Inputs: itemId (required).

get_item_commentsGet Item CommentsA

Get all comments (discussion thread) for a Codebeamer item.

Inputs: itemId (required).

get_item_detailsGet Item DetailsA

Get the full structured detail of a Codebeamer work item: project, priority, assignees, created/updated timestamps, story points, custom fields and test steps. Description is intentionally omitted — fetch it via get_item.

Inputs: itemId (required).

get_item_referencesGet Item ReferencesA

Get upstream and downstream traceability references for a Codebeamer item. Upstream references point to items this one is derived from (e.g. requirements). Downstream references point to items derived from this one (e.g. test cases).

Inputs: itemId (required).

get_item_relationsGet Item RelationsB

Get all relations (associations) for a Codebeamer item. Shows incoming and outgoing links like 'depends on', 'blocks', 'derived from', etc.

Inputs: itemId (required).

get_item_reviewsGet Item ReviewsA

Get all Review Hub reviews for a Codebeamer tracker item. Shows the overall review result (APPROVED/REJECTED/UNDECIDED), individual reviewer votes, and review configuration (required approvals/rejections).

Inputs: itemId (required).

get_projectGet ProjectA

Get full details for a single Codebeamer project by its numeric ID.

Inputs: projectId (required).

get_trackerGet TrackerA

Get details of a Codebeamer tracker including its field schema. The field list shows what fields are available for items in this tracker, useful for constructing cbQL queries.

Inputs: trackerId (required).

get_userGet UserA

Get profile details for a Codebeamer user by their numeric ID. User IDs appear in item fields like assignedTo and createdBy.

Inputs: userId (required).

list_projectsList ProjectsA

List all Codebeamer projects the authenticated user can access. Returns a summary table with project IDs, names, and keys. Use the returned IDs to fetch trackers or items.

Inputs: page, pageSize.

list_tracker_itemsList Tracker ItemsA

List all items in a specific Codebeamer tracker with pagination. Returns a table with item IDs, summaries, statuses, and priorities.

Inputs: trackerId (required), page, pageSize.

list_trackersList TrackersA

List all trackers (Requirements, Bugs, Test Cases, etc.) in a Codebeamer project. Use the returned tracker IDs to list items or get tracker details.

Inputs: projectId (required), page, pageSize.

search_itemsSearch Items (cbQL)A

Search Codebeamer items using cbQL query language. Examples: 'tracker.id IN (42) AND status.name = "Open"', 'summary LIKE "login bug"', 'priority.name = "High" AND assignedTo.name = "john.doe"', 'project.id IN (1) AND modifiedAt >= -1w'. Use get_tracker to see available fields for a tracker.

Inputs: query (required), page, pageSize.

update_itemUpdate ItemA

Update fields on an existing Codebeamer work item. Only provide the fields you want to change. Returns the updated item with all fields.

Inputs: itemId (required), name, description, statusId, +3 more.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.9/5.0

    Scored across 19 tools

    Disambiguation5/5

    Each tool targets a distinct operation (e.g., get_item vs get_item_details vs get_item_comments), with clear descriptions preventing confusion. No overlapping purposes.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun snake_case pattern (e.g., create_item, get_item_comments, list_projects). No deviations or mixed conventions.

    Tool Count4/5

    19 tools cover a broad ALM domain comprehensively, though slightly above the typical sweet spot. Each tool has a clear purpose, but the set could be streamlined slightly without loss.

    Completeness3/5

    Covers CRUD for items, associations, references, comments, reviews, and metadata. Missing delete operations (e.g., delete_item, delete_association) and update for associations/comments, leaving minor but noticeable gaps.

    Maintenance

    ActivityInactive
    ResponsivenessLimited data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      C
      quality
      D
      maintenance
      Model Context Protocol (MCP) server for Redmine that provides comprehensive access to the Redmine REST API, enabling users to operate Redmine from MCP clients such as Claude Desktop.
      90
      14 npm
      MIT
    • A
      license
      C
      quality
      B
      maintenance
      Model Context Protocol (MCP) server for Redmine that provides comprehensive access to the Redmine REST API. It allows you to operate Redmine from MCP clients such as Claude Desktop.
      90
      1,256 npm
      30
      MIT