Go to file
Fadhli Azhari 7d5d364193 docs: add CLAUDE.md and README.md
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-12 17:06:38 +08:00
.claude config: add Claude Code settings and commands 2026-03-12 16:57:15 +08:00
.serena config: add Serena MCP project configuration 2026-03-12 16:57:25 +08:00
src feat: add OpenProject MCP server source 2026-03-12 16:56:56 +08:00
.env.example config: add MCP server and environment configuration 2026-03-12 16:57:08 +08:00
.gitattributes build: setup git repo 2026-03-12 16:47:58 +08:00
.gitignore build: add .env and .mcp.json to gitignore 2026-03-12 17:06:28 +08:00
.mcp.json.example config: add MCP server and environment configuration 2026-03-12 16:57:08 +08:00
.pre-commit-config.yaml build: add tooling config and setup script 2026-03-12 16:57:02 +08:00
CLAUDE.md docs: add CLAUDE.md and README.md 2026-03-12 17:06:38 +08:00
README.md docs: add CLAUDE.md and README.md 2026-03-12 17:06:38 +08:00
justfile build: update justfile for MCP server project 2026-03-12 17:06:34 +08:00
package-lock.json feat: add OpenProject MCP server source 2026-03-12 16:56:56 +08:00
package.json feat: add OpenProject MCP server source 2026-03-12 16:56:56 +08:00
pnpm-lock.yaml feat: add OpenProject MCP server source 2026-03-12 16:56:56 +08:00
setup.ps1 build: add tooling config and setup script 2026-03-12 16:57:02 +08:00
tsconfig.json feat: add OpenProject MCP server source 2026-03-12 16:56:56 +08:00

README.md

OpenProject MCP Server

A Model Context Protocol (MCP) server that connects AI assistants to OpenProject via the v3 REST API.

Features

  • 18 MCP tools covering projects, work packages, relations, users, time tracking, versions, and activities
  • Stdio transport — works with Claude Code, Zed, Claude Desktop, and any MCP-compatible client
  • HAL+JSON responses formatted into readable text summaries
  • Optimistic concurrency control for work package updates

Prerequisites

  • Node.js 18+
  • pnpm
  • An OpenProject instance with an API key

Setup

  1. Clone and install:

    git clone https://gitea.kollect.biz/KollectRnD/MCP-OpenProject.git
    cd MCP-OpenProject
    pnpm install
    
  2. Configure environment:

    cp .env.example .env
    

    Edit .env with your OpenProject URL and API key:

    OPENPROJECT_URL=https://your-instance.openproject.com
    OPENPROJECT_API_KEY=your-api-key-here
    
  3. Build:

    pnpm build
    

Usage

Claude Code

Add to your project's .mcp.json:

{
  "mcpServers": {
    "openproject": {
      "command": "node",
      "args": ["dist/index.js"],
      "env": {
        "OPENPROJECT_URL": "https://your-instance.openproject.com",
        "OPENPROJECT_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

Claude Desktop

Add to your Claude Desktop config (%APPDATA%\Claude\claude_desktop_config.json on Windows, ~/Library/Application Support/Claude/claude_desktop_config.json on macOS):

{
  "mcpServers": {
    "openproject": {
      "command": "node",
      "args": ["/absolute/path/to/MCP-OpenProject/dist/index.js"],
      "env": {
        "OPENPROJECT_URL": "https://your-instance.openproject.com",
        "OPENPROJECT_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

Development

Run directly without building:

pnpm dev

Available Tools

Tool Description
list_projects List all accessible projects
get_project Get project details by ID or identifier
list_work_packages List work packages with filtering
get_work_package Get work package details
create_work_package Create a new work package
update_work_package Update an existing work package
add_work_package_comment Add a comment to a work package
list_relations List relations for a work package
create_relation Create a relation between work packages
delete_relation Delete a relation
list_statuses List available statuses
list_types List available types (Task, Bug, Feature, etc.)
list_priorities List available priorities
get_me Get authenticated user profile
list_users List all users
list_time_entries List time entries
log_time Log time on a work package
list_versions List project versions/milestones
list_work_package_activities List work package activity history

Project Structure

src/
  index.ts      — Entry point, server bootstrap, tool registration
  client.ts     — OpenProject API v3 HTTP client
  tools.ts      — MCP tool definitions with Zod schemas
  handlers.ts   — Tool handlers (API calls + response formatting)

License

Private — Kollect Systems