Holy BasilAI Storefront

Command Palette

Search for a command to run...

For AI Agents

Agent Documentation

Structured data endpoints, MCP server, and tool schemas for AI systems interacting with Holy Basil

MCPModel Context Protocol Server

Connect AI tools (Claude Desktop, Cursor, VS Code) to this restaurant's data via MCP. The server exposes 8 tools, 2 prompts, and per-restaurant resources for semantic search and context-aware queries.

Claude Desktop / Cursor Setup

Add this to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json) or Cursor MCP settings:

{
  "mcpServers": {
    "restodocs": {
      "command": "pnpm",
      "args": [
        "mcp"
      ],
      "cwd": "/path/to/restaurant-mcp"
    }
  }
}
HTTP Transport (Web Agents)

POST JSON-RPC 2.0 requests to the MCP endpoint:

# Initialize the session
curl -X POST /holy-basil-la/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"my-agent","version":"1.0"}}}'

# List available tools
curl -X POST /holy-basil-la/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/list"}'

# Call a tool
curl -X POST /holy-basil-la/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":3,"method":"tools/call","params":{"name":"search_menu","arguments":{"query":"spicy"}}}'

MCP Tools

Available via both stdio and HTTP transports. Compatible with OpenAI function calling, Anthropic tool use, and MCP tool definitions.

list_restaurants

List all available restaurants with name, slug, cuisine, location, and price range.

get_restaurant_info

Get detailed information about a restaurant including hours, location, contact, cuisine type, and what it's known for.

get_menu

Get the full menu, optionally filtered by category name.

search_menu

Search menu items by keyword — matches names, descriptions, and dietary tags (e.g. "vegan", "spicy").

get_order_options

Get delivery, pickup, and reservation links. Returns URLs for DoorDash, Uber Eats, Resy, OpenTable, etc.

get_faq

Get frequently asked questions with answers and source citations.

get_hours

Get hours of operation and whether the restaurant is likely open right now.

get_reviews

Get curated review highlights from Google, Yelp, and other sources.

MCP Prompts

Pre-built prompt templates for common tasks.

recommend_dish

Get a personalized dish recommendation based on dietary preferences, cravings, or constraints.

plan_order

Plan a group order with budget and party size considerations.

Discovery & Machine-Readable Specs

GET/holy-basil-la/llms-txt

LLM discovery file — lightweight index with restaurant info, endpoints, and menu summary.

GET/holy-basil-la/llms-full-txt

Full content dump — complete restaurant data as plain text for LLM ingestion.

GET/holy-basil-la/openapi.json

OpenAPI 3.1 specification for all API endpoints. Import into any agent framework.

POST/holy-basil-la/mcp

MCP server over Streamable HTTP — JSON-RPC 2.0 protocol for web-based agents.

GET/.well-known/ai-plugin.json

AI plugin discovery manifest listing all restaurants and their agent endpoints.

REST API Endpoints

GET/holy-basil-la/api/restaurant

Full restaurant info: name, address, hours, contact, cuisines, price range, links.

GET/holy-basil-la/api/menu

Structured menu with categories, items, prices, descriptions, and dietary tags.

GET/holy-basil-la/api/menu?q={keyword}

Search menu items by keyword — matches names, descriptions, and tags (e.g. "vegan", "spicy", "noodles").

GET/holy-basil-la/api/order-options

Delivery, pickup, and reservation links for agent handoff ordering.

GET/holy-basil-la/api/faq

Q&A pairs optimized for LLM consumption, each with source citations.

Quick Start: curl Examples

# Get full restaurant data as plain text (for LLM context)
curl -s /holy-basil-la/llms-full-txt

# Get structured menu as JSON
curl -s /holy-basil-la/api/menu | jq .

# Search for vegan items
curl -s "/holy-basil-la/api/menu?q=vegan" | jq .

# Get the OpenAPI spec
curl -s /holy-basil-la/openapi.json | jq .info

# Get ordering links for agent handoff
curl -s /holy-basil-la/api/order-options | jq .

# Discover all restaurants and endpoints
curl -s /.well-known/ai-plugin.json | jq .endpoints
llms.txtLLM Discovery Files

Machine-readable files following the llms.txt proposal:

GET /holy-basil-la/llms-txt      # Lightweight index (links + summary)
GET /holy-basil-la/llms-full-txt  # Full content dump (everything in one file)
robots.txtAgent Crawler Hints

The robots.txt explicitly allows AI agent crawlers (GPTBot, Claude-Web, PerplexityBot, etc.) on all machine-readable endpoints.

Experimental

WebMCP Support

This page registers read-only tools via navigator.modelContext.registerTool() when supported by the browser. Tools provide the same data as the REST endpoints above.