Skip to content

Servana

by servana.ai · remote · no sign-in to list tools · v1.0.0 · published by ai.servana

Search and message local service vendors (cleaning, med spa, yoga, personal training) by city.

Deletes · 2Final · 1Changes · 2

8 tools: 2 can delete or cancel things, 1 do something that can't be undone, 2 change things and 3 only read.

Scanned Oct 21, 2026

3 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http servana https://servana.ai/api/mcp

Findings

Matches of fixed checks, with the text they matched.

3 warn
  • The server marks "estimate_service_request" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "estimate_service_request" says "request": a word for a change.

    What this check looks for
  • The server marks "check_enquiry_replies" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "check_enquiry_replies" says "reply": a word for sending, and what is sent cannot be taken back.

    What this check looks for
  • The server marks "prepare_quote_request" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "prepare_quote_request" says "request": a word for a change.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

8 tools

Deletes or cancels 2Claude Code: deny
  • request_quoteUse this when the user approved a structured quote request to 1 to 3 Servana businesses (usually from the prepare_quote_request form).No findings

    Why it is in this group

    • The name "request_quote" says "request": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Use this when the user approved a structured quote request to 1 to 3 Servana businesses (usually from the prepare_quote_request form). Servana formats the details the businesses asked for and emails the user their replies. If details are missing it returns which ones; ask the user, never invent. Do not use to book or pay; Servana does neither.

    Annotations the server declares

    • title: Send a quote request
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
  • send_message_to_vendorUse this when the user has chosen a Servana business and asks you to contact it, request a quote, or ask about availability.No findings

    Why it is in this group

    • The name "send_message_to_vendor" says "send": a word for sending, and what is sent cannot be taken back.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Use this when the user has chosen a Servana business and asks you to contact it, request a quote, or ask about availability. It sends the user's enquiry to the business; Servana emails the user when the business replies. Pass customer_name and customer_email when the user gave them. To ask several businesses at once (up to 3), put the extra slugs in also_vendor_slugs. Keep the enquiry_refs it returns for check_enquiry_replies. Before calling, show the user the exact message and get their approval, and include their name and an email or phone number. Do not use to confirm a booking or take payment (Servana does neither), or for businesses marked as not accepting AI-assistant messages.

    Annotations the server declares

    • title: Message a business
    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: false
    • openWorldHint: true
Can't be undone 1Claude Code: ask
  • check_enquiry_repliesUse this when the user asks whether a business answered an enquiry sent earlier in this conversation with send_message_to_vendor.1 finding

    Why it is in this group

    • The name "check_enquiry_replies" says "reply": a word for sending, and what is sent cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "check_enquiry_replies" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "check_enquiry_replies" says "reply": a word for sending, and what is sent cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Use this when the user asks whether a business answered an enquiry sent earlier in this conversation with send_message_to_vendor. Pass the enquiry_refs that send_message_to_vendor returned. Returns, per business, whether it replied and the latest reply. Do not use for enquiries sent outside this conversation or without a ref; never guess a ref.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Check for replies
Changes things 2Claude Code: ask
  • estimate_service_requestUse this when the user asks what a local service costs in a city (e.g.1 finding

    Why it is in this group

    • The name "estimate_service_request" says "request": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "estimate_service_request" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "estimate_service_request" says "request": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Use this when the user asks what a local service costs in a city (e.g. 'how much is a deep clean in NYC?'). Returns a rough range from Servana businesses' posted rates with a confidence level ('high' = 5+ local priced businesses, 'medium' = 2-4, 'low' = 0-1, then a category-wide median) and an explanation naming the sample. Always call it an estimate, never a quote: each business sets its own price. Do not use for one business's prices; use get_vendor.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • title: Estimate service cost
  • prepare_quote_requestUse this when the user wants quotes or availability from 1 to 3 Servana businesses (slugs from search_vendors).1 finding

    Why it is in this group

    • The name "prepare_quote_request" says "request": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "prepare_quote_request" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "prepare_quote_request" says "request": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Use this when the user wants quotes or availability from 1 to 3 Servana businesses (slugs from search_vendors). It shows a quote request form with the details those businesses need (date, area, size and so on), pre-filled with what the user already said, so the user can check and send it. Prefer this over writing a free-text message. It sends nothing. Do not use for businesses that were not returned by search_vendors.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Prepare a quote request
Only reads 3Claude Code: allow
  • get_vendorUse this when the user asks about one specific business from search_vendors results or a servana.ai page: its services, prices, rating, claim status, and whether it accepts message…No findings

    Why it is in this group

    • The name "get_vendor" says "get": a word for reading.
    Description, as the server wrote it
    Use this when the user asks about one specific business from search_vendors results or a servana.ai page: its services, prices, rating, claim status, and whether it accepts messages from AI assistants. Do not use to search for businesses.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • title: Get business profile
  • search_servicesUse this when the user describes a local service they want done in person (e.g.No findings

    Why it is in this group

    • The name "search_services" says "search": a word for reading.
    Description, as the server wrote it
    Use this when the user describes a local service they want done in person (e.g. 'someone to fold my laundry', 'deep clean my apartment', 'a trainer who comes to my home') and you need Servana's category slug for search_vendors or estimate_service_request. Skip it if the request clearly fits one of these slugs: 'cleaning-and-organizing' (house cleaning, decluttering), 'laundry-washing' (wash and fold), 'med-spa' (botox, facials, skincare), 'yoga', 'personal-training', 'photography', 'home-services' (handyman, home upkeep), 'personal-services'. Do not use for online products, emergencies, or medical, legal or financial advice.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Search service categories
  • search_vendorsUse this when the user wants to find, compare or hire a local business for an in-person service in a US city: house cleaners, laundry, med spas, yoga teachers, personal trainers, p…No findings

    Why it is in this group

    • The name "search_vendors" says "search": a word for reading.
    Description, as the server wrote it
    Use this when the user wants to find, compare or hire a local business for an in-person service in a US city: house cleaners, laundry, med spas, yoga teachers, personal trainers, photographers, home services. Returns real businesses listed on Servana with rating, pricing when posted, claim status and a page URL. If it returns no results, tell the user Servana has no listed business for that yet; never invent one. Pass the user's specific need in `need` (e.g. decluttering, deep clean, packages) so the best-fitting businesses come first. Nearby towns are searched together (e.g. Nocatee with Ponte Vedra). Do not use for businesses outside the US or for services Servana does not list (use search_services if unsure).

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: true
    • title: Find local businesses

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http servana https://servana.ai/api/mcp

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__servana__search_services",
      "mcp__servana__search_vendors",
      "mcp__servana__get_vendor"
    ],
    "ask": [
      "mcp__servana__estimate_service_request",
      "mcp__servana__check_enquiry_replies",
      "mcp__servana__prepare_quote_request"
    ],
    "deny": [
      "mcp__servana__send_message_to_vendor",
      "mcp__servana__request_quote"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as servana. Review it before you use it.