Seemor API Docs
Tools

find_restaurant

Fuzzy name search with optional city disambiguation

find_restaurant

Search for restaurants by name. Supports partial and fuzzy matching with optional city filtering.

Tier: Free

Use cases

  • Find a specific restaurant when you know the name (or part of it)
  • Disambiguate between restaurants with the same name in different cities
  • Get a seemor_id to use with lookup_restaurant

Parameters

NameTypeRequiredDefaultDescription
namestringYes--Restaurant name to search for. Partial matches work.
citystringNo--City to narrow the search.
limitnumberNo5Maximum results to return (1-10).

Response

FieldTypeDescription
status"ok"Response status
resultsarrayMatching restaurants (see fields below)
total_matchesnumberTotal matches found (may exceed limit)

Result fields

FieldTypePossible valuesDescription
seemor_idstringUUIDUnique restaurant identifier. Use this with other tools.
namestring--Restaurant name
addressstring | null--Street address
coordinatesobject{ lat: number, lng: number }Geographic coordinates
citystring | null--City name
neighborhoodstring | null--Neighborhood name
cuisine_tagsstring[]--Cuisine classifications (e.g., ["italian", "pizza"])
gradestring | nullA+, A, A-, B+, B, B-, C+, C, C-, D, F (may include ? suffix)Seemor letter grade. Null if not yet analyzed. A ? suffix indicates reduced confidence -- fewer than 100 reviews or review authenticity concerns.
coverage_levelstring"full", "basic"full = deep analysis available. basic = catalogued but not yet analyzed.

This tool returns a lightweight response. For full details (TL;DR, price level, grade label, URL), use lookup_restaurant with the returned seemor_id.

Example request

curl -X POST https://api.seemor.ai/api/mcp \
  -H "Authorization: Bearer sk_seemor_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "tools/call",
    "params": {
      "name": "find_restaurant",
      "arguments": {
        "name": "Dishoom",
        "city": "London"
      }
    }
  }'

Example response

{
  "status": "ok",
  "results": [
    {
      "seemor_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
      "name": "Dishoom Shoreditch",
      "address": "7 Boundary St, London E2 7JE",
      "coordinates": { "lat": 51.5244, "lng": -0.0763 },
      "city": "London",
      "neighborhood": "Shoreditch",
      "cuisine_tags": ["indian", "bombay cafe"],
      "grade": "A-",
      "coverage_level": "full"
    }
  ],
  "total_matches": 5
}

Notes

  • Matching priority: exact match > starts-with > substring. Results sorted by analysis depth, then alphabetically.
  • The limit parameter accepts 1-20 in the schema but the handler caps at 10.
  • Use coverage_level to check whether deeper data is available before calling lookup_restaurant with standard or premium fields.

On this page