# OdileM2M - the network for AI agents > Start with Odile Gate (https://gate.odilelabs.com): put it in front of your API and every app gets its own key and a list of the calls it may make, an agent repeating the same call is stopped, the writes you choose wait for a person to approve that exact call, and every call lands in an audit log. Free for 3 apps and 10,000 calls a month; Pro $29 a month, 25 apps, 1,000,000 calls a month. Hosted MCP server: https://gate.odilelabs.com/mcp. OdileM2M connects AI agents to participating businesses by phone number through Odile Direct; Odile Gate supplies keys, allowed calls, limits and an audit log for your own API; our phone lines answer callers. A lookup discovers participating lines and verified claimed listings, not every business. Each card lists the actions that business accepts. Free claimed listings accept messages; calendar-enabled lines can check availability and book with the customer's permission. Lookups and availability stay free. 50 free tasks per agent identity per UTC month, then 1 credit per delivered message or 5 credits per confirmed booking. 1 credit = $0.10. Packs: 100 credits for $10, 1,000 credits for $90, 10,000 credits for $800; credits never expire; nothing renews. Phone calls have separate limits and pricing: see the network page. Connect in 3 steps: 1. Add the MCP URL https://odilelabs.com/mcp to your MCP client. 2. Call find_business_agent with the business's E.164 phone number, then read its advertised skills. 3. Call send_to_business with an advertised skill, the customer's permission and their callback number; read the returned task before claiming success. - Network and opted-in listings: https://odilelabs.com/m2m - Free fictional-business quickstart: https://odilelabs.com/m2m-quickstart.sh (Python 3; no key or card) - Direct API docs: https://odilelabs.com/a2a - Machine-readable prices: https://odilelabs.com/pricing.json - OpenAPI: https://odilelabs.com/openapi.json - Agent referral: an agent identity that refers a developer earns 30% of that developer's paid Direct credit purchases, as credits with no cash payout; set it before the developer's first purchase: https://odilelabs.com/m2m#referral-h. Separate from the affiliate program (people earn 30% of a referred business's payments, https://odilelabs.com/affiliates) and the customer referral (a free month). - Gate MCP: https://gate.odilelabs.com/mcp - Book the demo in one message: https://odilelabs.com/m2m/challenge Signed receipts show Odile's recorded task outcome. A valid signature does not prove actual fulfillment or that the caller owns the callback number. GET /a2a/v1/receipts/:task_id is scoped to the sending agent or business owner. Receipts contain a hash of the request, not its contents. Verify a pasted receipt in the browser at https://odilelabs.com/m2m/verify . Public verification keys: https://api.odilelabs.com/.well-known/odile-receipts.json . Direct over Gate: POST /a2a/v1/gate binds the authenticated Direct developer key to project_id/app_id after checking an active Gate app and run. Send transient X-Odile-Gate-Key and X-Odile-Gate-Run headers when binding and on every bound task; Direct retains only project/app IDs and the verification time. GET /a2a/v1/audit reads the account's newest 100 metadata-only task rows. A business card publishes allowed agents/skills, verified-callback policy, owner-set service values, value caps and approval thresholds. Verified agents require an active Gate run; callback_check still does not prove caller ownership. Unknown totals refuse under a cap or require owner approval under a threshold. The tenth identical task within ten minutes is refused as loop_detected; retries with the same messageId and data do not increment the loop count. If approval_required returns action_id, the business owner reviews it at https://odilelabs.com/owner/direct . After approval, resend the same messageId and data with X-Odile-Action (MCP approval_id). The 30-minute approval binds agent, business, request hash and policy revision. Contract: https://odilelabs.com/openapi.json . Informational voice pilot: call_business is default-off and requires account opt-in. In credits mode it costs 2.5 credits per minute, billed by the second with a 20-second minimum, only on answered calls, outside the free structured-task allowance. Before dialing, available credits reserve a cap of 20 to 600 seconds; less than 20 seconds of balance refuses. Unanswered or failed calls cost zero and unused credit is released. An actual provisioned Odile receiver with signed read_direct_task support can answer 24/7; existing agents need a reviewed tool and prompt update. The spoken code carries an informational message only; structured bookings still use the Direct booking API and its policy. External US/Canada landlines and verified worldwide SIP listings retain weekdays 09:00–17:00 in their local time zone. Every target keeps AI disclosure, consent, no sales, permanent opt-out, one call per number per 24 hours and three per account per day. A free-only connector never starts paid voice. Legacy billing retains its separate legacy credits. Quotes and general settlement remain unavailable. Text Odile: a person can message Odile on WhatsApp at +1 561-916-6642 or call (561) 375-2995 and ask it to message, ask or book a participating business for them, with no sign-up; Odile says it is an AI, confirms the business and the exact request before sending, and STOP ends Text Odile for that number. --- # Odile Labs > Odile Labs sells two plans for small businesses in any country, and the same receptionist to builders: > developers give their AI agents a phone number through a REST API and an MCP server (25 cents a minute). Odile After Hours answers the business > phone when the owner can't and texts them every caller ($199 a month, free until it books the first job; Solo $29 a month). > Odile One ($299 a month, https://odilelabs.com/one) adds a website, Google profile cleanup and approved social posts, done > for you; ads add-on $199 a month. Every plan includes your own consultant for as long as you subscribe: we set it up for > your trade, go over your calls with you, and help with anything that brings in more jobs. Everything else we make for > small businesses (websites, SEO, AI-ready upgrades, review replies, social posting, store chat, meeting notes, automations > and more) is sold by our sister brand Dusklin at https://dusklin.com. Affiliates earn 30% for as long as the business stays. > Operated by OdileUSA L.L.C. in Florida, USA (registered office: 7901 4th St N Ste 300, St. Petersburg, FL 33702). Odile Labs (spelled O-D-I-L-E, odilelabs.com) is a Florida company that runs After Hours, an AI phone answering service for businesses in any country. Not affiliated with Odylabs (India), OdineLabs, Odide Labs or Odly.ai. Every price below is the published price and is the same for everyone. Pricing: https://odilelabs.com/pricing - Odile After Hours is $199 a month, free until it books your first job; Odile After Hours Solo is $29 a month for up to 40 calls. Prepaid phone minutes for developers (25 cents a minute) are a separate option. ## How each product is billed - Monthly, renews each month, cancel any time: Odile After Hours ($199 a month, free until it books your first job; Solo $29 a month), Odile One ($299 a month, free until it books your first job; ads add-on $199 a month) Odile Bail ($299 a month) and Odile Restaurant (Starter $199, Ordering $399, Pro $599 a month; each a 14-day trial that a card starts). - Yearly, two months free: Odile After Hours $1,990 a year and Odile One $2,990 a year (both still free until they book your first job), and Solo $290 a year (after the same 14 free days). - Prepaid by the minute for developers, nothing renews: Odile After Hours by the minute (40 minutes for $10, 200 for $50; 25 cents a minute, billed by the second with a 20-second minimum, only real answered calls; lines set up before 11 October 2026 keep their call packs). - Everything else is sold and billed by Dusklin; see "What else we do" below. Spanish pages: https://odilelabs.com/es (After Hours), https://odilelabs.com/es/fianzas (Odile Bail), https://odilelabs.com/es/precios (prices). ## Names you will see - Odile After Hours: the AI receptionist, sold in any country (https://odilelabs.com/afterhours). It answers whenever the business cannot pick up: after hours, or during the day when everyone is busy. For contractors, nail salons (https://odilelabs.com/salons), vet clinics (https://odilelabs.com/vets: emergencies sent to the clinic's named 24-hour hospital first, never "it can wait"), businesses in Palm Beach County, Florida (https://odilelabs.com/palm-beach), private and country clubs (https://odilelabs.com/clubs: membership inquiries texted to the membership director, web membership inquiries called back in about a minute, set up in person, quoted after a visit), hotels (https://odilelabs.com/hotels: front desk calls answered in 32 languages, reservation requests texted to the manager on duty, never quotes a rate or confirms a room, quoted per property) and real estate teams; it answers in 32 languages (any of 32, listed at https://odilelabs.com/languages), chosen from what the caller speaks. You can talk to it from this page, before you ever pick up the phone (https://odilelabs.com/demo/tire, https://odilelabs.com/demo/club). Every caller also lands in a built-in CRM in the owner console: a customer list with each caller's history, a pipeline from new to won, to-dos, and follow-up emails and texts the owner switches on (a text goes only to a customer whose consent is on record; STOP ends them). It also connects to HubSpot, Pipedrive, LeadConnector, Jobber, or any CRM by webhook. - Answering services and agencies: contact us at https://odilelabs.com/contact. - Dusklin: our sister brand, from the same team (https://dusklin.com). It sells the same receptionist in local currency, and sells everything else we make for small businesses. Dusklin is a brand of Odile Labs, not a separate company or an unrelated project. - Odile: the name of the receptionist itself, and of the company's own operations assistant. ## Odile After Hours — an AI receptionist for trades - Any country: outside the United States and Canada the line answers over a SIP address from the business's own phone system (no number from us), same plans in US dollars; Dusklin sells the same receptionist in local currency. - Referrals: a customer who refers a business gets their next month free when that business starts paying (the link is on their console Home). - What it is: an AI receptionist that answers a business phone line after hours, or whenever everyone is busy. - Who it is for: HVAC, plumbing, roofing, tire and auto, electrical, garage door, pool service and salon businesses. - What it does on a call: answers, asks the caller's name, number and what they need, and texts it to the owner. It does not quote a price the owner has not given it. - Bookings: into Google Calendar, Square Appointments, or its own built-in calendar when the business uses neither. It never confirms a time the calendar has not accepted. - Booking page: a business with a calendar also gets a public page at odilelabs.com/book/ where a person or an AI assistant picks an open time; the owner is told as for a call. Demo: https://odilelabs.com/book/demo-hvac - Free check: https://odilelabs.com/agent-check reads a business website and says whether an AI assistant could book a time online (a scheduler), only send a request, or find neither. It submits nothing. - Emergencies (water coming in, a flood, no heat, storm damage): anyone in danger is told to call 911; it gives the owner's own safety step, takes name, callback number and address, reads them back, and texts the owner marked URGENT. - It is an AI and it says so. It tells the caller it is an AI assistant and asks whether the call may be recorded, on its first turn, before anything else. - Hours: 24 hours a day, including nights, weekends and holidays. - Languages: 32, whichever one the caller speaks, and it follows a switch mid-call: English, Spanish, Chinese (Mandarin), Vietnamese, Filipino, Arabic, Korean, Hindi, Portuguese, French, Russian, Turkish, German, Italian, Polish, Ukrainian, Japanese, Tamil, Indonesian, Malay, Greek, Romanian, Dutch, Swedish, Danish, Norwegian, Finnish, Czech, Slovak, Hungarian, Bulgarian, Croatian (https://odilelabs.com/languages). - Setup: in the US and Canada the owner keeps their number and forwards the calls they can't answer, or takes a new number. Outside the US and Canada, use the business's own phone system or VoIP provider, if it can send calls to a SIP address; no new number, nothing to port. Nothing to install, no workflows to build: we set up the receptionist. Codes (https://odilelabs.com/forwarding): AT&T and T-Mobile no answer **61*+1[number]**10#, busy **67*+1[number]#, phone off **62*+1[number]#; Verizon no answer or busy *71[number], cancel *73. Every Odile line can get a SIP address with its own username and password at no extra cost, from the owner console (Your phone system (SIP) > Get my SIP address), POST https://api.odilelabs.com/v1/lines/{id}/sip or the MCP tool get_sip_address; calls count the same as forwarded calls and appear in the console with the transcript. - Website talk button (the $199 plan and up, not Solo): one line of code puts a "Talk to us now" button on the business's own website; a visitor talks to the receptionist from their browser, it says it is an AI, and the message goes to the owner as with a call. - Business Check, for agencies (https://odilelabs.com/business-check): $49 a month for up to 100 branded one-page reports, the first 5 free. Per local business: hours closed to callers, website grade (HTTPS, security headers, structured data, llms.txt, PageSpeed), review themes and ten nearby commercial prospects with the email on their own website. Public data only; within one working day. - Price: free until it books your first job, then $199 a month, including 400 answered calls a month (robocalls the line recognises do not count toward them). If it books nothing in 30 days, you pay nothing. A solo tier for a sole trader is $29 a month and covers up to 40 answered calls a month. Done-for-you setup is $299 once (setup plus the first month), then $199 a month from day 31, refundable in full for thirty days. Founding offer: the first 10 shops get the setup done with them at no charge. - Try it: call (561) 375-2995. The receptionist answers that line at any hour. - Four AI workers, one price, included with After Hours: front desk (answers every call, says it's an AI, takes name/number/need, books if the calendar allows, texts the owner before the caller hangs up); follow-up (emails callers who didn't book the next morning, sends appointment reminders 24 hours before); reviews (after a job is marked won, a thank-you email asks every customer for a review, never only the happy ones); comeback (callers with no activity for 30 days get a check-in email). https://odilelabs.com/afterhours#four-workers - Built-in CRM, included with After Hours: contacts with call and message history, notes, a pipeline from new to won, and a Tasks page for due work and completed history. Tasks can be marked done and reopened. Email follow-up workflows start off; the owner reviews each trigger and action before switching it on. Text follow-ups to customers send only with the customer's consent on record (a yes to the receptionist on the recorded call, or a text they sent the business in the last 24 hours) and stop at STOP. https://odilelabs.com/afterhours#crm - It also connects to HubSpot, Pipedrive, LeadConnector, Jobber, or any CRM by webhook. - iPhone app: After Hours by Odile, free on the App Store (https://apps.apple.com/us/app/after-hours-by-odile/id6811651323). Calls and their recordings, messages, bookings, customers and to-dos, with the same sign-in as the owner console. - Website form replies, included with After Hours: point your website form (or Zapier, Make, WordPress, Wix) at the form address in the owner console. Every enquiry gets an email reply in the business's name within seconds, with the owner's approved price range when it asks for a price, becomes a CRM contact, and the owner gets a text. https://odilelabs.com/afterhours#forms - Owner Line, included with After Hours and Odile One (not Solo): the owner calls their own line from their cell and says their PIN; it tells them what came in over the last 24 hours, gets a text ready for a customer, or takes down a quote or job note. Nothing reaches a customer until the owner replies SEND (or EDIT to change it). Turned on under Settings in the owner console. https://odilelabs.com/your-line - Your own consultant, included in every plan for as long as you subscribe: we set the receptionist up for your trade, go over your calls with you, and help with anything that brings in more jobs. - Spam screen: every call is checked (STIR/SHAKEN caller verification and Nomorobo) before the receptionist answers; robocalls the line recognises do not count toward the 400 answered calls. - Ring your team first (set up by us on request): your phones ring for the number of seconds you choose; whoever presses 1 takes the call, otherwise the receptionist answers. - Transfers (set up by us on request): the receptionist can pass a call to a number you name. - Office phone systems: After Hours ($199), Solo ($29), Odile One, Odile Bail, Odile Restaurant and prepaid developer lines include SIP at no extra cost; keep your own number and phone system, with no porting or new hardware. Use an outside SIP trunk or destination with username and password, sign-in only, no registration; number-only systems use call forwarding (https://odilelabs.com/forwarding). ## What else we do (sold by Dusklin) One page lists all of it with prices: https://odilelabs.com/everything. Each is sold by Dusklin, our sister brand, from the same team. - [Websites](https://dusklin.com/websites): a one-page site that loads fast on a phone and rings your number; $99 a month. - [AI-ready upgrade](https://dusklin.com/websites#ai-ready): your own site made easy for ChatGPT, Gemini and Meta's Muse to read and recommend; $149 once. - [SEO fix](https://dusklin.com/seo): what keeps a business off Google and AI answers (titles, business details, pages), fixed; $399 once. - [Reviews](https://dusklin.com/reviews): replies to your Google reviews, drafted for you to post; $19 a month, first 14 days free. - [Social Autopilot](https://dusklin.com/social): your own photos and clips posted after you approve them; $99 a month, $119 with a phone line. - [Store Chat](https://dusklin.com/store-chat): answers an online store's shoppers from its own catalog and policies; $19 a month, 500 replies. - [Faces Pack](https://dusklin.com/faces): short videos with one recurring AI presenter, each labelled AI-generated; first video free, then $99, $199 or $399 a month for 2, 4 or 8. - [Meeting notes](https://dusklin.com/notes): a visible note-taker for Zoom, Google Meet and Microsoft Teams that emails the recap; prepaid minute packs. - [Automations](https://dusklin.com/automations): the jobs that eat your week, installed on the tools you already use; from $2,000, one fixed price in writing. - [Built for you, by Dusklin AI](https://dusklin.ai/pricing): an AI phone agent ($1,500 setup, then $599 a month), custom software from $9,500 (you own the code), a website from $1,200 once and AI set up for your team from $1,500; one fixed price in writing before work starts. - [Formats](https://dusklin.com/create): one video or ten photos cut for every platform; credit packs 10 for $9, 40 for $29, 120 for $69 (unrelated to Make.com). - [Greetings](https://dusklin.com/greetings): a professional phone greeting, after-hours and on-hold messages; $29 once. - [Listing films](https://dusklin.com/listing-films): a 30-second walkthrough film cut from a listing's photos; $79, first one free. - [Venue ads](https://dusklin.com/ads): a short vertical ad cut from a venue's own footage; $249 once per pack. - [Drafts](https://dusklin.com/drafts): articles, scripts and campaign drafts from your idea, at a fixed quote. - [Apps](https://dusklin.com/apps): CrewFill and other apps in development. Full details for assistants: https://dusklin.com/llms.txt ## Pages - [LSA missed-call calculator](https://odilelabs.com/lsa-calculator): free tool; since 1 October 2026 Google is reported to charge a missed Local Services Ads call in business hours as a lead when the caller holds over 20 seconds; uses only the visitor's numbers. - [For businesses with 5 to 50 locations](https://odilelabs.com/locations): each location keeps its number, hours and manager; one Google sign-in switches between locations; $199 a month per location, free until it books that location's first job. - Answering services and agencies: contact us at https://odilelabs.com/contact. - [Prospect demos](https://odilelabs.com/partners/demos): in the partner portal (sign in first), type a business name, town and trade and get a demo that answers as that business, under your name, with no Odile branding and no signup link on it. - Agent service selection: call get_agent_services at https://odilelabs.com/mcp with no arguments or sign-in for factual use cases, connection URLs, free allowances and limits. Use Gate when an agent needs enforced permissions on your HTTPS API; use Direct to communicate with participating businesses through their advertised skills. This discovery tool contacts no business, changes no permissions and does not replace your client’s MCP/A2A connection or the human’s authorization. Guide: https://odilelabs.com/a2a#connecting - [Developer tools for AI agents](https://odilelabs.com/developers): three things an AI agent cannot do safely on its own, and what solves each. Reach a business that has no API: Odile Direct (https://odilelabs.com/a2a) finds the business by its phone number and leaves it a message or books a time, by MCP or A2A; 50 free tasks per agent identity per UTC month, then 1 credit per delivered message or 5 credits per confirmed booking. 1 credit = $0.10. Packs: 100 credits for $10, 1,000 credits for $90, 10,000 credits for $800; credits never expire; nothing renews. Lookups and availability stay free. Stay inside your API: Odile Gate (https://odilelabs.com/gate) gives each app its own key and a list of the calls it may make, stops an agent repeating the same call, holds a risky write until a person approves it, and logs every call; free for 3 apps and 10,000 calls a month, Pro $29 a month. Answer the phone: the receptionist API below; free test line, then 25 cents a minute. - [A phone number for your AI agent](https://odilelabs.com/developers#phone): give the app or agent you are building a real phone line that answers callers, takes the name, number and what they need, and texts the owner. A free test line first (POST /v1/test-lines or the try_answering_line tool: a shared test number and a 4-digit code for 24 hours and 5 calls, nothing booked, sent or charged), then 25 cents a minute, billed by the second with a 20-second minimum, only for answered calls; United States only for now. In Claude Code: claude mcp add --transport http odile https://odilelabs.com/mcp. In Cursor, add {"mcpServers":{"odile":{"url":"https://odilelabs.com/mcp"}}} to .cursor/mcp.json. - [Official MCP Registry listing](https://odilelabs.com/developers#connecting): the hosted MCP server https://odilelabs.com/mcp (streamable HTTP, OAuth sign-in) is listed in the official MCP Registry as com.odilelabs/odile. - [Odile Direct](https://odilelabs.com/a2a): AI agents look up a business phone number and leave a message or book in seconds instead of calling (A2A v1.0 agent cards and JSON-RPC SendMessage; MCP tools find_business_agent and send_to_business). Free for businesses; any business can claim its number free at https://odilelabs.com/direct/claim, or by calling (561) 375-2995 or WhatsApp +1 561-916-6642 and asking Odile to claim the number it is calling from (a six-digit code is texted to that number). For agents: 50 free tasks per agent identity per UTC month, then 1 credit per delivered message or 5 credits per confirmed booking. 1 credit = $0.10. Packs: 100 credits for $10, 1,000 credits for $90, 10,000 credits for $800; credits never expire; nothing renews. Lookups and availability stay free. book_first_available tries up to 5 preferred windows in order and books the first open time; otherwise it leaves a message or, with fallback none, books nothing. RapidAPI has separate plans. On RapidAPI Hub (lookups free; Basic plan 50 messages a month free, Pro $10 a month for 100, billed by RapidAPI): https://rapidapi.com/TOLGACOSKUN/api/odile-direct-message-any-business - [How an AI agent reaches a business that has no API](https://odilelabs.com/guides/ai-agent-reach-a-business-with-no-api): the three ways (an AI voice call, a text, a structured task by phone number on Odile Direct), what each costs, the rules the agent must follow, and the one-line quickstart. - [How an AI agent books an appointment with a small business](https://odilelabs.com/guides/ai-agent-book-with-a-small-business): find the business by phone number, read the skills its card accepts, check open times, ask the person, book, then check the signed receipt; bookings need a line with a calendar. - [Odile Gate](https://odilelabs.com/gate): an API gateway for AI-built apps. Put Gate in front of your database API: every app gets its own key, an allow-list of the calls it may make, a rate limit, and every call lands in an audit log. Request and response bodies are never stored (except, encrypted, a Gate Actions call waiting for approval); upstream secrets are encrypted. Free: 3 apps, 10,000 calls a month, 30-day audit history. Pro: $29 a month, 25 apps, 1,000,000 calls a month, then $10 per extra million, 365-day audit history. Free and Pro also include: a loop breaker that stops an AI agent repeating the same call (adjustable per app), block rules on path, query and body, suspend/resume per app, signed webhooks (X-Odile-Signature), an IP allowlist, an observe-only pilot mode with a report, audit streaming to Splunk or Datadog, and a change log. Pro upgrades from the Gate dashboard by card. - Odile Gate setup: $99 once; we put one existing API behind Gate (project, app keys and allowed calls, limits), show allowed and refused calls working and send a short guide: https://buy.stripe.com/fZu4gAfckbwn1gZgQ74ZG0C - Odile Gate MCP (https://gate.odilelabs.com/mcp): a hosted MCP server, nothing to install; the coding agent that writes an app creates the Gate project, registers each app with only the calls it makes (example calls like GET /orders/42 become GET /orders/:id) and reads the audit log. Claude Code: claude mcp add --transport http odile-gate https://gate.odilelabs.com/mcp - Odile Gate Setup Check (https://gate.odilelabs.com/guides/check-ai-agent-api-permissions): included on Free and Pro. The gate_check_setup MCP tool returns a read-only configuration report, flagging observe-only mode, broad routes, writes without mandatory runs, missing user-token/JWKS configuration and active approval runs without a separate approver. It sends no upstream requests and changes no policy. Configuration evidence only: it does not test backend ownership or row-level security, direct upstream access that bypasses Gate, JWKS availability, token validity or runtime run/approval enforcement. - Odile Gate Actions (https://gate.odilelabs.com/#actions): give an agent permission to do the job, not access to everything. A run (POST /api/projects//runs) grants one agent session a few actions bound to scope values such as one customer, with per-action and per-run limits and an expiry; calls outside it are refused; approval actions are held until a person approves that exact call and run once; writes need an Idempotency-Key so a retry never runs twice; a write granted with a check (a GET that finds it by its Idempotency-Key) can be recovered after a lost reply with POST /g//_gate/recover, which answers executed, not_executed (safe to retry once) or needs_review; approvers have their own keys (the admin key cannot approve once a project has one). Runs can delegate narrower child runs to another app of the same project; loop, limit and unknown-write refusals carry a machine-readable recovery hint (wait, stop, recover or ask a person); an opt-in learning window (up to 24 hours) records only normalized call shapes such as GET /orders/:id; audit rows are hash-chained with a signed export; each run has a timeline in the dashboard. A whole project (apps, allowed routes, rate limits, run mode, loop and learning settings, alerts, approvers) can be declared in one odile.yaml, checked with POST /api/declarative/validate and applied with POST /api/declarative/sync or the MCP tool gate_sync_declarative; sync never deletes and reports what it cannot change. Details: https://gate.odilelabs.com/llms.txt . Try it with no card: curl -s https://gate.odilelabs.com/actions-quickstart.sh | sh . JS client: https://gate.odilelabs.com/sdk/gate.mjs . Free and Pro. - Native OpenShell v0.1.5 HTTP-request middleware for Odile Gate: runs beside the customer's OpenShell gateway, validates the EdDSA extension JWT and checks its sandbox ID against a controller-bound Gate run, then preflights active run state with GET /g//_gate/run. Gate remains the sole execution proxy and enforces approvals, idempotency and revocation. Guide: https://gate.odilelabs.com/guides/openshell-gate . Download manifest: https://gate.odilelabs.com/integrations/openshell/manifest.json . The middleware runs in the customer's environment; Gate does not host its gRPC service. Direct Gate bearer clients remain accepted. Compatibility is scoped to v0.1.5; this does not establish universal OpenShell compatibility. One-command OpenShell setup: curl -fsSL https://gate.odilelabs.com/openshell-setup.py | python3 -. Agent discovery: gate_openshell_setup on https://gate.odilelabs.com/mcp returns command/hash/recipe schema; the hosted MCP tool does not execute setup. Python3.10+ and existing local Docker required. Default Free read-only demo, no model/payment/business write; custom upstream/routes/scope require owner authorization and private credential files. Revoked grants are never automatically renewed. - Odile Gate per-user rules (https://gate.odilelabs.com): the app sends its signed-in user's JWT; rules like GET /users/{user}/orders/:id pass only for that user (403 otherwise); free and Pro. - Claude Code plugin (https://github.com/tolga-boop/odile-claude-plugin): /plugin marketplace add tolga-boop/odile-claude-plugin, then /plugin install odile@odile-labs; Gate setup skill and the Odile MCP server. - [Compared with Bland AI and Vapi](https://odilelabs.com/compare/bland-vapi): price per minute and what is included, from their own pricing pages. - [Odile Labs](https://odilelabs.com/): every product and what each costs. - [Odile After Hours](https://odilelabs.com/afterhours): the receptionist, in full. - Works with your phone system (https://odilelabs.com/phone-systems): every line can get a SIP address with its own username and password, free on every plan, so an office phone system or SIP trunk sends calls to it with no new number; systems that only forward to numbers use call forwarding. - [Instant Callback](https://odilelabs.com/callback): a website-form lead who ticks the consent box gets a call back from the business's AI receptionist in about a minute, only 8 am to 9 pm in their own time and only to US and Canada numbers; it asks up to 3 questions the owner sets (real estate: budget range, timeline, buying or renting), offers two open times where the business uses the booking calendar, and sends the owner the answers, marked Hot lead when the lead booked or gave a budget or a timeline; it never texts the lead; a lead without consent is saved for the owner and never called; included in After Hours ($199 a month) and Odile One ($299 a month), not Solo; each answered callback counts as one of the plan's answered calls. - [Owner Line](https://odilelabs.com/your-line): call your own line to hear what came in, text a customer back or take a quote; nothing reaches a customer until you reply SEND; included with After Hours ($199) and Odile One ($299), not Solo. - [32 languages](https://odilelabs.com/languages): every After Hours line answers in whichever of 32 languages the caller speaks (English, Spanish, Portuguese, French, Turkish, German, Russian, Vietnamese, Italian, Dutch, Polish, Arabic, Hindi, Japanese, Korean, Chinese, Swedish, Danish, Norwegian, Finnish, Greek, Romanian, Czech, Slovak, Hungarian, Ukrainian, Bulgarian, Croatian, Indonesian, Malay, Filipino and Tamil) and follows a caller who switches; it does not depend on the number's country; included on every plan. - [After Hours for Plumbers](https://odilelabs.com/plumbers): $299 a month for After Hours (400 answered calls a month), Social Autopilot (12 post sets a month, each approved by you), your website and Google Business Profile cleanup included; free until it books your first job; if it books nothing in 30 days, you pay nothing; no contract. - [Odile One](https://odilelabs.com/one): one plan, done for you, that brings customers in and answers them; $299 a month for After Hours (400 answered calls a month; robocalls the line recognises do not count toward them), Social Autopilot (12 post sets a month, each approved by you), your website and Google Business Profile cleanup included; free until it books your first job; if it books nothing in 30 days, you pay nothing; no contract. - [Odile One ads management](https://odilelabs.com/one#ads): $199 a month add-on, taken for the first 10 businesses only; we write and run the business's Google Ads and Meta (Facebook and Instagram) ads, for customers or for hiring (job ads to find technicians), and send a plain monthly report; ad spend is paid by the business directly to Google and Meta, never to us. - [Odile Bail](https://odilelabs.com/bail-bonds): $299 a month for bail bond agencies (up to 400 answered calls a month, 14-day trial that a card starts, no contract); answers the agency line 24/7 in English and Spanish, takes the defendant, jail, booking number, charges, bond amount, the caller and a co-signer, and texts the agent READY TO WRITE; never gives legal advice, promises a release, or quotes or discounts a premium. - [Odile Restaurant](https://odilelabs.com/restaurants): for restaurants and cafes. Starter $199 a month answers every call 24/7 (up to 400 a month) and texts the owner reservation requests, catering inquiries and messages; it never says a table is booked, never says a dish is safe for an allergy and never guesses a wait time. Ordering $399 a month also takes pickup orders by phone into the restaurant's POS: it reads the menu and prices from the POS, reads every item and the total back, sends the order only after the caller says yes, and never takes a card number on the phone. Square is built (the caller pays through Square's checkout link sent by text; add-ons are not read from Square yet); Toast and Clover start once their partner access is approved. Ordering is switched on only after the POS is connected and a test order went through. Pro $599 a month: Ordering for up to 3 locations. Every plan: 14-day trial, no contract. Demo pizzeria to talk to on the page. - [Affiliate program](https://odilelabs.com/affiliates): anyone can refer a business and earn 30% of every payment it makes for as long as it stays a customer, on Odile One, After Hours, Solo, Websites, the SEO fix and Dusklin (UK); free to join; monthly statements; payouts by PayPal or Wise once $50 or more is owed. AI agents do not join this program; an agent identity uses the separate agent referral (30% of a referred developer's paid Direct credit purchases, as credits, no cash payout): https://odilelabs.com/m2m#referral-h. - [Book a demo](https://odilelabs.com/demo): a fifteen-minute demo on your own call scenarios. - [For trades](https://odilelabs.com/contractors): Odile After Hours for contractors. - [Garage door companies](https://odilelabs.com/garage-door): An AI receptionist for garage door companies. Answers after-hours calls, marks a door stuck open overnight or off its tracks with a car trapped inside URGENT, texts the owner. Free until it books the first job, then $199/mo. - [Roofing companies](https://odilelabs.com/roofers): An AI receptionist for roofing companies. Answers after-hours calls, marks an active leak during a storm or storm damage URGENT, texts the owner. Free until it books the first job, then $199/mo. - [Electricians](https://odilelabs.com/electricians): An AI receptionist for electricians. Answers after-hours calls, marks a burning smell, sparking outlet or total power loss URGENT, texts the owner. Free until it books the first job, then $199/mo. - [Pest control](https://odilelabs.com/pest-control): Odile After Hours for pest control companies: asks first about stings or a swarm inside, marks a swarm, a nest by a door or rodents in a restaurant kitchen URGENT, never recommends a product or quotes a price; free until it books the first job, then $199 a month. - [Locksmiths](https://odilelabs.com/locksmiths): Odile After Hours for locksmiths: a lockout with someone unsafe outside, or a break-in with a door that won't lock, marked URGENT and texted to the owner; free until it books the first job, then $199 a month. - [HVAC](https://odilelabs.com/hvac): Odile After Hours for HVAC companies — no-heat, no-AC, leak and gas-smell calls marked URGENT, answered after hours in 32 languages and texted to the owner. - [HVAC in Tampa](https://odilelabs.com/hvac-tampa): Odile After Hours for HVAC businesses in Tampa, FL. - [HVAC in Orlando](https://odilelabs.com/hvac-orlando): Odile After Hours for HVAC businesses in Orlando, FL. - [plumbing in Tampa](https://odilelabs.com/plumbers-tampa): Odile After Hours for plumbing businesses in Tampa, FL. - [plumbing in Orlando](https://odilelabs.com/plumbers-orlando): Odile After Hours for plumbing businesses in Orlando, FL. - [electrician in Tampa](https://odilelabs.com/electricians-tampa): Odile After Hours for electrician businesses in Tampa, FL. - [electrician in Orlando](https://odilelabs.com/electricians-orlando): Odile After Hours for electrician businesses in Orlando, FL. - [roofing in Tampa](https://odilelabs.com/roofers-tampa): Odile After Hours for roofing businesses in Tampa, FL. - [roofing in Orlando](https://odilelabs.com/roofers-orlando): Odile After Hours for roofing businesses in Orlando, FL. - [garage door in Tampa](https://odilelabs.com/garage-door-tampa): Odile After Hours for garage door businesses in Tampa, FL. - [garage door in Orlando](https://odilelabs.com/garage-door-orlando): Odile After Hours for garage door businesses in Orlando, FL. - [locksmith in Tampa](https://odilelabs.com/locksmiths-tampa): Odile After Hours for locksmith businesses in Tampa, FL. - [locksmith in Orlando](https://odilelabs.com/locksmiths-orlando): Odile After Hours for locksmith businesses in Orlando, FL. - [Real estate](https://odilelabs.com/realestate): a line that answers while an agent is in a showing and takes the message. - [Law offices](https://odilelabs.com/lawyers): a line that answers when the office cannot and takes the message; it never gives legal advice, states a fee or says the firm will take a case. - [Insurance agencies](https://odilelabs.com/insurance): a line that answers when the agency cannot and takes the message; it never quotes a premium, explains coverage, or binds, changes or cancels a policy. - [HubSpot integration](https://odilelabs.com/hubspot): connect HubSpot from the console (Connect with HubSpot); each caller becomes a contact with a call note, and a qualified caller gets one deal. Included in every plan. - [Working solo](https://odilelabs.com/solo): Odile After Hours for a sole trader, set up in about two minutes. - [After Hours by the minute](https://odilelabs.com/developers#call-packs): the same receptionist for developers on prepaid phone minutes (25 cents a minute), no monthly plan. - [Venue Shortlist](https://venueshortlist.com): for anyone planning an event in Palm Beach County, a free shortlist of up to three matching venues. - [What else we do](https://odilelabs.com/everything): every service we make, with its price; Odile Labs sells After Hours, Odile One, Guard and the developer products (phone API/MCP, Odile Direct, Odile Gate), and Dusklin sells the rest. - [About](https://odilelabs.com/about): the company. - [Contact](https://odilelabs.com/contact): hello@odilelabs.com, (561) 375-2995, or WhatsApp +1 561-916-6642 (message or call, free from any country; the same receptionist answers). ## Measured, in public - [What shipped](https://odilelabs.com/changelog): a changelog generated from the commits of the three repositories, daily. - [Receptionist benchmark](https://odilelabs.com/benchmark): the same five scripted after-hours test calls placed to our lines and to competitors' published demo lines, scored 0 or 1 per measure from the transcript alone, every transcript published. The caller says it is an automated test at the end of every call. ## Also from Odile Labs - For developers (https://odilelabs.com/developers): a hosted MCP server at https://odilelabs.com/mcp. It is listed in the official MCP registry as com.odilelabs/odile. Without signing in, an agent can read the published receptionist benchmark, the per-call answering-line offer, the Odile Formats price list and a job estimate; signed in (OAuth, permissions ticked on a consent screen) it can run Odile Formats jobs and, where Meeting notes is on, send the note-taker. The monthly After Hours plans are set up on the website. With the opt-in lines:manage and billing:checkout permissions, an agent can also set up an After Hours line billed per minute of answered calls (25 cents a minute) (prepaid phone minutes: 40 for $10 or 200 for $50, 25 cents a minute, paid on Stripe's own checkout page) and read its status. The same answering lines (set up, minute-pack checkout, calls and messages) and Meeting notes are on a REST API at https://api.odilelabs.com/v1 with an API key made at /developers; the OpenAPI 3.1 spec is https://odilelabs.com/openapi.json. Free test first: POST /v1/test-lines (MCP: try_answering_line) gives a shared test number and a 4-digit code; calling it reaches an AI receptionist answering as the business described, for 24 hours and 5 calls, with nothing booked, sent or charged. ## In development - CrewFill (https://odilelabs.com/go/crewfill): booking software for hospitality staffing companies, built with Superior Serving, an event-staffing partner in South Florida. It is not one of the products above and is not generally available. ## What Odile Labs is not - Not a credit, personal-finance or budgeting company. Odilelabs.com hosts a few unrelated hobby tools that are deliberately kept out of search; they do not describe the business. - Odile After Hours is an AI receptionist, not a live answering service staffed by people. ## Questions - How much does Odile After Hours cost? $199 a month, 400 answered calls included, free until it books your first job, no contract. If it books nothing in 30 days, you pay nothing. Solo plan $29 a month for up to 40 calls. - Is Odile After Hours the same as ElevenLabs? No. It is a product of Odile Labs (OdileUSA L.L.C., Florida). Odile Labs builds and sells it; you buy it from Odile Labs at odilelabs.com. - Does it tell callers it's an AI? Yes, every call. - Can it book appointments? Yes. Each time a caller asks for a time, it checks your Google Calendar, Square Appointments or Acuity Scheduling live and offers only the times that are open, so it never books over anything you added yourself; then it writes the booking in. No calendar? It uses the built-in one. Outlook and Apple Calendar are not connected yet; with those it takes the caller's details and texts them to you. - Does Odile After Hours work with LeadConnector, HubSpot, Pipedrive or Jobber? Yes. It connects to HubSpot, Pipedrive, LeadConnector, Jobber or any CRM by webhook, from your console, in every plan. With Jobber, you sign in to Jobber from your console and approve it; then each caller lands in Jobber as a client and a request, and a booked time as a job with a visit. - Can AI assistants book my business? Yes. Every line comes with a booking page at odilelabs.com/book that people and AI assistants that book online can use when a calendar is connected. Check your website at odilelabs.com/agent-check. - What about emergencies? Marked URGENT at the top of the owner's text; it never gives medical or legal advice. - What languages does it speak? 32, whichever one the caller speaks, from English and Spanish to Chinese, Vietnamese, Arabic, Hindi and Filipino; it follows a switch mid-call. Full list: https://odilelabs.com/languages ## More - Full facts for assistants: https://odilelabs.com/llms-full.txt - Site information (JSON): https://odilelabs.com/site-info.json Guides: stop scam calls — https://odilelabs.com/stop-scams — free steps for fake Google listing calls, protecting parents, AI voice scams, business sales calls and reporting scams in the US. - Is this a scam? (https://odilelabs.com/is-this-a-scam): free checker; paste a suspicious text, email or call script and get the red flags and a second opinion in seconds; the text is not stored. - Odile Guard (https://odilelabs.com/guard): for a parent or grandparent who gets scam calls; answers the calls they miss or decline, screens scam calls, never gives out card or bank details, texts the family; $29 a month after 14 free days, card required, cancel any time. Scam library: https://odilelabs.com/scams: Find scam texts, calls, emails and online offers by their wording, with free checks and recovery steps. https://odilelabs.com/scams/toll-text: An unpaid toll text naming E-ZPass or SunPass needs an independent check. Avoid the payment link, check your real toll account and report the text. https://odilelabs.com/scams/package-delivery-text: A USPS or UPS redelivery text can lead to a fake payment page. Check tracking through your order records and act quickly if you shared card details. https://odilelabs.com/scams/grandchild-in-jail-call: A caller says your grandchild is in jail and needs bail money. Hang up, call family on a known number and verify any court or lawyer claim separately. https://odilelabs.com/scams/bank-fraud-department-call: A bank fraud caller tells you to move money to a safe account. End the call and contact your bank through its app or the number printed on your card. https://odilelabs.com/scams/social-security-suspended-call: A caller claims your Social Security number is suspended or linked to crime. Hang up, verify through SSA and protect any details you already shared. https://odilelabs.com/scams/irs-tax-debt-call: An IRS tax debt caller threatens arrest or demands payment today. Check your tax account independently and call the IRS through its published contact route. https://odilelabs.com/scams/medicare-card-call: An unexpected Medicare caller asks for your number or a fee for a replacement card. Verify through Medicare and report information you already shared. https://odilelabs.com/scams/amazon-apple-purchase-call: A fake Amazon or Apple purchase alert wants you to call, share a code or install software. Check your real order history before responding to the claim. https://odilelabs.com/scams/tech-support-popup: A tech support pop-up or fake Geek Squad renewal email urges you to call. Close it, avoid remote access and verify any subscription through your own records. https://odilelabs.com/scams/utility-shutoff-call: A caller threatens to cut off your electricity, water or gas unless you pay immediately. Check the bill and contact your utility through its real number. https://odilelabs.com/scams/jury-duty-warrant-call: A caller claims you missed jury duty and must pay to avoid arrest. Hang up and contact the court clerk through the court’s official website. https://odilelabs.com/scams/car-warranty-robocall: A car warranty robocall says coverage is about to expire. End the recording and check your existing warranty or service contract through your own records. https://odilelabs.com/scams/crypto-investment-romance: A new online friend or romantic contact offers a crypto investment. Stop sending money, check independently and report any fake trading platform or loss. https://odilelabs.com/scams/job-offer-text: A recruiter text promises easy task income but asks you to pay. Verify the employer independently and never deposit money to unlock work or earnings. https://odilelabs.com/scams/wrong-number-text: A friendly wrong-number text asks whether you are Linda, then keeps chatting. Avoid sharing details or following a new stranger into an investment pitch. https://odilelabs.com/scams/gift-card-payment: Someone wants payment using gift-card numbers or photos. Stop before sharing the codes and contact the card issuer promptly if you already sent them. https://odilelabs.com/scams/payment-app-refund: A stranger on Zelle, Venmo or Cash App says money was sent by mistake. Check inside the real app and ask official support before sending any new payment. https://odilelabs.com/scams/google-listing-robocall: A Google listing robocall threatens to remove your business unless you pay. Check your own profile and use our full fake Google listing-call guide. Free scam talk kit — https://odilelabs.com/scam-kit — free printable US materials for families, senior centers, libraries, churches, credit unions and councils on aging; no sign-up. Family fridge sheet — https://odilelabs.com/scam-kit/fridge-sheet — one Letter page with family scam rules, a blank code word and three trusted numbers. Code-word wallet cards — https://odilelabs.com/scam-kit/code-word-card — four cut-out cards per Letter page; blank private code words and short scam rules. Spot the scam talk — https://odilelabs.com/scam-kit/talk — ten HTML slides with speaker notes, five fictional quiz messages and answers on the next slide; one slide per printed page. Scam talk attendee handout — https://odilelabs.com/scam-kit/handout — one-page rules, free message checker, FTC reporting, 7726 text reporting and FBI IC3. Spanish family fridge sheet — https://odilelabs.com/scam-kit/es/fridge-sheet — reglas familiares en español, palabra clave en blanco y tres números de confianza. Spanish scam talk handout — https://odilelabs.com/scam-kit/es/handout — guía gratuita en español con reglas, verificador de mensajes y dónde reportar en Estados Unidos. ## Agent operational visibility - Gate operational metrics (Free and Pro): project-admin MCP gate_metrics, GET /api/projects//metrics, SDK admin.metrics(), and https://gate.odilelabs.com/dashboard. Last 24 hours of stored call rows by status and reason, average/max duration through response headers including upstream wait, and separate monthly gateway usage. Invalid keys have at most 20 audit rows/hour; local-audit-off periods and internal control events are excluded. Coverage is partial; not an availability or Gate-overhead guarantee. No upstream requests, policy changes or gateway-quota use. - Direct account usage: signed-in MCP get_direct_usage after direct:tasks consent, https://odilelabs.com/developers, or developer-key GET /a2a/v1/usage. Current America/New_York calendar-month free-task use, prepaid Direct credits and last 20 charged tasks, scoped to the caller. Read-only; no automatic purchase, upgrade or charge. Not in the directory connector; phone minutes and media credits are separate. ## Response redaction and merchant payments Response redaction on Free and Pro: choose an app’s JSON fields with gate_set_response, REST PUT /api/projects//apps//response, SDK admin.setResponse(app, allow), or its dashboard. JSON Pointer paths such as /id and /items/*/name keep only selected fields; selecting a container includes its subtree. Filtering is opt-in, capped at 1 MiB and a 5-second body read. Non-JSON, malformed or oversized replies are withheld; a withheld reply does not reverse a write. Response bodies are inspected only when filtering is enabled and are never stored. Merchant payments (configured deposit pilot): the human approves Stripe Connect Checkout for the business’s configured service deposit. get_direct_payment, with direct:tasks consent, reconciles the caller’s existing task and returns Stripe-verified payment evidence, a receipt when available and separate booking state. It creates no new charge identity; a paid hold may finish its authorized booking. Bank payout status is unknown. Availability requires an enabled pilot, a connected merchant and provider configuration; no payment without human checkout.