Skip to main content
Gratona exposes a read-only agent surface for authenticated admins. Agent clients can search and summarize donor, recipient, sponsorship, donation, dashboard, note, activity, saved-view, and report data that the connected admin is already allowed to view in their Gratona workspace. The same backend primitive registry powers REST, MCP, and the repo-local CLI. Do not build integrations that pass a user-supplied client_id; Gratona derives the workspace boundary from the authenticated admin or API key and applies primitive scopes plus Gratona permission sets for every request.

Current MCP Tool Surface

Create, update, delete, and archive tools are hidden by default. Mutation tools should only be enabled after explicit scopes, idempotency keys, audit metadata, confirmation UX, and production tests are complete.

ChatGPT And Codex

Use the production MCP endpoint for public ChatGPT and Codex connections:
Use staging or a short-lived HTTPS tunnel for private Developer Mode tests:
ChatGPT should authenticate with OAuth 2.1 account linking in production. Private developer-mode smoke tests may use a scoped Gratona API key or bearer token, but production API keys must not be placed in query strings. Useful admin prompts:
  • “Find Mattie Charles and summarize her profile, giving, sponsorships, notes, and recent activity.”
  • “Summarize donations for the last 90 days and fetch one donation record.”
  • “Show sponsorship health for Education and one sponsored recipient.”
  • “List saved views and reports that would help me plan today’s follow-up work.”
  • “Show notes and activity for donor 26303.”
  • “What can I access in this Gratona workspace?”
When a prompt does not include enough information for a record-specific lookup, the assistant should ask a short follow-up question instead of guessing.

MCP Endpoints

Every unauthenticated MCP request returns an OAuth bearer challenge with the protected-resource metadata URL so compatible clients can discover the auth configuration.

Auth And Permissions

Gratona enforces access in layers:
  1. Authentication resolves the admin, API key or OAuth token, scopes, and Gratona workspace.
  2. The primitive registry filters discovery and invocation by primitive scope.
  3. Each primitive applies Gratona group permission sets such as donor forms, program access, reports, notes, activity logs, and dashboard permissions.
  4. Record queries always use the server-derived workspace boundary.
Admins can receive donor PII, custom fields, notes, activity, reports, and saved views when their Gratona permissions allow them. The connector does not redact permitted admin data at the app layer; it avoids exposing secrets, request tokens, API keys, payment processor identifiers, trace IDs, and unrelated internal diagnostics.

REST Primitive API

Use REST when you need direct HTTP access from scripts or services.
  • Base URL: https://api.helpyousponsor.com
  • Auth header: X-HYS-API-Key: hys_...
  • Discovery: GET /v3/primitives
  • Primitive schema: GET /v3/primitives/{name}/schema
  • Invoke: POST /v3/primitives/{name}/invoke
  • Dry-run validation: POST /v3/primitives/{name}/validate
Example:

Schema Discovery

Agents can inspect the Gratona data model surface when granted schema:read.
  • GET /v3/schema/models
  • GET /v3/schema/models/{name}
  • GET /v3/schema/enums
  • GET /v3/schema/capabilities
The MCP server exposes model schemas through resources/list and resources/read. Current resources include donor, entity, donation, commitment, program, household, donor-entity relationship, soft credit, form, field, and donor-field schemas.

Scope Planning

Use the smallest key or OAuth grant that still lets the agent do the job. Tool discovery only returns operations the current credentials can use. A broad primitive scope does not bypass Gratona group permissions.