OpenProject · Capability

OpenProject API V3 (Stable) — Actions & Capabilities

OpenProject API V3 (Stable) — Actions & Capabilities. 5 operations. Lead operation: List actions. Self-contained Naftiko capability covering one Openproject business surface.

Run with Naftiko OpenprojectActions & Capabilities

What You Can Do

GET
Listactions — List actions
/v1/api/v3/actions
GET
Viewaction — View action
/v1/api/v3/actions/{id}
GET
Listcapabilities — List capabilities
/v1/api/v3/capabilities
GET
Viewglobalcontext — View global context
/v1/api/v3/capabilities/context/global
GET
Viewcapabilities — View capabilities
/v1/api/v3/capabilities/{id}

MCP Tools

list-actions

List actions

read-only idempotent
view-action

View action

read-only idempotent
list-capabilities

List capabilities

read-only idempotent
view-global-context

View global context

read-only idempotent
view-capabilities

View capabilities

read-only idempotent

Capability Spec

openproject-actions-capabilities.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: OpenProject API V3 (Stable) — Actions & Capabilities
  description: 'OpenProject API V3 (Stable) — Actions & Capabilities. 5 operations. Lead operation: List actions. Self-contained
    Naftiko capability covering one Openproject business surface.'
  tags:
  - Openproject
  - Actions & Capabilities
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    OPENPROJECT_API_KEY: OPENPROJECT_API_KEY
capability:
  consumes:
  - type: http
    namespace: openproject-actions-capabilities
    baseUri: https://qa.openproject-edge.com
    description: OpenProject API V3 (Stable) — Actions & Capabilities business capability. Self-contained, no shared references.
    resources:
    - name: api-v3-actions
      path: /api/v3/actions
      operations:
      - name: listactions
        method: GET
        description: List actions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: filters
          in: query
          type: string
          description: JSON specifying filter conditions.
        - name: sortBy
          in: query
          type: string
          description: JSON specifying sort criteria.
    - name: api-v3-actions-id
      path: /api/v3/actions/{id}
      operations:
      - name: viewaction
        method: GET
        description: View action
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: action id which is the name of the action
          required: true
    - name: api-v3-capabilities
      path: /api/v3/capabilities
      operations:
      - name: listcapabilities
        method: GET
        description: List capabilities
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: filters
          in: query
          type: string
          description: JSON specifying filter conditions.
        - name: sortBy
          in: query
          type: string
          description: JSON specifying sort criteria.
    - name: api-v3-capabilities-context-global
      path: /api/v3/capabilities/context/global
      operations:
      - name: viewglobalcontext
        method: GET
        description: View global context
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-v3-capabilities-id
      path: /api/v3/capabilities/{id}
      operations:
      - name: viewcapabilities
        method: GET
        description: View capabilities
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: capability id
          required: true
    authentication:
      type: basic
      username: '{{env.OPENPROJECT_USER}}'
      password: '{{env.OPENPROJECT_PASS}}'
  exposes:
  - type: rest
    namespace: openproject-actions-capabilities-rest
    port: 8080
    description: REST adapter for OpenProject API V3 (Stable) — Actions & Capabilities. One Spectral-compliant resource per
      consumed operation, prefixed with /v1.
    resources:
    - path: /v1/api/v3/actions
      name: api-v3-actions
      description: REST surface for api-v3-actions.
      operations:
      - method: GET
        name: listactions
        description: List actions
        call: openproject-actions-capabilities.listactions
        with:
          filters: rest.filters
          sortBy: rest.sortBy
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v3/actions/{id}
      name: api-v3-actions-id
      description: REST surface for api-v3-actions-id.
      operations:
      - method: GET
        name: viewaction
        description: View action
        call: openproject-actions-capabilities.viewaction
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v3/capabilities
      name: api-v3-capabilities
      description: REST surface for api-v3-capabilities.
      operations:
      - method: GET
        name: listcapabilities
        description: List capabilities
        call: openproject-actions-capabilities.listcapabilities
        with:
          filters: rest.filters
          sortBy: rest.sortBy
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v3/capabilities/context/global
      name: api-v3-capabilities-context-global
      description: REST surface for api-v3-capabilities-context-global.
      operations:
      - method: GET
        name: viewglobalcontext
        description: View global context
        call: openproject-actions-capabilities.viewglobalcontext
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/v3/capabilities/{id}
      name: api-v3-capabilities-id
      description: REST surface for api-v3-capabilities-id.
      operations:
      - method: GET
        name: viewcapabilities
        description: View capabilities
        call: openproject-actions-capabilities.viewcapabilities
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: openproject-actions-capabilities-mcp
    port: 9090
    transport: http
    description: MCP adapter for OpenProject API V3 (Stable) — Actions & Capabilities. One tool per consumed operation, routed
      inline through this capability's consumes block.
    tools:
    - name: list-actions
      description: List actions
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: openproject-actions-capabilities.listactions
      with:
        filters: tools.filters
        sortBy: tools.sortBy
      outputParameters:
      - type: object
        mapping: $.
    - name: view-action
      description: View action
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: openproject-actions-capabilities.viewaction
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: list-capabilities
      description: List capabilities
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: openproject-actions-capabilities.listcapabilities
      with:
        filters: tools.filters
        sortBy: tools.sortBy
      outputParameters:
      - type: object
        mapping: $.
    - name: view-global-context
      description: View global context
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: openproject-actions-capabilities.viewglobalcontext
      outputParameters:
      - type: object
        mapping: $.
    - name: view-capabilities
      description: View capabilities
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: openproject-actions-capabilities.viewcapabilities
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.