Developers / MCP

Local context.
Explicit permission.

Connect an assistant to real, operator-managed places, events, and deals. Tabled's current developer surface is an authenticated, read-only Model Context Protocol server.

Transport
Streamable HTTP
Access
OAuth + user consent
Capabilities
Two read-only tools

Connect with consent.

Use an MCP client that supports remote Streamable HTTP and OAuth. Sign-in and permission approval happen on Tabled's screens. This is not an anonymous API or a shared API-key service.

MCP endpoint

https://api.usetabled.com/mcp
  1. Discover the protected resource metadata and authorization server metadata.
  2. Complete the authorization-code flow with PKCE (S256). Request only the scopes your integration needs and use the MCP endpoint as the resource.
  3. Let your MCP client initialize the connection and discover the current schemas with tools/list. Send the issued access token in the Authorization bearer header.

Building your own client?

Client origins must be approved by Tabled. The server uses HTTPS client-ID metadata documents and registered, same-origin redirect URLs; it does not offer open dynamic client registration. Contact us with your use case, client origin, and redirect URL before building an authorization flow. Never send us tokens or passwords.

Two tools. Defined boundaries.

recommend_local

Scope: recommendations:read

Returns factual candidates in one resolved city and state. Only active, verified, non-imported businesses with a live business member qualify, including their events and deals.

Required
query: 1 to 200 characters.
Location
city and a two-letter state, or latitude and longitude together. Always supply a location for predictable results. A state requires a city.
Filters
kind: place, event, deal, or any (default). openNow: false by default. limit: 1 to 20, default 10. maxDistanceMiles: 1 to 100, requires coordinates.
Output
Resolved market and results with public business slug, name, title, summary, categories, event times, distance, open state, and evidence labels. Some fields can be null. Image URLs, ranking scores, and database IDs are omitted.

operator_market_demand

Scope: operator:demand:read

Returns aggregate, consent-gated demand for an operator's market. The signed-in account must be an active member of the active, verified business.

Inputs
businessSlug: the public business slug. period: 7d, 30d (default), or 90d.
Privacy
Only completed dates are included. Daily cells need at least five distinct consenting accounts to be disclosed. Counts are disclosed request signals, not unique people; omitted cells are not zero demand.

Make a recommendation request.

Example JSON-RPC request body after authentication and MCP initialization. This illustrates the request shape, not a promise of results for this query.

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "recommend_local",
    "arguments": {
      "query": "coffee and a quiet place to work",
      "city": "Indianapolis",
      "state": "IN",
      "kind": "place",
      "limit": 5
    }
  }
}

POST to the MCP endpoint with your bearer token. Your MCP client should manage protocol headers, initialization, and JSON or event-stream responses. Send one JSON-RPC operation per HTTP request; batches are rejected.

Handle limits. Protect the user.

  • Access tokens last 15 minutes; refresh tokens last 30 days. Refreshes rotate tokens. Reusing a rotated token revokes its token family.
  • The account-and-client limit is 60 requests per minute. On HTTP 429, respect Retry-After and back off.
  • HTTP 401 means the bearer token is missing or invalid. Refresh or reconnect as appropriate. Missing scopes require consent, not repeated retries. Treat MCP tool errors as errors even when HTTP succeeds.
  • Keep account-scoped results out of shared caches. Do not put credentials in logs, prompts, URLs, or tool results.
  • No tools save, post, order, book, message, or administer a business. An empty result is valid; do not invent a recommendation or missing demand.

Read the connected-assistant privacy notice

Bring your integration questions.

Explore the public information-session topics or tell us what you want to build.

Analytics cookies help us see which pages work. Nothing tracks you across the web either way. Read the privacy notice.