OpenProject

OpenProject

OpenProject: projects, work packages with their activities, versions, time entries, users and statuses, queried with OpenProject's filter grammar. API v3, Basic auth with the literal username `apikey`.

7-day free trial · No credit card · EU-hosted

Ask OpenProject anything

Try a real prompt against OpenProject via AnythingMCP — Claude calls the tools, returns the answer. Press Enter on your own message to install on Cloud.

Install OpenProject on Cloud
OpenProject · live via MCP
Share
Opus 4.7

Claude is AI and can make mistakes. Please double-check responses.

Setup in 2 minutes

  1. 1Start a free trial on cloud.anythingmcp.com.
  2. 2Click OpenProject in the connector store. Paste credentials when prompted.
  3. 3Mint an MCP API key and point your AI client at the generated MCP URL.
Install OpenProject now

Guides for OpenProject

Step-by-step setup for the most popular AI clients.

Setting up OpenProject

From the connector definition itself: where to find the credentials, what they need to be allowed to do, and which API this adapter talks to.

Getting a key

  1. In OpenProject open My Account → Access tokens and generate an API token.
  2. Set OPENPROJECT_URL to your instance root (no trailing slash) and OPENPROJECT_API_KEY to the token.

The Basic-auth username is the literal string apikey. Not your login name — the word apikey, with the token as the password. This adapter does it for you, and it is the first thing to check when a token you know is valid returns 401.

Permissions follow the user. The token inherits its owner's project memberships and roles. A project the user is not a member of is simply absent from the results, not an error.

Filters are a JSON array of single-key objects: [{"status":{"operator":"o","values":[]}},{"assignee":{"operator":"=","values":["42"]}}]. Operators are OpenProject's own short codes — o open, c closed, = equals, ! not, ~ contains, <>d between dates, t today, >t- in the last N days. The filter string is passed through verbatim so the whole grammar stays available.

Responses are HAL+JSON. Rows live in _embedded.elements, related resources are links under _links and paging is _links.nextByOffset. Fields like assignee arrive as a link with a title, which is usually the readable name you want without another call.

Durations are ISO 8601: estimatedTime of PT8H is eight hours, P2D is two days. They are not numbers.

Self-hosted, which is the thing to plan for.

  • On AnythingMCP Cloud the instance must be reachable from the public internet on a real hostname with a valid TLS certificate. A self-signed certificate will fail: the connector offers no trust-anything switch.
  • On an internal host (op.intern, 10.0.0.x), self-host AnythingMCP on the same network and add that host to SSRF_ALLOWED_HOSTS, or the outbound guard refuses the call before it is made.

Your AI is two clicks away from OpenProject.

Install the connector, paste your credentials, ask your AI a question. 7-day free trial, no credit card.