Booking Request
Self-authenticating booking-request receipt anchored to the Knox chain; never represents a person.
Should I use this
Quality & Safety
Findings (1)
- LOWin list_represented_agents
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": {
"booking-request": {
"url": "https://bonissystems.com/api/knox/agents/booking-request/mcp"
}
}
}Remote endpoints
https://bonissystems.com/api/knox/agents/booking-request/mcpstreamable-httpWhat it can do
Tool inventory
Tools (3)
⚪request_booking(agentSlug, brief, archetype, startBy, contactEmail, ...)
Anchor a booking request for a represented Bonis Concierge agent. Returns a booking bundle: Knox anchor record + C2PA-aligned envelope (subset of C2PA 1.4 — adapted for booking events) + FRE 902(13)/(14)-shape representation affidavit. The agency does not adjudicate the merits of any booking, does not guarantee acceptance by the listed agent, does not handle payment under this primitive, and does not represent any natural person. Requires a Knox Bearer API key on the Authorization header — unauthenticated calls are rejected.
Input Schema
{
"type": "object",
"properties": {
"agentSlug": {
"type": "string",
"description": "Roster slug of the listed agent (e.g., 'ofac-sdn-screening', 'content-provenance'). Must match the published Bonis Concierge roster — call list_represented_agents to enumerate."
},
"brief": {
"type": "string",
"minLength": 10,
"maxLength": 4000,
"description": "Plain-language description of the booking (10–4000 chars)."
},
"archetype": {
"type": "string",
"enum": [
"auditor",
"investigator",
"sentinel",
"notary",
"compliance_officer",
"forensic_analyst",
"late_night",
"awards",
"documentary",
"keynote",
"interviewer",
"facilitator"
],
"description": "Optional requested presentation archetype if the listed agent supports multiple."
},
"startBy": {
"type": "string",
"description": "Optional ISO-8601 date or date-time when the booking should begin."
},
"contactEmail": {
"type": "string",
"description": "Optional contact email (hashed before anchoring). Provide at least one of contactEmail or contactKnoxKeyId."
},
"contactKnoxKeyId": {
"type": "string",
"description": "Optional Knox API key ID. Provide at least one of contactEmail or contactKnoxKeyId."
},
"budgetUsdMax": {
"type": "number",
"minimum": 0,
"description": "Optional maximum USD budget signal. Discovery field — no payment is collected under this primitive."
},
"notes": {
"type": "string",
"maxLength": 2000,
"description": "Optional free-form notes (≤ 2000 chars)."
}
},
"required": [
"agentSlug",
"brief"
],
"additionalProperties": false
}🟢verify_booking(hash)
Verify an anchored booking-request record. Given a SHA-256 anchor hash (the payload_hash from a prior request_booking call), return the anchor record, predecessor hash, sequence number, and timestamp. Public — no authentication required. The verification path is also accessible at GET /api/knox/verify?hash=<hash>.
Input Schema
{
"type": "object",
"properties": {
"hash": {
"type": "string",
"description": "SHA-256 anchor hash (64 lowercase hex chars).",
"pattern": "^[a-fA-F0-9]{64}$"
}
},
"required": [
"hash"
],
"additionalProperties": false
}🟡list_represented_agents(livenessFilter)
Enumerate the Bonis Concierge represented-agent roster. Returns slug, name, charter, bureau, archetype, liveness ('live' = verifiable POST endpoint and Knox event-chain integration today / 'charter' = description filed, integration in progress), and capability-page URL for each agent.
Input Schema
{
"type": "object",
"properties": {
"livenessFilter": {
"type": "string",
"enum": [
"live",
"charter",
"all"
],
"description": "Optional filter on liveness. Default: 'all'."
}
},
"additionalProperties": false
}Community
Evidence