Backlog MCP server

Integrates with Backlog project management API to enable issue creation and project management operations through TypeScript/Node.js endpoints that handle authentication and API communication.
Back to servers
Setup instructions
Provider
Tomohiro
Release date
Feb 23, 2025
Language
TypeScript
Stats
12 stars

This MCP server provides access to Backlog API, enabling you to manage projects, track issues, handle files, and more through a standardized Model Context Protocol interface.

Installation and Setup

Get an API Key

  1. Log in to your Backlog account
  2. Go to Personal Settings > API > Issue API Key
  3. Copy the generated API key

Configure Environment Variables

Create a .env file with the following settings:

BACKLOG_DOMAIN=your-domain.backlog.com
BACKLOG_API_KEY=your-api-key

# Test settings (optional)
TEST_PROJECT_ID=your-test-project-id
TEST_PROJECT_KEY=your-test-project-key

Use with Claude Desktop

To use this server with Claude Desktop, add the following to your claude_desktop_config.json:

{
  "mcpServers": {
    "backlog": {
      "command": "npx",
      "args": ["-y", "@tmhr1850/backlog-mcp-server"],
      "env": {
        "BACKLOG_DOMAIN": "your-domain.backlog.com",
        "BACKLOG_API_KEY": "your-api-key"
      }
    }
  }
}

Run Locally

If you prefer to run the server locally:

# Build
npm run build

# Run
npm start

Available Tools

Project Management

getSpaces

  • Gets space information
  • Input: None
  • Returns: Space information

getProjects

  • Gets a list of projects
  • Input: None
  • Returns: List of projects

Issue Management

getIssues

  • Gets a list of issues
  • Input:
    • projectIdOrKey (string): Project ID or key
    • offset (number, optional): Starting position
    • count (number, optional): Number of items to retrieve (max 100)
    • sort (string, optional): Sort order ('created' or 'updated')
    • order (string, optional): Sort direction ('asc' or 'desc')
  • Returns: List of issues

getIssue

  • Gets detailed information about an issue
  • Input:
    • issueIdOrKey (string): Issue ID or key
  • Returns: Issue details

createIssue

  • Creates a new issue
  • Input:
    • projectId (string/number): Project ID
    • summary (string): Issue title
    • issueTypeId (string/number): Issue type ID
    • priorityId (string/number, optional): Priority ID
    • description (string, optional): Issue details
    • startDate (string, optional): Start date (YYYY-MM-DD format)
    • dueDate (string, optional): Due date (YYYY-MM-DD format)
    • assigneeId (string/number, optional): Assignee ID
  • Returns: Information about the created issue

updateIssue

  • Updates an existing issue
  • Input:
    • issueIdOrKey (string): Issue ID or key
    • summary (string, optional): Issue title
    • description (string, optional): Issue details
    • statusId (string/number, optional): Status ID
    • priorityId (string/number, optional): Priority ID
    • assigneeId (string/number, optional): Assignee ID
    • startDate (string, optional): Start date (YYYY-MM-DD format)
    • dueDate (string, optional): Due date (YYYY-MM-DD format)
  • Returns: Information about the updated issue

addComment

  • Adds a comment to an issue
  • Input:
    • issueIdOrKey (string): Issue ID or key
    • content (string): Comment content
  • Returns: Information about the added comment

Search Functionality

searchIssues

  • Searches for issues
  • Input:
    • keyword (string): Search keyword
    • projectIdOrKey (string, optional): Project ID or key
    • offset (number, optional): Starting position
    • count (number, optional): Number of items to retrieve (max 100)
  • Returns: List of issues matching the search

Search Syntax

Issue Search

You can use various parameters to filter your search:

  • keyword: Free text search
  • projectId: Filter by specific project
  • statusId: Filter by status
  • assigneeId: Filter by assignee

Example: keyword=bug statusId=1 assigneeId=12345

How to install this MCP server

For Claude Code

To add this MCP server to Claude Code, run this command in your terminal:

claude mcp add-json "backlog" '{"command":"npx","args":["-y","@tmhr1850/backlog-mcp-server"],"env":{"BACKLOG_DOMAIN":"your-domain.backlog.com","BACKLOG_API_KEY":"your-api-key"}}'

See the official Claude Code MCP documentation for more details.

For Cursor

There are two ways to add an MCP server to Cursor. The most common way is to add the server globally in the ~/.cursor/mcp.json file so that it is available in all of your projects.

If you only need the server in a single project, you can add it to the project instead by creating or adding it to the .cursor/mcp.json file.

Adding an MCP server to Cursor globally

To add a global MCP server go to Cursor Settings > Tools & Integrations and click "New MCP Server".

When you click that button the ~/.cursor/mcp.json file will be opened and you can add your server like this:

{
    "mcpServers": {
        "backlog": {
            "command": "npx",
            "args": [
                "-y",
                "@tmhr1850/backlog-mcp-server"
            ],
            "env": {
                "BACKLOG_DOMAIN": "your-domain.backlog.com",
                "BACKLOG_API_KEY": "your-api-key"
            }
        }
    }
}

Adding an MCP server to a project

To add an MCP server to a project you can create a new .cursor/mcp.json file or add it to the existing one. This will look exactly the same as the global MCP server example above.

How to use the MCP server

Once the server is installed, you might need to head back to Settings > MCP and click the refresh button.

The Cursor agent will then be able to see the available tools the added MCP server has available and will call them when it needs to.

You can also explicitly ask the agent to use the tool by mentioning the tool name and describing what the function does.

For Claude Desktop

To add this MCP server to Claude Desktop:

1. Find your configuration file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json

2. Add this to your configuration file:

{
    "mcpServers": {
        "backlog": {
            "command": "npx",
            "args": [
                "-y",
                "@tmhr1850/backlog-mcp-server"
            ],
            "env": {
                "BACKLOG_DOMAIN": "your-domain.backlog.com",
                "BACKLOG_API_KEY": "your-api-key"
            }
        }
    }
}

3. Restart Claude Desktop for the changes to take effect

Want to 10x your AI skills?

Get a free account and learn to code + market your apps using AI (with or without vibes!).

Nah, maybe later