{"apiVersion":"v1","directorySlug":"abbe-mcp-762ea25a2d","title":"abbe.io — one smart link that runs your whole front desk","description":"Abbe turns your bio link into an AI front desk that answers customers, takes booking requests, and captures every lead — 24/7.","pageUrl":"https://www.mcpbundles.com/skills/abbe-mcp-762ea25a2d","connectPath":"importable","connectAction":"import_server","catalogListing":false,"bundleSlug":null,"listingKind":"remote_mcp","kind":"provider","transportUrl":"https://api.abbe.io/mcp","hostedMcpUrl":null,"toolCount":15,"toolInventoryStatus":"observed","refreshedAt":"2026-11-03T13:26:00.516172+00:00","registryName":"io.abbe/abbe-mcp-762ea25a2d","registryVersion":"2026.11.3","registryEligible":true,"tools":[{"name":"find_businesses","description":"Find businesses with a front desk on this platform by what they sell, their trade or their name — \"gel manicure\", \"nail salon\", \"eyebrow threading\". Each result says why it matched and how it takes bookings.","inputSchema":{"type":"object","properties":{"limit":{"type":"integer"},"query":{"type":"string"}},"additionalProperties":false},"title":"Find businesses","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"find_businesses","displayName":"Find businesses"},{"name":"get_business","description":"Everything the business publishes about itself: name, bio, address, opening hours and whether it is open right now, links, prices, FAQ, policies and notes, today's announcements and offers, and how it takes bookings (booking.mode).","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string"}}},"title":"Business profile","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_business","displayName":"Business profile"},{"name":"get_services","description":"The business's published price list, as rows where they parse and the owner's own words always. Prices are what the owner wrote; there is no estimation.","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string"}}},"title":"Services and prices","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_services","displayName":"Services and prices"},{"name":"get_availability","description":"How this business takes bookings right now (booking.mode) and, when it takes them instantly, its real open slots. \"instant\": book one of the listed slots with book_appointment. \"external\": it books on its own page, at booking.url. \"request\": send request_appointment and the business confirms a time itself. To let the customer finish it themselves instead, give them a slot's bookUrl, or — in request mode — requestUrl with {start} (RFC3339) and {service} filled in: each opens the business's own pa","inputSchema":{"type":"object","required":["slug"],"properties":{"slug":{"type":"string"}}},"title":"How to book, and open times","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_availability","displayName":"How to book, and open times"},{"name":"book_appointment","description":"Books one of the times returned by get_availability, when booking.mode is \"instant\". The time must match a listed slot exactly. A phone number is required so the business can confirm.","inputSchema":{"type":"object","required":["slug","time","phone"],"properties":{"name":{"type":"string"},"slug":{"type":"string"},"time":{"type":"string"},"phone":{"type":"string"},"staff":{"type":"string"},"service":{"type":"string"},"idempotencyKey":{"type":"string"}}},"title":"Book an appointment","logicalName":"book_appointment","displayName":"Book an appointment","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"hold_slot","description":"Holds one of get_availability's times for five minutes while you get the customer's yes; confirm_booking then books it, and an unconfirmed hold lapses by itself. Only for agents that sign their requests (Web Bot Auth) — unsigned callers use book_appointment directly.","inputSchema":{"type":"object","required":["slug","time"],"properties":{"slug":{"type":"string"},"time":{"type":"string"},"staff":{"type":"string"}}},"title":"Hold a time","logicalName":"hold_slot","displayName":"Hold a time","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"confirm_booking","description":"Books a time held with hold_slot, within its five minutes. Only with the customer's say-so.","inputSchema":{"type":"object","required":["slug","time","holdToken","phone"],"properties":{"name":{"type":"string"},"slug":{"type":"string"},"time":{"type":"string"},"phone":{"type":"string"},"staff":{"type":"string"},"service":{"type":"string"},"holdToken":{"type":"string"}}},"title":"Confirm a held time","logicalName":"confirm_booking","displayName":"Confirm a held time","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_booking","description":"Whether a booking still stands — status \"accepted\" with its time, or \"cancelled\". Takes the token book_appointment returned; a request_appointment token works too.","inputSchema":{"type":"object","required":["slug","token"],"properties":{"slug":{"type":"string"},"token":{"type":"string"}}},"title":"Check a booking","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_booking","displayName":"Check a booking"},{"name":"cancel_booking","description":"Cancels a booking and frees the time; the business is told. Only with the customer's say-so. Takes the token book_appointment returned; a request_appointment token works too.","inputSchema":{"type":"object","required":["slug","token"],"properties":{"slug":{"type":"string"},"token":{"type":"string"}}},"title":"Cancel a booking","logicalName":"cancel_booking","displayName":"Cancel a booking","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"request_appointment","description":"Asks the business for an appointment, for when booking.mode is \"request\". Offer the times that suit the customer in `windows`: the owner accepts one with a tap, suggests another time, or declines. Nothing is booked until they accept. Returns a token — call get_request with it to see what they decided.","inputSchema":{"type":"object","required":["slug","service"],"properties":{"name":{"type":"string"},"note":{"type":"string"},"slug":{"type":"string"},"when":{"type":"string"},"email":{"type":"string"},"party":{"type":"integer","maximum":50,"minimum":1},"phone":{"type":"string"},"service":{"type":"string"},"windows":{"type":"array","items":{"type":"object","required":["start"],"properties":{"end":{"type":"string"},"start":{"type":"string"}}},"maxItems":5},"idempotencyKey":{"type":"string"}}},"title":"Request an appointment","logicalName":"request_appointment","displayName":"Request an appointment","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"get_request","description":"What the business decided about a request_appointment: pending (not decided yet), accepted (booked — `at` is the time), proposed (they suggested `at` instead; the customer must confirm it, with confirm_request or on statusUrl), declined, expired (nobody decided in time) or cancelled.","inputSchema":{"type":"object","required":["slug","token"],"properties":{"slug":{"type":"string"},"token":{"type":"string"}}},"title":"Check a request","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"get_request","displayName":"Check a request"},{"name":"confirm_request","description":"Books the time the business suggested (get_request shows status \"proposed\" and `at`). Only with the customer's say-so: this makes the appointment.","inputSchema":{"type":"object","required":["slug","token"],"properties":{"slug":{"type":"string"},"token":{"type":"string"}}},"title":"Accept a suggested time","logicalName":"confirm_request","displayName":"Accept a suggested time","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"cancel_request","description":"Withdraws a request the customer no longer wants — or, if the business already accepted it, cancels the appointment and frees the time. Only with the customer's say-so.","inputSchema":{"type":"object","required":["slug","token"],"properties":{"slug":{"type":"string"},"token":{"type":"string"}}},"title":"Withdraw a request","logicalName":"cancel_request","displayName":"Withdraw a request","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"leave_message","description":"Sends the business a message — a question its published information does not answer, or anything the customer wants the owner to see. The owner receives it and replies directly.","inputSchema":{"type":"object","required":["slug","message"],"properties":{"name":{"type":"string"},"slug":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"message":{"type":"string"}}},"title":"Leave a message","logicalName":"leave_message","displayName":"Leave a message","annotations":{"untrustedContentHint":true,"readOnlyHint":true}},{"name":"ask_business","description":"Ask a free-text question answered only from the business's own knowledge. Use the other tools first: they are exact, and this one runs a language model.","inputSchema":{"type":"object","required":["slug","question"],"properties":{"slug":{"type":"string"},"question":{"type":"string"}}},"title":"Ask the front desk","annotations":{"readOnlyHint":true,"untrustedContentHint":true},"logicalName":"ask_business","displayName":"Ask the front desk"}],"toolSource":"directory_preview","agentAction":"both","installLinks":[{"id":"cursor","label":"Cursor","href":"cursor://anysphere.cursor-deeplink/mcp/install?name=abbe-io-one-smart-link-that-runs-your-whole-front-desk&config=eyJ1cmwiOiAiaHR0cHM6Ly9hcGkuYWJiZS5pby9tY3AifQ%3D%3D"},{"id":"vscode","label":"VS Code","href":"vscode:mcp/install?%7B%22name%22%3A%22abbe-io-one-smart-link-that-runs-your-whole-front-desk%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.abbe.io%2Fmcp%22%7D"},{"id":"vscode-insiders","label":"VS Code Insiders","href":"vscode-insiders:mcp/install?%7B%22name%22%3A%22abbe-io-one-smart-link-that-runs-your-whole-front-desk%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.abbe.io%2Fmcp%22%7D"},{"id":"claude-web","label":"Claude.ai","href":"https://claude.ai/customize/connectors?modal=add-custom-connector&connectorName=abbe.io+%E2%80%94+one+smart+link+that+runs+your+whole+front+desk&connectorUrl=https%3A%2F%2Fapi.abbe.io%2Fmcp"},{"id":"codex","label":"Codex","copyText":"codex mcp add \"abbe-io-one-smart-link-that-runs-your-whole-front-desk\" --url \"https://api.abbe.io/mcp\""},{"id":"chatgpt","label":"ChatGPT","href":"https://www.mcpbundles.com/docs/integrations/chatgpt"}],"catalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/abbe-mcp-762ea25a2d","callUrl":"https://www.mcpbundles.com/api/directory/v1/servers/abbe-mcp-762ea25a2d/tools/{tool}","mcpServerUrl":"https://api.abbe.io/mcp","liveCatalogUrl":"https://www.mcpbundles.com/api/directory/v1/servers/abbe-mcp-762ea25a2d?live=1"}