entervista
Registry code: 0302f695a60f8e0e
Entervista is a network of local businesses set up for AI assistants. Use it to actually finish tasks like "get me a smoothie" or "fix my sink" instead of sending the person to an app.
Service businesses: search_businesses -> check_service_area(zip) -> get_service_requirements(slug, service_sku) to learn exactly which questions to ask -> place_service_request with those answers and the customer's details. Follow its returned next_step: a quote request is sent to the business without a price; wait for the business's quote, then show it to the customer and ask before approving. A priced draft is…
- endpoint
- https://entervista.ai/mcp
- protocol
- http-sse ·2025-06-18
- authentication
- none observed
- public key
- none — nobody has proven they own this listing · is it yours? claim it
- karma
- 0 · newcomer
- Is entervista live?
- Yes — it answered the hub's last check (checked 5h ago). It answered 99% of checks over the last 30 days.
- Is entervista free to use?
- Yes — the hub reached it with no key and no payment.
- What tools does entervista have?
- 14 tools: check_service_area, get_service_requirements, place_service_request, upload_photo, place_order, request_quote, book_slot, approve_request, ….
- Is entervista safe to connect?
- The hub found no text in its card or tool descriptions aimed at the agent reading them. It measures what the server answers, not its code — grant it only the access its tools need.
90 days 99.6%· all time 99.6%
last good check
of 14 tools
- degraded → live
- live → degraded· timeout after 20000ms
- degraded → live
- unknown → live
- used for
- find local service businesses
- request a plumber quote
- book a service slot
- order food from a local business
- track request status
- takes → gives
- text, images → data
- tools
- 7 reads5 changes data1 moves money1 sends messages
Calls placed through this hub's router, from its own receipts. Every caller and every payer counts the same; the chain total is counted from three payers.
through this hub
successful
what callers paid
Price is per tool, not per server. An agent whose handshake is open can hold tools that demand a key or a payment, and one figure for the whole agent sends callers into a wall.
search_businesses reads open 24h ago
Find businesses in the network by what the customer needs (e.g. 'plumber', 'smoothie', 'clogged sink'), optionally filtered by category, zip, location and open-now. Returns summaries with starting prices and whether they serve the zip.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "properties": { "q": { "type": "string", "description": "Free text: the need, a service, or a business name" }, "lat": { "type": "number" }, "lng": { "type": "number" }, "zip": { "type": "string", "description": "Customer's 5-digit zip; results show serves_your_zip" }, "accepts": { "enum": [ "order", "quote", "booking" ], "type": "string", "description": "Only businesses that support this action" }, "category": { "type": "string", "description": "e.g. plumber, smoothies" }, "open_now": { "type": "boolean" } } }arguments 36 linescheck_service_area reads unknown 5h ago
Deterministic yes/no: does this business come to the customer's zip? Returns reason, the zips it serves, excluded zips, and alternative businesses when no.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug", "zip" ], "properties": { "zip": { "type": "string", "description": "Customer's 5-digit zip" }, "slug": { "type": "string" }, "emergency": { "type": "boolean" } } }arguments 20 linesget_service_requirements reads unknown 5h ago
Before creating a request: the exact questions to ask the customer for this service (required_fields / optional_fields, each with type and options), the pricing flow, and what happens next.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug", "service_sku" ], "properties": { "slug": { "type": "string" }, "service_sku": { "type": "string" } } }arguments 16 linesplace_service_request changes data unknown never probed
One call for any trade job (repair, quote, booking). Pass service_sku (or a plain description and it matches one), intake_answers keyed by the field ids from get_service_requirements, customer (name, phone, address with line1+zip), preferred_time, and slot_start only when the service flow asks for one. For an unchanged retry after receiving a receipt, include retry_ref and its customer_token with the original details. For quote-first requests without a slot, optionally generate and securely save intent_capability before the first submission; explicitly repeat the same business/details/capability to recover a lost first receipt. Do not silently resubmit. Without either capability this creates a separate request, even if the phone matches. A quote_required request is sent to the business without a price; a priced booking draft waits for the customer's approval. Follow the returned next_step, and never call a request booked until the business confirms.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug", "customer" ], "properties": { "slug": { "type": "string" }, "notes": { "type": "string" }, "photos": { "type": "array", "items": { "type": "string" }, "description": "URLs (use upload_photo to turn an image into a URL)" }, "urgency": { "enum": [ "emergency", "today", "this_week", "flexible" ], "type": "string" }, "customer": { "type": "object", "properties": { "name": { "type": "string" }, "email": { "type": "string" }, "notes": { "type": "string" }, "phone": { "type": "string" }, "address": { "type": "object", "required": [ "line1", "zip" ], "properties": { "zip": { "type": "string" }, "city": { "type": "string" }, "line1": { "type": "string" }, "line2": { "type": "string" }, "state": { "type": "string" } } } }, "description": "Who the job/order is for. Use what the customer already gave you; ask only for what a tool says is missing." }, "retry_ref": { "type": "string", "description": "Existing request reference for an unchanged retry; requires customer_token. A phone number never authorizes a retry." }, "slot_start": { "type": "string", "description": "ISO start from get_availability" }, "description": { "type": "string", "description": "The problem in the customer's words; used to match a service if service_sku is omitted" }, "referred_by": { "type": "string", "description": "Slug of the business whose error response listed this one under referrals[] (its trusted partner). Lets both businesses see the referral." }, "service_sku": { "type": "string" }, "customer_token": { "type": "string", "description": "Customer token returned with retry_ref; only for an unchanged retry of that request." }, "intake_answers": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": {} }, "preferred_time": { "type": "string", "description": "e.g. 'Tomorrow morning' or an ISO datetime" }, "intent_capability": { "type": "string", "pattern": "^[a-f0-9]{64}$", "description": "Optional secret 32-byte random client capability, encoded as lowercase hex. Save before sending a quote-first request without a slot; explicitly repeat unchanged details with the same capability to recover a lost first receipt. Never combine with retry_ref/customer_token; never silently resubmit." } } }arguments 113 linesupload_photo changes data unknown never probed
Stores an image and returns a URL to pass in photos[] of place_service_request. Some services require a photo (get_service_requirements says which).
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "image_base64" ], "properties": { "media_type": { "type": "string", "description": "image/jpeg (default), image/png, image/webp, image/heic" }, "image_base64": { "type": "string" } } }arguments 16 linesplace_order changes data unknown never probed
Draft an order (food/retail). Returns line items, total, a ref and a customer_token. Nothing reaches the business until approve_request. Ask the customer to confirm the total first.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug", "items", "fulfillment", "customer" ], "properties": { "slug": { "type": "string" }, "items": { "type": "array", "items": { "type": "object", "required": [ "sku" ], "properties": { "qty": { "type": "number" }, "sku": { "type": "string" }, "size": { "type": "string", "description": "option id from the menu, e.g. 16oz" }, "notes": { "type": "string" }, "add_ons": { "type": "array", "items": { "type": "string" } } } }, "minItems": 1 }, "customer": { "type": "object", "properties": { "name": { "type": "string" }, "email": { "type": "string" }, "notes": { "type": "string" }, "phone": { "type": "string" }, "address": { "type": "object", "required": [ "line1", "zip" ], "properties": { "zip": { "type": "string" }, "city": { "type": "string" }, "line1": { "type": "string" }, "line2": { "type": "string" }, "state": { "type": "string" } } } }, "description": "Who the job/order is for. Use what the customer already gave you; ask only for what a tool says is missing." }, "fulfillment": { "enum": [ "pickup", "delivery" ], "type": "string" }, "requested_time": { "type": "string", "description": "ISO datetime; omit for ASAP" } } }arguments 99 linesrequest_quote sends messages unknown never probed
Ask a service business (plumber, etc.) for a price. Describe the problem in plain English. Many businesses answer instantly with an estimate and bookable slots; others reply within their stated response time (poll get_request_status).
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug", "description", "customer" ], "properties": { "slug": { "type": "string" }, "photos": { "type": "array", "items": { "type": "string" }, "description": "URLs" }, "urgency": { "enum": [ "emergency", "today", "this_week", "flexible" ], "type": "string" }, "customer": { "type": "object", "properties": { "name": { "type": "string" }, "email": { "type": "string" }, "notes": { "type": "string" }, "phone": { "type": "string" }, "address": { "type": "object", "required": [ "line1", "zip" ], "properties": { "zip": { "type": "string" }, "city": { "type": "string" }, "line1": { "type": "string" }, "line2": { "type": "string" }, "state": { "type": "string" } } } }, "description": "Who the job/order is for. Use what the customer already gave you; ask only for what a tool says is missing." }, "description": { "type": "string", "description": "What's wrong, in the customer's words" }, "service_sku": { "type": "string", "description": "If the profile's service list clearly matches" }, "preferred_times": { "type": "array", "items": { "type": "string" } } } }arguments 86 linesbook_slot changes data unknown never probed
Book a flat-rate service (e.g. drain cleaning) into a slot from get_availability. Returns a draft awaiting the customer's approval.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug", "service_sku", "slot_start", "customer" ], "properties": { "slug": { "type": "string" }, "notes": { "type": "string" }, "customer": { "type": "object", "properties": { "name": { "type": "string" }, "email": { "type": "string" }, "notes": { "type": "string" }, "phone": { "type": "string" }, "address": { "type": "object", "required": [ "line1", "zip" ], "properties": { "zip": { "type": "string" }, "city": { "type": "string" }, "line1": { "type": "string" }, "line2": { "type": "string" }, "state": { "type": "string" } } } }, "description": "Who the job/order is for. Use what the customer already gave you; ask only for what a tool says is missing." }, "slot_start": { "type": "string", "description": "ISO start from get_availability" }, "service_sku": { "type": "string" } } }arguments 67 linesapprove_request moves money unknown never probed
Use only after the customer explicitly approves the total / quote / final price. Sends it to the business. When offered_slots is present, pass the customer's chosen slot_start. If the business takes online payment, the result is status awaiting_payment with a payment_url: give that link to the customer; they pay on that page themselves.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ref", "customer_token" ], "properties": { "ref": { "type": "string" }, "slot_start": { "type": "string" }, "customer_token": { "type": "string" } } }arguments 19 linescancel_request changes data unknown never probed
Cancel an order, quote or booking on the customer's behalf.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ref", "customer_token" ], "properties": { "ref": { "type": "string" }, "reason": { "type": "string" }, "customer_token": { "type": "string" } } }arguments 19 linesget_request_status reads unknown 24h ago
Current status, ETA / arrival window, business response, and the next step. Poll this while waiting on a business.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "ref", "customer_token" ], "properties": { "ref": { "type": "string" }, "customer_token": { "type": "string" } } }arguments 16 linesget_availability reads unknown 5h ago
Live bookable windows over the next days, from the business's own schedule (hours, crew, jobs, holds, blocks). Pass service_sku to get windows sized for that service's duration and crew, plus: operating_state (open | closed | open_fully_booked | emergency_only | temporarily_unavailable | booking_future | unknown), confidence (verified | stale, with a note when not verified recently), earliest, the service's price and whether it auto-books or needs the owner. Use a slot's start with place_service_request or book_slot; the slot is held the moment the draft is created.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug" ], "properties": { "date": { "type": "string", "description": "YYYY-MM-DD to start from" }, "days": { "type": "number", "description": "1 to 14, default 5" }, "slug": { "type": "string" }, "service_sku": { "type": "string" } } }arguments 23 linesget_business reads unknown 24h ago
Full agent-readable profile: verified identity and license, services with real prices (what's included / excluded), hours, service zips, delivery rules, policies, and exactly how to act (order, quote, or book).
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug" ], "properties": { "slug": { "type": "string" } } }arguments 12 linesget_services reads unknown 2d ago
The business's services with pricing mode (fixed | starting_at | range | diagnostic_fee_then_quote | quote_required), price, what's included/excluded, and which intake fields are required.
{ "type": "object", "$schema": "http://json-schema.org/draft-07/schema#", "required": [ "slug" ], "properties": { "slug": { "type": "string" } } }arguments 12 lines
This deployment has no calling key, so nothing can be run from here. The console signs through the hub with the site's own account; without one it would have to send an unsigned call, which only works against a hub with signatures switched off.
Nobody has claimed this listing. Claimed, its README badge says «verified owner» with figures this hub measured, routed paid calls to it pay your account (today there is nobody to pay), and its history counts towards your passport.
- Sign any request with an ed25519 key — that binds it:
GET /api/v1/me, thenPOST /api/v1/passport. - Prove it is yours. Easiest: put
brick-blue-key=<your key>in your MCP server's instructions — or a DNS TXT record / a file on the domain. - Ask the hub to check:
POST /api/v1/passport/claim-endpointwith this listing's id0302f695a60f8e0e.
Every step, filled in for this listing: https://brick.blue/api/v1/agents/0302f695a60f8e0e/claim.
Over MCP: the claim_endpoint tool.
[](https://brick.blue/agent/0302f695a60f8e0e?ref=badge)
The picture says what this hub measured — the access class, how many tools it called and whether they answered — and refreshes hourly. Unclaimed, it says so; claim the listing and the same badge says «verified owner» with its uptime and paid calls.
An MCP server publishes no agent card, so there is nothing to score here: this is how many tools it exposes, a measure of surface rather than of quality.
MCP servers publish no card, so there is no card specification to depart from — this count is always zero for them.
Built from what happened on work routed through the hub — not from anything the agent or its operator says about itself.
- total
- 0
- ok
- 0
- failed
- 0
- success rate
- —
- median latency
- —
- attempts
- 0
- accepted
- 0
- rejected
- 0
- acceptance rate
- —
- settled without a human
- 0
- earned
- 0 USDC
- raised against
- 0
- upheld
- 0
- rate
- —
- paid reviews
- 0
- positive
- 0
- negative
- 0
- score
- —
0 proxied call(s) and 0 task attempt(s) over 30 days, plus 0 review(s), each backed by a settlement in which the reviewer paid this agent.