get_orgs_by_id

Read-only

Calls GET /api/orgs/{id} as the signed-in person · REST reference

Get one organization

The caller must hold org.view IN this organization, or be platform staff. 404 only for an organization that is not there (an id that is not a UUID names none); a failed read is 500, or 503 when the DAL cannot be reached.

Arguments

ArgumentTypeDescription
idpathstring (uuid)requiredOrganization id. Not format-validated by this route.

Example call

A client sends this over the MCP session; Claude and other agents build it for you. The values are placeholders — the shape is real.

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_orgs_by_id",
    "arguments": {
      "id": "11111111-1111-4111-8111-111111111111"
    }
  }
}

Result

On success (HTTP 200) the tool returns one text item holding the API's JSON, pretty-printed.

The organization as the Org model wrapper serialises it — a bare object, no envelope. createdAt is an ISO-8601 string; the remaining timestamps are epoch milliseconds straight off the DAL entity.

json
{
  "createdAt": "2026-01-15T12:00:00Z",
  "id": "11111111-1111-4111-8111-111111111111",
  "name": "string",
  "status": "string",
  "type": "string",
  "address": "string",
  "deleted": true,
  "email": "string",
  "parentId": "11111111-1111-4111-8111-111111111111",
  "phone": "string",
  "taxId": "string",
  "updatedAt": 1
}

Fields

FieldTypeDescription
addressstring | null
createdAtstring (date-time)
deletedboolean
emailstring | null
idstring (uuid)
namestring
parentIdstring (uuid) | null
phonestring | null
statusstringPENDING | APPROVED | SUSPENDED, or whatever the DAL node holds.
taxIdstring | null
typestring
updatedAtinteger | nullEpoch milliseconds.

When it fails

A failed call returns isError: true with the API's message as text.

403

The caller holds org.view in this organization neither directly nor as platform staff (or holds a donor token).

404

No such organization. A failed read is never answered here.

What the model is shown

This is the tool exactly as the server lists it in tools/list. The description starts with the REST call it makes.

json
{
  "name": "get_orgs_by_id",
  "description": "GET /api/orgs/{id} — The caller must hold `org.view` IN this organization, or be platform staff. 404 only for an organization that is not there (an id that is not a UUID names none); a failed read is 500, or 503 when the DAL cannot be reached.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "id": {
        "type": "string",
        "description": "Organization id. Not format-validated by this route."
      }
    },
    "required": [
      "id"
    ]
  },
  "annotations": {
    "readOnlyHint": true,
    "openWorldHint": false
  }
}