# get_proposal

Read one proposal by id, including complete canonical meaning, status, owner, cases and historical reasoning. Describe it plainly. To edit, copy the complete meaning and change only what the person requested, preserving quotes and unchanged scope and cases. Clarify material ambiguity before writing. There is no stored question workflow or question-based agreement gate. A proposal still requires its named owner's agreement.

Reviewed 2026-10-01. Read the [current operating instructions](https://app.balladeer.ai/agent) and the [tool index](/docs/mcp-reference.md). This reference does not authorize the action.

## Parameters

```json
{
  "type": "object",
  "properties": {
    "proposalId": {
      "description": "The proposal id, as it appears on its review page and in a propose answer.",
      "type": "string",
      "pattern": "^cand_[a-z0-9]{8,64}$"
    }
  },
  "required": [
    "proposalId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
```

## Effect annotations

```json
{
  "readOnlyHint": true,
  "destructiveHint": false,
  "idempotentHint": true,
  "openWorldHint": false
}
```
