# Obligations MCP tools

This page documents **6 tools** in the obligations group. Return to the [complete MCP tool reference](/docs/developers/api/mcp/tools) to browse another group.

Select a tool to inspect its schemas and behavior. Schema links open the exact definition in GitHub.

### `listObligations` — List Obligations

List all obligations for the organization.

- **Input:** [`ListObligationsInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4432-L4448)
- **Output:** [`ListObligationsOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4449-L4460)
- **Behavior:** Read only · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L16423–L16434 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L16423-L16434)

### `getObligation` — Get Obligation

Get an obligation by ID.

- **Input:** [`GetObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4462-L4469)
- **Output:** [`GetObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4471-L4477)
- **Behavior:** Read only · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L16435–L16446 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L16435-L16446)

### `addObligation` — Add Obligation

Add a new obligation to the organization.

- **Input:** [`AddObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4479-L4529)
- **Output:** [`AddObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4531-L4537)
- **Behavior:** Writes data · Non-destructive · Non-idempotent · Closed world
- **Source:** [specification.yaml · L16447–L16458 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L16447-L16458)

### `updateObligation` — Update Obligation

Update an existing obligation.

- **Input:** [`UpdateObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4539-L4596)
- **Output:** [`UpdateObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4598-L4604)
- **Behavior:** Writes data · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L16459–L16470 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L16459-L16470)

### `deleteObligation` — Delete Obligation

Delete an obligation.

- **Input:** [`DeleteObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4606-L4613)
- **Output:** [`DeleteObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4615-L4622)
- **Behavior:** Writes data · Destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L16471–L16482 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L16471-L16482)

### `publishObligationList` — Publish Obligation List

Publish the obligation register for an organization as a document. If a document already exists, a new version is created.

- **Input:** [`PublishObligationListInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L8922-L8938)
- **Output:** [`PublishObligationListOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L8940-L8951)
- **Behavior:** Writes data · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L17515–L17526 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L17515-L17526)
