# Maison Docs > Maison is an AI hotel concierge platform. These docs cover the public tool API (REST, MCP and A2A over one tool catalogue), the chat widget, and third-party integrations. ## Agent skills - [maison-public-api](https://docs.maison-labs.com/skill.md): Operate Maison, the AI hotel concierge platform, through its public tool API: one-shot tools for provisioning hotels, managing knowledge, talking to a hotel's concierge, users and access, analytics and reports, channels, integrations, configuration, plans, groups and quality. The same tools are callable over REST, MCP and A2A with an API key. Use whenever a task involves Maison hotels, their concierge, or the Maison admin console. 340 tools in 19 groups. - [maison-account](https://docs.maison-labs.com/skills/maison-account/SKILL.md): Discover what the calling API key may do before planning anything: who the key belongs to, whether they are Maison staff, every feature grant they hold globally or per hotel, and which hotel ids they can act on; and manage the caller's own API keys and connected apps. Use at the start of any session with the Maison public API, when a call returned 403, or when choosing which hotel id to pass. Also read or clear your own operator notices (agent replies, guest messages in conversations you handle, conversations needing attention, agent notices). Tools: disable_my_api_key, get_notice_summary, list_my_api_keys, list_my_connected_apps, list_notices, mark_notices_read, revoke_my_connected_app, whoami. - [maison-clients](https://docs.maison-labs.com/skills/maison-clients/SKILL.md): Create and manage hotels on Maison: provision a new client in one call (website, default configuration, first scrape, preview site), read or update a client record, disable or re-enable it, rescrape its website, deploy its demo preview site, read its workspace overview, metrics and activity timeline, and inspect or stop running background jobs. Use for onboarding a hotel, changing its settings, or operating it day to day. Tools: create_client, deploy_preview_site, disable_client, enable_client, get_client, get_client_activity, get_client_metrics, get_client_overview, get_clients_summary, get_live_clients_report, list_client_jobs, list_clients, rescrape_client_website, stop_client_job, update_client. - [maison-knowledge](https://docs.maison-labs.com/skills/maison-knowledge/SKILL.md): Manage what a hotel's concierge knows: website and document knowledge sources (add, sync, rescrape, disable/reactivate, follow a run and its log and report, rediscover booking links, versions, download, large uploads), curated Q&A pairs (add, update, publish, unpublish, delete, version history), unanswered-question gaps (list, detect, answer, dismiss, reopen) and knowledge quality runs (deduplicate, consistency check, their reports). Use when a hotel's answers are missing, wrong or stale, or when adding new content. Tools: add_document_source, add_document_version, add_qa_pairs, add_website_source, answer_knowledge_gap, check_knowledge_consistency, create_document_upload, deduplicate_knowledge, delete_document_version, delete_qa_pairs, detect_knowledge_gaps, disable_source, discover_booking_links, dismiss_knowledge_gap, download_document, get_knowledge_quality_run, get_qa_counts, get_qa_pair, get_source_run_logs, get_source_run_report, get_website_scrape, list_document_versions, list_knowledge_gaps,… - [maison-conversations](https://docs.maison-labs.com/skills/maison-conversations/SKILL.md): Talk to a hotel's AI concierge, read its conversations and work the operator inbox: send a message and get the reply, fetch, list, search and export conversations, rank the most common guest questions (FAQs, topics: amenities, parking, check-in), see who holds each conversation and what needs an operator across hotels, take over or hand back, reply to the guest, whisper to the agent, stop its turn, mark read, and look up the known guest. Use to test answers after a knowledge change, to review or answer guests, to build a website FAQ, or to pull transcripts. Tools: export_chat_logs, get_common_questions, get_conversation, get_conversation_attention, get_conversation_guest, list_conversation_inbox, list_conversations, list_guest_conversations, list_recent_conversations, mark_conversation_read, reply_to_conversation, search_conversations, send_message, set_conversation_mode, stop_conversation_turn, whisper_to_agent. - [maison-users](https://docs.maison-labs.com/skills/maison-users/SKILL.md): Manage people on Maison: list and read platform users, invite new users with roles and groups in one call, update, disable, enable, re-invite or force a password reset, read a user's activity, hotels, masked API keys and connected apps (and disable a key or revoke an app); and manage a hotel's own users — add a person to a hotel with roles (a new email gets an account in the same call), change their roles or groups, resend or revoke a hotel invite, remove them. Use for onboarding staff, access reviews and offboarding. Tools: add_client_user, disable_user, disable_user_api_key, enable_user, force_password_reset, get_client_user_access, get_user, get_user_activity, invite_user, list_client_users, list_credential_audit, list_user_api_keys, list_user_clients, list_user_connected_apps, list_users, reinvite_user, remove_client_user, resend_client_invite, revoke_client_invite, revoke_user_connected_app, set_client_user_groups, set_client_user_roles, update_user. - [maison-access](https://docs.maison-labs.com/skills/maison-access/SKILL.md): Shape permissions on Maison: roles, policies and user groups, each available to one hotel or to all clients (roles and policies may be Maison only). A policy is a list of rules (feature + level) and is never applied to a client directly — a role applies each of its policies at all clients or at named clients (Applies to). Also the feature catalogue and effective-access views. Use when designing who may do what, troubleshooting a 403, or granting a team a bundle of permissions. Tools: add_client_policy_statement, add_client_role_rule, add_role_policy, assign_role, assign_role_to_group, attach_client_role_policy, attach_role_policy, create_client_group, create_client_policy, create_client_role, create_group, create_policy, create_role, delete_client_group, delete_client_policy, delete_group, delete_policy, detach_client_role_policy, detach_role_policy, disable_client_role, disable_role, get_client_group, get_client_policy, get_client_role, get_group, get_policy, get_role, link_client_group_role,… - [maison-analytics](https://docs.maison-labs.com/skills/maison-analytics/SKILL.md): Measure and report: the Analytics page figures for one hotel and the Portfolio page figures across every hotel the caller may read (conversations, answered without handoff, knowledge gaps, daily channels, top unanswered questions, needs-you items), a portfolio overview, per-hotel dashboard statistics, and chat-log and AI-visibility reports (run, list runs across hotels, read as HTML or download as a spreadsheet, rerun). Use when asked how a hotel or portfolio is performing, to produce a periodic report, or to email a report to recipients. Tools: get_ai_visibility_report, get_chatlog_report, get_conversation_analytics, get_dashboard_stats, get_portfolio_analytics, get_portfolio_overview, list_ai_visibility_reports, list_chatlog_reports, list_report_runs, rerun_ai_visibility_report, rerun_chatlog_report, run_ai_visibility_report, run_chatlog_report. - [maison-channels](https://docs.maison-labs.com/skills/maison-channels/SKILL.md): Operate a hotel's messaging channels: list connected Instagram, Messenger, WhatsApp and email channels with their auto-reply state, change auto-reply or draft-only settings, disconnect a channel, manage per-channel reply instructions, get the browser link that starts a channel connection, and opt a hotel into the ChatGPT guest app. Use when a hotel wants the concierge on a social or email channel, or when replies on a channel misbehave. Tools: add_channel_instruction, connect_chatgpt_channel, delete_channel_instruction, disconnect_channel, get_channel_connect_link, list_channel_instructions, list_channels, update_channel_instruction, update_channel_settings. - [maison-integrations](https://docs.maison-labs.com/skills/maison-integrations/SKILL.md): Connect third-party systems to a hotel in one call: browse the provider catalogue, list a hotel's integrations (credentials masked), add or update an integration with credentials, config and tool audiences, enable, disable or remove it, verify a config value against the provider, list provider properties (rezStream, Mews, ResNexus), email a hotel's account holder the consent link for rezStream or STS Cloud, and list the PMS rate plans. Use when onboarding a hotel's PMS, payment gateway or booking system, or when a booking tool stops working. Tools: add_integration, check_integration_config, disable_integration, enable_integration, list_client_integrations, list_integration_catalog, list_integration_properties, list_pms_rate_plans, remove_integration, send_integration_connect_link. - [maison-configuration](https://docs.maison-labs.com/skills/maison-configuration/SKILL.md): Configure how a hotel's concierge behaves and looks: the hotel configuration document (set/unset fields), the chatbot tone, the chat widget's runtime switches and full style map, guest-facing translations with machine translation, theme colour and visuals, media assets, the sales agent configuration and lead recipients, internal client notes, the email log, settings catalogues (regions, departments, tags) and report subscribers. Use for any 'change what the concierge says/looks like' request or to read a hotel's current setup. Tools: add_client_note, add_client_setting, add_report_subscribers, create_media_upload, create_theme_visual_upload, delete_client_note, generate_theme_icon, get_chat_runtime, get_chat_styles, get_chatbot_tone, get_client_email, get_client_email_attachment, get_hotel_config, get_staff_notification_emails, get_theme, get_theme_visual, get_translations, list_client_emails, list_client_notes, list_client_settings, list_media_assets, list_note_versions, list_report_subscribers,… - [maison-features](https://docs.maison-labs.com/skills/maison-features/SKILL.md): Control what a hotel's plan includes: read the caller's per-feature access snapshot for a hotel, list and change the hotel's entitled features (grant/revoke in one call), push a feature to every child property, and manage plan templates (create, update, assign, apply with optional pruning, drift report, per-client overrides, plan history), Maison's payment gateway fees and the feature catalogue. Each plan feature is on or locked (shown to the hotel locked, with the plan's message); a feature left out is off. Use when a hotel upgrades or downgrades, when a tool answers 403 not_entitled, or when standardising plans across a group. Tools: apply_plan_template, assign_plan_template, clear_client_feature_override, clear_client_gateway_fee, clear_plan_gateway_fee, create_feature, create_plan_template, delete_plan_template, deprecate_feature, get_client_access, get_client_plan, get_gateway_fee_totals, get_plan_template, grant_client_feature, grant_feature_to_children, list_client_features, list_client_gateway_fees,… - [maison-hierarchy](https://docs.maison-labs.com/skills/maison-hierarchy/SKILL.md): Manage hotel groups: read a hotel's parent and children, find attachable candidates, attach or detach child properties, and run property discovery on a group website (start, read, edit candidates, approve/reject in bulk, approve to provision). Use when onboarding a brand or group site with several hotels, or when a property must move between groups. Tools: approve_property_discovery, attach_child_property, decide_property_candidates, detach_child_property, get_client_hierarchy, get_property_discovery, list_child_candidates, list_children_feature_counts, start_property_discovery, update_property_candidate. - [maison-quality](https://docs.maison-labs.com/skills/maison-quality/SKILL.md): Measure answer quality: run and read golden-FAQ test runs and chat test runs for a hotel, list the golden questions and chat tests, and (Maison staff) work the Guest Agent quality review queue (`chat-feedback`) — list items, run the classifier, resolve, dismiss or reopen. Use after knowledge changes to prove nothing regressed, or to triage conversations the classifier flagged as poor. Tools: dismiss_chat_feedback, get_test_report, list_chat_feedback, list_chat_tests, list_golden_questions, list_test_runs, reopen_chat_feedback, resolve_chat_feedback, run_chat_feedback, run_chat_tests, run_golden_faq_test. - [maison-hubspot](https://docs.maison-labs.com/skills/maison-hubspot/SKILL.md): Link Maison hotels to companies in Maison's own HubSpot portal: search companies, read a hotel's link and last push outcome, link by id or create-and-link in one call, unlink, and push the last week's chat volume. Use for Maison's internal CRM upkeep; these tools are absent when HubSpot is switched off in the environment. Tools: get_hubspot_link, link_hubspot_company, push_hubspot_chat_volume, search_hubspot_companies, unlink_hubspot_company. - [maison-platform](https://docs.maison-labs.com/skills/maison-platform/SKILL.md): Orient and verify: the documentation index with machine-readable discovery URLs, the exact widget embed code for a hotel, a website check (framework, widget present, client id), the AI site diagnostic (start, read findings, ask follow-ups) and a live platform health summary. Use when installing the widget on a hotel's site, when a site seems not to load the concierge, or to find the right documentation page. Tools: chat_site_diagnostic, check_website, get_documentation, get_platform_status, get_site_diagnostic, get_widget_embed_code, start_site_diagnostic. - [maison-agents](https://docs.maison-labs.com/skills/maison-agents/SKILL.md): Configure per-hotel AI agents that evaluate every guest turn and take actions (send emails, fire webhooks, reply in chat, etc.) when their match criteria are met. Use to create, read, update, enable, disable and dry-test agents, and to browse execution history. Tools: create_agent, delete_agent, disable_agent, enable_agent, get_agent, get_agent_execution_history, get_guest_agent_settings, list_agent_execution_history, list_agent_sessions, list_agent_templates, list_agent_tools, list_agents, test_agent, update_agent, update_guest_agent_settings. - [maison-usage](https://docs.maison-labs.com/skills/maison-usage/SKILL.md): Answer spend questions about LLM calls across the platform: total tokens and estimated costs by day, model, purpose or client, and individual call records for a date window. Costs are list-price estimates. Use get_llm_usage_summary to chart trends (line or bar block); use list_llm_usage to inspect individual records. Windows must not exceed 31 days. Tools: get_llm_usage_summary, list_llm_usage. - [maison-webhooks](https://docs.maison-labs.com/skills/maison-webhooks/SKILL.md): Manage a hotel's incoming webhooks: named inboxes its other systems (survey tools, CRMs, form builders, automation platforms) POST to, which start the agents that list them as inputs. Create, read, update and delete webhooks; add, rename, reveal, rotate and revoke their named keys; read the request log and delivery analytics. Use when wiring an external system to a hotel's agents or diagnosing why a sender's requests are refused. Tools: add_webhook_key, create_webhook, delete_webhook, get_webhook, get_webhook_analytics, get_webhook_request, list_webhook_requests, list_webhooks, rename_webhook_key, reveal_webhook_key, revoke_webhook_key, rotate_webhook_key, update_webhook. - [maison-apps](https://docs.maison-labs.com/skills/maison-apps/SKILL.md): Manage the developer apps (OAuth clients) a hotel registers to call the Maison public API on its behalf: register, read, edit, revoke and reinstate apps, read each app's analytics, request log and audit trail; and, for Maison staff, verify, suspend, revoke or reinstate any app on the platform. Use when a hotel wants its own software or a partner to call the API, or when an app must be stopped. Tools: create_client_app, get_client_app, get_client_app_analytics, list_client_app_audit, list_client_app_requests, list_client_apps, list_oauth_apps, reinstate_client_app, reinstate_oauth_app, revoke_client_app, revoke_oauth_app, suspend_oauth_app, unsuspend_oauth_app, unverify_oauth_app, update_client_app, verify_oauth_app. ## Machine-readable - [Skills index](https://docs.maison-labs.com/.well-known/agent-skills/index.json) - [OpenAPI document](https://maison-labs.com/api/v1/openapi.json) - [A2A agent card](https://maison-labs.com/.well-known/agent.json) - [Tool catalogue (API key)](https://maison-labs.com/api/v1/tools) ## Docs pages - [a2a](https://docs.maison-labs.com/a2a/) - [api-reference](https://docs.maison-labs.com/api-reference/) - [auth](https://docs.maison-labs.com/auth/) - [auth/oauth](https://docs.maison-labs.com/auth/oauth/) - [diagnostic](https://docs.maison-labs.com/diagnostic/) - [installation](https://docs.maison-labs.com/installation/) - [installation/angular](https://docs.maison-labs.com/installation/angular/) - [installation/drupal](https://docs.maison-labs.com/installation/drupal/) - [installation/framer](https://docs.maison-labs.com/installation/framer/) - [installation/html](https://docs.maison-labs.com/installation/html/) - [installation/nextjs](https://docs.maison-labs.com/installation/nextjs/) - [installation/react](https://docs.maison-labs.com/installation/react/) - [installation/shopify](https://docs.maison-labs.com/installation/shopify/) - [installation/squarespace](https://docs.maison-labs.com/installation/squarespace/) - [installation/vue](https://docs.maison-labs.com/installation/vue/) - [installation/webflow](https://docs.maison-labs.com/installation/webflow/) - [installation/wix](https://docs.maison-labs.com/installation/wix/) - [installation/wordpress](https://docs.maison-labs.com/installation/wordpress/) - [integrations](https://docs.maison-labs.com/integrations/) - [integrations/apaleo](https://docs.maison-labs.com/integrations/apaleo/) - [integrations/cloudbeds](https://docs.maison-labs.com/integrations/cloudbeds/) - [integrations/elavon](https://docs.maison-labs.com/integrations/elavon/) - [integrations/eventtemple](https://docs.maison-labs.com/integrations/eventtemple/) - [integrations/maestro](https://docs.maison-labs.com/integrations/maestro/) - [integrations/maisonapps](https://docs.maison-labs.com/integrations/maisonapps/) - [integrations/mews](https://docs.maison-labs.com/integrations/mews/) - [integrations/opera](https://docs.maison-labs.com/integrations/opera/) - [integrations/resnexus](https://docs.maison-labs.com/integrations/resnexus/) - [integrations/rezstream](https://docs.maison-labs.com/integrations/rezstream/) - [integrations/stayntouch](https://docs.maison-labs.com/integrations/stayntouch/) - [integrations/stayntouch/add-ons](https://docs.maison-labs.com/integrations/stayntouch/add-ons/) - [integrations/stripe](https://docs.maison-labs.com/integrations/stripe/) - [integrations/stscloud](https://docs.maison-labs.com/integrations/stscloud/) - [integrations/thinkreservations](https://docs.maison-labs.com/integrations/thinkreservations/) - [integrations/waiteraid](https://docs.maison-labs.com/integrations/waiteraid/) - [mcp](https://docs.maison-labs.com/mcp/) - [mcp/guest](https://docs.maison-labs.com/mcp/guest/) - [pms](https://docs.maison-labs.com/pms/) - [quickstart](https://docs.maison-labs.com/quickstart/) - [skills](https://docs.maison-labs.com/skills/) - [widget-sdk](https://docs.maison-labs.com/widget-sdk/)