com.videtion.hub/agent-hub
name:com.videtion.hub/agent-hub
Agent-to-business commerce sandbox: intents, offers, bookings. Demo data, ed25519-signed calls.
- transport:
- remote
- credential class:
- self-provisionable
Owner verification
Not yet verified. Verifying proves you control this server and is free, permanently — it never changes a published score.
Start verification →Tools
- approve_pendingshallow
STEP 5b, only when confirm_booking answered PENDING_APPROVAL. Finalizes that approval once the seller side has decided. payload = { approval_id } (from the confirm_booking response). SIDE EFFECTS: settles the booking into its final state. Calling it before the decision exists is rejected — this tool does not grant the approval, it collects the outcome.
- confirm_bookingshallow
STEP 5, the committing call — turns a hold into a booking. payload = { hold_id } (from hold_slot). Your envelope signature IS the buyer signature on the resulting booking, so this is a non-repudiable act: do not call it speculatively. SIDE EFFECTS: returns either a CONFIRMED booking, or PENDING_APPROVAL + { approval_id } when the seller policy demands a human — in that case finish with approve_pending. Requires the booking.confirm capability. Sandbox: bookings are against demo inventory and bind nobody in the real world.
- hold_slotshallow
STEP 4. Reserves the slot behind an offer so nobody else takes it while you decide. payload = { offer_id } (from list_offers). SIDE EFFECTS: takes exclusive, EXPIRING ownership of a real inventory slot — returns { hold_id } with an expires_at (epoch ms). Let it lapse and the slot returns to the pool; this is not yet a booking. Requires the slot.hold capability, which self-registered buyers get by default.
- list_offersshallow
STEP 3. Reads the offers sellers made against your own intent, cheapest first. payload = { intent_id } (the id returned by send_intent). Read-only, no side effects. You can only list offers on intents your own agent created. Each offer carries offer_id, price, currency, slot and expires_at (epoch ms) — expired offers cannot be held, so read the slot before calling hold_slot.
- register_agentshallow
STEP 1 of the buy flow, and the ONLY tool that needs no existing credentials — start here. Registers a new buyer agent by proof-of-possession: sign the envelope with the private key matching payload.public_key. payload = { public_key: <ed25519 public key, 64 hex chars>, principal?: { type?: "user", name?: string } }. SIDE EFFECTS: creates a persistent agent record and issues a passport valid 30 days; returns { ok: true, agent_id, passport }. Grants buyer capabilities only (catalog.read, slot.hold, booking.confirm) — business principals, business_id and seller capabilities are refused (403). Rate limit: 20 registrations/hour/IP. This is a public sandbox with demo inventory; nothing here is a real-world commitment. Protocol: https://hub.videtion.com/spec
- send_intentshallow
STEP 2. States what you want to buy; sellers answer it with offers. Requires a registered agent_id. payload = a structured Intent: { type: string, location: string, product?: object, service?: string, availability?: { before?: string, after_time?: string }, budget?: { currency: <3-letter>, max: number } }. MATCHING: sellers quote off product.size — ONE string, e.g. "225/45 R18". An intent without it gets zero offers and a no_offer_reasons[].hint saying so; do not split the size into width/profile/diameter. The demo inventory answers this exact one: {"type":"car_tires","location":"Wroclaw","product":{"size":"225/45 R18","season":"winter","qty":4},"budget":{"currency":"PLN","max":800}}. SIDE EFFECTS: persists the intent and exposes it to seller agents for matching; returns { intent_id }. Default limit: 100 intents/hour/agent. Natural-language intents are REST-only — MCP takes structured payloads.
Embed this server’s score
Tool count and median score across every tool in this server’s corpus — honest in a way a single cherry-picked tool’s badge wouldn’t be.
[](https://vouch.tools/servers/cd38820a-7041-4d52-a90a-da3c7f2cbc9e)