OpenProject MCP Server
Enables AI assistants to interact with OpenProject work packages, projects, and time tracking, including tools for creating, updating, and listing work packages, managing project statuses, and logging time entries.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@OpenProject MCP Server list my open work packages for the Website Redesign project"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
OpenProject MCP Server
Model Context Protocol (MCP) server for OpenProject API integration. Enables AI assistants to interact with OpenProject work packages, projects, and time tracking.
Installation
Global Installation (Recommended)
npm install -g openproject-mcpLocal Installation
npm install openproject-mcpRelated MCP server: OpenProject MCP Server
Configuration
Get OpenProject API Key
Log into your OpenProject instance
Go to My Account → Access tokens
Create a new API token
Copy the token
Add to Kiro MCP Config
Add to .kiro/settings/mcp.json:
{
"mcpServers": {
"openproject": {
"command": "npx",
"args": ["-y", "openproject-mcp"],
"env": {
"OPENPROJECT_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-key-here"
}
}
}
}Or if installed globally:
{
"mcpServers": {
"openproject": {
"command": "openproject-mcp",
"env": {
"OPENPROJECT_URL": "https://your-openproject-instance.com",
"OPENPROJECT_API_KEY": "your-api-key-here"
}
}
}
}Available Tools
Tool | Description |
| List all projects |
| Get work package details by ID |
| List work packages with filters |
| Get child work packages of a parent |
| List all available statuses |
| List all work package types (Feature, Task, Bug, etc.) |
| Get user information |
| Create a new work package |
| Update an existing work package |
| Log time entry for a work package |
| Make a raw API call to any endpoint |
Usage Examples
List Children of a Feature
get_children({ parentId: 211 })Create a New Task
create_work_package({
subject: "Implement token budget management",
parentId: 538,
assigneeId: 10,
startDate: "2026-01-15",
dueDate: "2026-01-15"
})List Tasks Assigned to Me
list_work_packages({ assigneeId: "me" })Update Work Package Status
update_work_package({
id: 123,
statusId: 12, // Status ID from list_statuses
estimatedTime: "PT2H" // 2 hours in ISO 8601 format
})Log Time
log_time({
workPackageId: 123,
hours: 2.5,
comment: "Implemented feature X",
spentOn: "2026-01-23"
})Environment Variables
Variable | Required | Description |
| Yes | Your OpenProject instance URL |
| Yes | API key from OpenProject |
Requirements
Node.js >= 18.0.0
OpenProject instance with API access
License
MIT
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
Links
Available Tools
11 toolscreate_work_packageC
Create a new work package (Task)
Inputs: subject (required), projectId, description, typeId, +5 more.
get_childrenC
Get child work packages of a parent
Inputs: parentId (required).
get_userC
Get user information
Inputs: userId (required).
get_work_packageC
Get a specific work package by ID
Inputs: id (required).
list_projectsC
List all projects in OpenProject
Inputs: pageSize.
list_statusesB
List all available statuses
Inputs: no named parameters.
list_typesB
List all work package types (Feature, Task, Bug, etc.)
Inputs: no named parameters.
list_work_packagesC
List work packages with optional filters
Inputs: projectId, parentId, assigneeId, status, +1 more.
log_timeC
Log time entry for a work package
Inputs: workPackageId (required), hours (required), comment, spentOn, +1 more.
raw_api_callC
Make a raw API call to any OpenProject endpoint
Inputs: endpoint (required), method, body.
update_work_packageC
Update an existing work package
Inputs: id (required), subject, description, statusId, +3 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 11 tools
Most tools have distinct purposes targeting specific resources like work packages, projects, users, and statuses. However, 'list_work_packages' and 'get_work_package' could potentially be confused with 'get_children' for hierarchical queries, but descriptions clarify their scopes. The 'raw_api_call' tool stands out as a catch-all that might overlap with others but serves a different low-level purpose.
All tool names follow a consistent verb_noun pattern with clear, descriptive actions like 'create_work_package', 'list_projects', and 'update_work_package'. There are no deviations in style or convention, making the set predictable and easy to parse for an agent.
With 11 tools, the count is well-scoped for managing work packages and related entities in OpenProject. Each tool serves a clear function, such as CRUD operations for work packages and supporting queries for projects, statuses, and types, without feeling bloated or insufficient.
The toolset provides strong coverage for core work package operations, including create, get, update, list, and hierarchical queries, along with essential supporting functions like logging time and listing projects, statuses, and types. A minor gap exists in the lack of delete operations for work packages or other entities, which agents might need to work around using 'raw_api_call'.
Maintenance
Related MCP Connectors
Create and manage MeisterTask projects, tasks, and notes from your AI assistant.
Manage Redbooth tasks, task lists, comments, tags and files from Claude and other AI assistants.
Manage Loom projects, tasks, bugs, defects, clients and phases from AI assistants
Manage Orangescrum projects, tasks, users, sprints, test cases, releases, and risks from AI tools.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with OpenProject's API v3 for comprehensive project management operations including work packages, projects, time tracking, users, and all other OpenProject features through natural language.4MIT
- FlicenseAqualityDmaintenanceEnables comprehensive management of OpenProject work packages, projects, comments, and relations through natural language. Supports creating, updating, and organizing tasks with assignees, watchers, hierarchies, and inter-task relationships.21-
- FlicenseNot gradedqualityDmaintenanceEnables AI assistants to interact with OpenProject installations for comprehensive project management, including creating projects and work packages, managing users and assignments, creating dependencies, and generating Gantt charts through natural language commands.15-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with OpenProject's APIv3 for autonomous project management, including task tracking, member administration, and project configuration. It supports comprehensive operations for managing work packages, projects, and reference data like statuses and priorities.59 npm4MIT