GAIP Buyer Assurance Agent
Delivery Assurance: records a buyer's service request and checks what was delivered.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"gaip-buyer-assurance": {
"url": "https://www.gaipagents.com/mcp/agents/buyer-assurance"
}
}
}Remote endpoints
https://www.gaipagents.com/mcp/agents/buyer-assurancestreamable-httpWhat it can do
Tool inventory
Tools (3)
🟢assurance_prepare(checks, counterparty_id, data_classification, episode_id, explicit_read_only_consent, ...)
Use this when you, the buyer, chose a public service and want its delivery checked end to end. Pass `service_url`, `checks` and explicit_read_only_consent=true. GAIP preflights it and records your checks; returns a `terms_id` for assurance_complete. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Input Schema
{
"type": "object",
"properties": {
"checks": {
"description": "Checks: http_status_in {allowed}, content_type_is {value}, non_empty, json_parses.",
"maxItems": 8,
"minItems": 1,
"type": "array"
},
"counterparty_id": {
"description": "Name or URL of the agent or service.",
"type": "string"
},
"data_classification": {
"default": "PUBLIC",
"description": "PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.",
"enum": [
"PUBLIC",
"NON_PERSONAL_PUBLIC"
],
"type": "string"
},
"episode_id": {
"description": "Optional: your own id to group related calls.",
"type": "string"
},
"explicit_read_only_consent": {
"const": true,
"description": "Must be true: you consent to a public, read-only check."
},
"service_url": {
"description": "Public https URL of the service.",
"type": "string"
},
"task_class": {
"description": "Optional: short name of the task, e.g. weather_forecast.",
"type": "string"
}
},
"required": [
"service_url",
"checks",
"explicit_read_only_consent"
],
"examples": [
{
"checks": [
{
"allowed": [
200
],
"id": "http_status_in"
},
{
"id": "json_parses"
}
],
"counterparty_id": "example-weather-agent",
"explicit_read_only_consent": true,
"service_url": "https://weather.example.com/forecast.json",
"task_class": "weather_forecast"
}
]
}🟢assurance_complete(body, body_sha256, content_type, data_classification, http_status, ...)
Use this when finishing a Buyer Assurance check. Pass the `terms_id` from assurance_prepare and mode PUBLIC_REPLAY (GAIP replays the service) or BUYER_SUBMITTED. Returns PASS / FAIL / UNKNOWN per check and a delivery receipt. Free, no account; records a GAIP receipt only. Inputs must be public and non-personal.
Input Schema
{
"type": "object",
"properties": {
"body": {
"description": "BUYER_SUBMITTED: the response body you received (max 32 KiB).",
"type": "string"
},
"body_sha256": {
"description": "BUYER_SUBMITTED: SHA-256 of the body, instead of the body.",
"type": "string"
},
"content_type": {
"description": "BUYER_SUBMITTED: the Content-Type you received.",
"type": "string"
},
"data_classification": {
"default": "PUBLIC",
"description": "PUBLIC (default) or NON_PERSONAL_PUBLIC. Never send personal data.",
"enum": [
"PUBLIC",
"NON_PERSONAL_PUBLIC"
],
"type": "string"
},
"http_status": {
"description": "BUYER_SUBMITTED: the HTTP status you received.",
"type": "integer"
},
"mode": {
"description": "PUBLIC_REPLAY: GAIP fetches the public URL itself. BUYER_SUBMITTED: check a response you pass in.",
"enum": [
"BUYER_SUBMITTED",
"PUBLIC_REPLAY"
]
},
"terms_id": {
"description": "The terms_id returned when the terms were registered.",
"type": "string"
}
},
"required": [
"terms_id",
"mode"
],
"examples": [
{
"mode": "PUBLIC_REPLAY",
"terms_id": "<terms_id from assurance_prepare>"
}
]
}🟢assurance_verify(receipt_id)
Use this when you hold a Buyer Assurance terms or delivery receipt_id and want to confirm it. Returns the retained record and its integrity proof (integrity only). Free, read-only, no account; inputs must be public and non-personal.
Input Schema
{
"type": "object",
"properties": {
"receipt_id": {
"description": "A receipt_id returned by an earlier GAIP call.",
"type": "string"
}
},
"required": [
"receipt_id"
],
"examples": [
{
"receipt_id": "<receipt_id from assurance_prepare or assurance_complete>"
}
]
}Community
Evidence