get_me_certificates

Read-only

Calls GET /api/me/certificates as the signed-in person · REST reference

The donor's thank-you certificates

Scoped by the proved identity: a donor token (email preferred, else phone) or a platform session (its email). The stored PDF location is an s3:// URI the browser cannot fetch, so it is NOT on this wire: the list reports only whether a PDF exists, and the file is reached through GET /api/me/certificates/{id}/download, which mints a short-lived presigned URL at click time.

Arguments

This tool takes no arguments.

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_me_certificates",
    "arguments": {}
  }
}

Result

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

The donor's certificates. An empty array when none match.

json
{
  "certificates": [
    {
      "amount": 1,
      "dogsHelped": 1,
      "hasPdf": true,
      "id": "11111111-1111-4111-8111-111111111111",
      "issuedAt": 1
    }
  ]
}

Fields

FieldTypeDescription
certificatesarray of object
certificates[].amountintegerCENTS.
certificates[].dogsHelpedinteger | nullWhole dog spays this gift funds. Set on major gifts only.
certificates[].hasPdfbooleanWhether a rendered PDF exists. False when storage was degraded at issue time; the download route 404s for such a certificate.
certificates[].idstring (uuid)
certificates[].issuedAtinteger | nullEpoch MILLISECONDS, straight off the DAL entity.

When it fails

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

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_me_certificates",
  "description": "GET /api/me/certificates — Scoped by the proved identity: a donor token (email preferred, else phone) or a platform session (its email). The stored PDF location is an `s3://` URI the browser cannot fetch, so it is NOT on this wire: the list reports only whether a PDF exists, and the file is reached through GET /api/me/certificates/{id}/download, which mints a short-lived presigned URL at click time.",
  "inputSchema": {
    "type": "object",
    "properties": {}
  },
  "annotations": {
    "readOnlyHint": true,
    "openWorldHint": false
  }
}