# 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#L4703-L4719)
- **Output:** [`ListObligationsOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4720-L4731)
- **Behavior:** Read only · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L18548–L18559 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L18548-L18559)

### `getObligation` — Get Obligation

Get an obligation by ID.

- **Input:** [`GetObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4733-L4740)
- **Output:** [`GetObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4742-L4748)
- **Behavior:** Read only · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L18560–L18571 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L18560-L18571)

### `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#L4750-L4800)
- **Output:** [`AddObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4802-L4808)
- **Behavior:** Writes data · Non-destructive · Non-idempotent · Closed world
- **Source:** [specification.yaml · L18572–L18583 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L18572-L18583)

### `updateObligation` — Update Obligation

Update an existing obligation.

- **Input:** [`UpdateObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4810-L4867)
- **Output:** [`UpdateObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4869-L4875)
- **Behavior:** Writes data · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L18584–L18595 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L18584-L18595)

### `deleteObligation` — Delete Obligation

Delete an obligation.

- **Input:** [`DeleteObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4877-L4884)
- **Output:** [`DeleteObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4886-L4893)
- **Behavior:** Writes data · Destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L18596–L18607 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L18596-L18607)

### `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#L9999-L10015)
- **Output:** [`PublishObligationListOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L10017-L10028)
- **Behavior:** Writes data · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L19796–L19807 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L19796-L19807)
