# Servana

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

- name: ai.servana/servana
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 80/100 flags: no-repository
- quality: 75/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/ai.servana%2Fservana
- tools: https://api.protogrid.dev/v1/servers/ai.servana%2Fservana/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "servana": {
      "type": "http",
      "url": "https://servana.ai/api/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 85
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-99% ~updated-54d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 75/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 8 of 8 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 2,464 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 25 (weight 15)

- warn `stability.changes`: 11 tool changes in 30 days
- fail `stability.rug_pull`: 5 tools kept their name but changed most of their description in 30 days; review before trusting them

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 8, about 2,464 tokens to load them all
- tool set hash: df6f0882828ca8c036c2e43fde27f892
- tools last changed: 2026-10-08T17:35:59.424Z
- badge: [![protogrid quality](https://protogrid.dev/badge/ai.servana/servana.svg)](https://protogrid.dev/servers/ai.servana/servana)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-08 `search_vendors` changed (description, inputSchema)
  - before: 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. Do not use for businesses outside the US or for services Servana does not list (use search_services if unsure).
  - after: 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).
- 2026-10-07 `request_quote` added
  - 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.
- 2026-10-07 `prepare_quote_request` added
  - 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.
- 2026-10-06 `check_enquiry_replies` added
  - 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.
- 2026-10-06 `send_message_to_vendor` changed (description, inputSchema)
  - before: 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. 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.
  - after: 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.
- 2026-10-06 `send_message_to_vendor` changed (description, inputSchema)
  - before: 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's Servana inbox; the business replies to the user directly. 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.
  - after: 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. 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.
- 2026-10-01 `send_message_to_vendor` changed (description, inputSchema, annotations) **meaning changed**
  - before: Send a message or booking enquiry to a Servana vendor on the user's behalf. The vendor sees it in their Servana inbox. Include what the user needs, and contact details so the vendor can reply. Requires the user's explicit approval before calling: this contacts a real business.
  - after: 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's Servana inbox; the business replies to the user directly. 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.
- 2026-10-01 `estimate_service_request` changed (description, inputSchema) **meaning changed**
  - before: Get a rough price estimate for a service in a given city, based on Servana vendors' posted rates. Always a heuristic ESTIMATE, not a quote from any specific vendor: actual pricing is set by each vendor. Response includes a confidence level ('high' = 5+ locally priced vendors, 'medium' = 2-4, 'low' = 0-1, in which case the range falls back to a category-wide median across all metros) and an explanation string naming the sample size and metro used.
  - after: 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.
- 2026-10-01 `get_vendor` changed (description, annotations) **meaning changed**
  - before: Get one Servana vendor's public profile: name, description, services + pricing, verification status, rating, and page URL.
  - after: 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.
- 2026-10-01 `search_vendors` changed (description, inputSchema, annotations) **meaning changed**
  - before: Search Servana's directory of local service businesses (cleaning, med spa, yoga, personal training, and more) by US state, city, and service. Returns business names, descriptions, verification status, rating, pricing, and page URLs.
  - after: 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. Do not use for businesses outside the US or for services Servana does not list (use search_services if unsure).

Full history: https://api.protogrid.dev/v1/servers/ai.servana%2Fservana/changes

## Remotes

- https://servana.ai/api/mcp (streamable-http, auth none, reachable true, uptime30d 0.99159664)

## Packages

_none_

## Tools (8)

- `check_enquiry_replies`: 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.
- `estimate_service_request`: 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.
- `get_vendor`: 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.
- `prepare_quote_request`: 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.
- `request_quote`: 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.
- `search_services`: 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.
- `search_vendors`: 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).
- `send_message_to_vendor`: 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.
