MCP server · Work management

OpenProject MCP server

OpenProject in any MCP client, through Memtro: OpenProject does not publish this server. Memtro's OpenProject connector reads OpenProject through its API with the credentials you connect, and one endpoint hands those tools, every other system you connect and Memtro's memory tools to Claude Code, Cursor, Claude Desktop or anything else that speaks Streamable HTTP, as you.

What the model can do

OpenProject projects, work packages with type, status, assignee and dates, their comments and history, time entries, types and statuses; can also create, change or delete work packages, comment on them and edit comments, relate them, add or remove watchers, log, correct or delete time, create and change versions, create, change, archive or delete projects, create meetings, and lock or unlock user accounts when you ask. Writes are sent with notifications off wherever OpenProject offers the switch.

Reads

  • openproject_list_projectsOpenProject projects (and, from 17.0, programs and portfolios) the user can see: id, identifier, name, whether active…
  • openproject_list_work_packagesOpenProject work packages, most recently updated first: id, subject, type, status, priority, project, assignee…
  • openproject_get_work_packageOne OpenProject work package in full, with its activity: comments…
  • openproject_list_time_entriesTime logged in OpenProject: date, hours, person, project, work package, activity and comment, with the total.
  • openproject_list_types_and_statusesThe work package types (Task, Bug, Milestone…) and statuses (New, In progress, Closed…) on this OpenProject, with their ids…
  • openproject_list_usersOpenProject users by name or login, with their ids and status, for adding a watcher or assigning work.
  • openproject_list_versionsVersions (releases, milestones) available in an OpenProject project, including ones shared into it: id, name, status, start and end dates…

Acts, when you ask

These change something in OpenProject. The model is told to use them only when you ask for exactly that, and each one is granted by name: per team on a shared connection, by the owner on a personal one.

  • openproject_create_work_packageCreate a work package in an OpenProject project.
  • openproject_add_commentComment on an OpenProject work package, as the token's user.
  • openproject_log_timeLog time on an OpenProject work package, as the token's user.
  • openproject_update_work_packageChange an existing OpenProject work package: subject, description, status, assignee, priority, start or due date.
  • openproject_delete_work_packageDELETE an OpenProject work package, with its comments, history and attachments (time logged on it may be deleted with it).
  • openproject_create_relationRelate one OpenProject work package to another: relates, duplicates, duplicated, blocks, blocked, precedes, follows (with an optional lag in days)…
  • openproject_delete_relationRemove a relation between two OpenProject work packages, by the relation id (shown when it was created, or on the work package's Relations tab).
  • openproject_add_watcherAdd a person as a watcher of an OpenProject work package (user id from openproject_list_users, only somebody the user named).
  • openproject_remove_watcherStop a person watching an OpenProject work package, so they are no longer notified of its changes.
  • openproject_update_time_entryCorrect a logged OpenProject time entry (ids from openproject_list_time_entries): hours, the day, the activity or the comment.
  • openproject_delete_time_entryDELETE a logged OpenProject time entry.
  • openproject_edit_commentReplace the text of a comment on an OpenProject work package (the activity id from openproject_get_work_package).
  • openproject_create_versionCreate a version (a release or milestone) in an OpenProject project.
  • openproject_update_versionChange an OpenProject version: name, description, dates, status (open, locked against new work packages, or closed) or sharing.
  • openproject_create_projectCreate an OpenProject project, optionally under a parent.
  • openproject_update_projectChange an OpenProject project: rename it, replace its description or status explanation, or archive it…
  • openproject_delete_projectDELETE an OpenProject project permanently, with all its work packages, time entries, wiki, files and sub-projects.
  • openproject_create_meetingCreate a meeting in an OpenProject project at a start time for a duration.
  • openproject_lock_userChanges access.
  • openproject_unlock_userChanges access.

Connect it

First connect OpenProject on Dashboard → Connections, then add Memtro to your client once. The OpenProject tools appear alongside the tools of everything else you have connected; nothing is configured per connector.

Claude Code

The Memtro plugin registers the server and a skill for when to use it; the tools are then available in every session.

claude plugin marketplace add memtro-org/claude-memtro
claude plugin install memtro@memtro --config api_key=sk-memtro-...

Cursor

Add the server to .cursor/mcp.json in the project, or to the global file under ~/.cursor/.

{
  "mcpServers": {
    "memtro": {
      "url": "https://platform.memtro.com/api/mcp",
      "headers": {
        "Authorization": "Bearer sk-memtro-..."
      }
    }
  }
}

Claude Desktop

Create a personal API key on Dashboard → Profile → API keys. In Claude Desktop add an MCP server of type HTTP with URL https://platform.memtro.com/api/mcp and the header Authorization: Bearer sk-memtro-…

OpenCode

A remote server in opencode.json.

{
  "mcp": {
    "memtro": {
      "type": "remote",
      "url": "https://platform.memtro.com/api/mcp",
      "headers": {
        "Authorization": "Bearer sk-memtro-..."
      }
    }
  }
}

Pi

One command: pi mcp add memtro --url https://platform.memtro.com/api/mcp --bearer-token-env-var MEMTRO_API_KEY. Tools arrive as mcp__memtro__*. The pi-memtro extension registers it for you, alongside Memtro as the model.

Any other client

Add an MCP server of type HTTP (Streamable HTTP, stateless) at https://platform.memtro.com/api/mcp with the header Authorization: Bearer sk-memtro-.... Codex, Zed, Windsurf, Cline and the SDKs all take a remote server this way.

Who may use it

The key identifies the person, and the server offers that person the tools they may use everywhere else in Memtro. A shared OpenProject connection is used by the teams an administrator granted it to, tool by tool, on the Permissions page; a personal connection is used by its owner alone, and its tools that act stay off until the owner allows them. See Teams and permissions and Connectors.

Ask it like this

  • › Which work packages in the Platform project are overdue?
  • › What changed on work package 1432 since Monday?
  • › How many hours did the team log on the Northwind rollout last month?
  • › Comment on work package 1432 that the vendor confirmed the date
  • › Mark work package 1520 as blocked by 1432 and add Priya as a watcher

Questions

Is this an official OpenProject MCP server?
No. It is Memtro's MCP server with Memtro's OpenProject connector behind it: the connector reads OpenProject through its API with the credentials you connect on Dashboard → Connections, and OpenProject publishes nothing here. The same endpoint carries every other system you connect and Memtro's memory tools.
What does it cost?
Nothing on top of Memtro. One price per organisation by its number of users, from $50 a month for up to 10 users after a 7-day free trial, with every connector, the MCP server, jobs and memory included. You bring your own model keys.
Can it change anything in OpenProject?
Only when you ask, and only what it has been granted: create a work package in a project; comment on a work package; log time on a work package; change a work package's subject, description, status, assignee, priority or dates; delete a work package; relate two work packages (blocks, follows, duplicates and so on); remove a relation between work packages; add a watcher to a work package; remove a watcher from a work package; correct a logged time entry; delete a logged time entry; edit a comment on a work package; create a version; change a version's name, dates, status or sharing; create a project; rename, re-describe, archive or unarchive a project; delete a project and everything in it (permanent); create a meeting; lock a user account; unlock a user account. Every other tool reads, searches or lists. An administrator grants each acting tool by name per team, and a personal connection acts only after its owner allows it.
Which clients work?
Any MCP client that speaks Streamable HTTP: Claude Code, Cursor, Claude Desktop, OpenCode, Codex, Zed, Windsurf, Cline and the Anthropic and OpenAI SDKs. There is no local process to run; the server is remote and authenticated with your key.

Other MCP servers · Work management

Where agents remember your company

Sign in, add a provider key, create an API key and point your tools at Memtro. It takes about five minutes.

7-day free trial · card on file, nothing charged until it ends · cancel any time