Skip to main content
Glama
chrischall

resy-mcp

by chrischall

resy_search_venues

Read-only

Find restaurants on Resy with open tables for a chosen date and party size. Returns venues with bookable slots; omit coordinates to search New York City.

Instructions

Search Resy for restaurants with availability. Returns venues including any bookable slot tokens for the requested date + party size. Defaults to NYC geo if lat/lng omitted.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNoLatitude (default 40.7128 NYC)
lngNoLongitude (default -73.9876 NYC)
dateYesDesired date YYYY-MM-DD
viewNoResponse shape: "compact" (default) drops fields the response already carries elsewhere; "full" returns every field this server understands. compact strips image/avatar URLs from the response; "full" returns Resy's payload untouched. No field projection: this server has no verified record of which Resy fields matter, and inventing one would risk dropping a field a caller needs.
limitNoMax venues (default 20)
queryNoVenue name or keyword
party_sizeYesNumber of guests
radius_metersNoSearch radius in meters (default 16100)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.0.0
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. Changed1 schema field changedv0.13.0
    • addedInput schema / properties / view
      Added value: +{
      +  "description": "Response shape: \"compact\" (default) drops fields the response already carries elsewhere; \"full\" returns every field this server understands. compact strips image/avatar URLs from the response; \"full\" returns Resy's payload untouched. No field projection: this server has no verified record of which Resy fields matter, and inventing one would risk dropping a field a caller needs.",
      +  "enum": [
      +    "compact",
      +    "full"
      +  ],
      +  "type": "string"
      +}
  3. Addedv0.6.2
  4. Removedv0.6.1
  5. First observedv0.5.1

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The readOnlyHint annotation already declares this is a read operation, and the description adds useful behavior beyond that: it returns venue objects with bookable slot tokens and defaults to NYC geo when lat/lng are omitted. It does not cover pagination or rate limits, but for a read-only search tool the annotations and description together are reasonably transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise sentences with no filler. The core purpose is front-loaded, followed by the key return characteristic and the default geo behavior. Every sentence earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter tool with no output schema, the description gives only an overview: venues and bookable slots, plus the geo default. It does not describe response shape details, pagination, or how the returned venue identifiers might relate to downstream tools like resy_get_venue or resy_find_slots. It is adequate but leaves meaningful gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents every parameter. The description mostly restates the date/party size relationship and the lat/lng defaults already present in the schema, adding little beyond what structured fields provide.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a clear verb and resource: 'Search Resy for restaurants with availability.' It also specifies the returned data ('venues including any bookable slot tokens') and the date/party context requested. However, it does not explicitly distinguish itself from sibling tools like resy_find_slots or resy_get_venue.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage: use this when searching for restaurants with availability for a date and party size, with optional geo or keyword narrowing. It does not mention when to prefer sibling tools like resy_find_slots or resy_get_venue, and it offers no explicit exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.