# 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#L4456-L4472)
- **Output:** [`ListObligationsOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4473-L4484)
- **Behavior:** Read only · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L17519–L17530 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L17519-L17530)

### `getObligation` — Get Obligation

Get an obligation by ID.

- **Input:** [`GetObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4486-L4493)
- **Output:** [`GetObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4495-L4501)
- **Behavior:** Read only · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L17531–L17542 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L17531-L17542)

### `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#L4503-L4553)
- **Output:** [`AddObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4555-L4561)
- **Behavior:** Writes data · Non-destructive · Non-idempotent · Closed world
- **Source:** [specification.yaml · L17543–L17554 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L17543-L17554)

### `updateObligation` — Update Obligation

Update an existing obligation.

- **Input:** [`UpdateObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4563-L4620)
- **Output:** [`UpdateObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4622-L4628)
- **Behavior:** Writes data · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L17555–L17566 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L17555-L17566)

### `deleteObligation` — Delete Obligation

Delete an obligation.

- **Input:** [`DeleteObligationInput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4630-L4637)
- **Output:** [`DeleteObligationOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L4639-L4646)
- **Behavior:** Writes data · Destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L17567–L17578 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L17567-L17578)

### `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#L9348-L9364)
- **Output:** [`PublishObligationListOutput`](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L9366-L9377)
- **Behavior:** Writes data · Non-destructive · Idempotent · Closed world
- **Source:** [specification.yaml · L18695–L18706 ↗](https://github.com/getprobo/probo/blob/main/pkg/server/api/mcp/v1/specification.yaml#L18695-L18706)
