Skip to main content
Glama
tas1337

MCP A2A AP2 Food Delivery & Payments

by tas1337
restaurants.ts4.38 kB
// ============================================================================= // MOCK DATA - RESTAURANTS & MENUS // ============================================================================= // Just fake data for testing. Nothing to learn here. // ============================================================================= import type { Restaurant, Menu } from '../src/types.js'; // Keywords that match each restaurant (includes menu items) const restaurantKeywords: Record<string, string[]> = { 'Burger Palace': ['burger', 'cheeseburger', 'bacon', 'fries', 'american'], 'BBQ Smokehouse': ['bbq', 'ribs', 'brisket', 'pulled pork', 'american'], 'Pizza Express': ['pizza', 'pepperoni', 'margherita', 'italian'], 'Mama Mia Pasta': ['pasta', 'spaghetti', 'lasagna', 'italian'], 'Sushi World': ['sushi', 'sashimi', 'roll', 'japanese'], 'Ramen House': ['ramen', 'noodles', 'japanese'], 'Taco Fiesta': ['taco', 'burrito', 'mexican', 'quesadilla'], 'Thai Garden': ['thai', 'pad thai', 'curry', 'noodles'], 'Golden Dragon': ['chinese', 'fried rice', 'lo mein', 'orange chicken'], 'Curry House': ['indian', 'curry', 'tikka', 'naan'], }; export function getMockRestaurants(query: string, service: 'doordash' | 'ubereats' | 'grubhub'): Restaurant[] { const mockData = [ { name: 'Burger Palace', cuisine: 'American', rating: 4.8, deliveryTime: 25, deliveryFee: 2.99 }, { name: 'BBQ Smokehouse', cuisine: 'American', rating: 4.7, deliveryTime: 30, deliveryFee: 3.49 }, { name: 'Pizza Express', cuisine: 'Italian', rating: 4.6, deliveryTime: 30, deliveryFee: 3.49 }, { name: 'Mama Mia Pasta', cuisine: 'Italian', rating: 4.8, deliveryTime: 32, deliveryFee: 3.99 }, { name: 'Sushi World', cuisine: 'Japanese', rating: 4.9, deliveryTime: 35, deliveryFee: 4.99 }, { name: 'Ramen House', cuisine: 'Japanese', rating: 4.6, deliveryTime: 28, deliveryFee: 3.49 }, { name: 'Taco Fiesta', cuisine: 'Mexican', rating: 4.5, deliveryTime: 20, deliveryFee: 2.49 }, { name: 'Thai Garden', cuisine: 'Thai', rating: 4.7, deliveryTime: 28, deliveryFee: 3.99 }, { name: 'Golden Dragon', cuisine: 'Chinese', rating: 4.6, deliveryTime: 25, deliveryFee: 3.49 }, { name: 'Curry House', cuisine: 'Indian', rating: 4.8, deliveryTime: 30, deliveryFee: 3.99 }, ]; const queryLower = query.toLowerCase(); const filtered = mockData.filter((r) => { if (!query) return true; // Match restaurant name if (r.name.toLowerCase().includes(queryLower)) return true; // Match cuisine if (r.cuisine.toLowerCase().includes(queryLower)) return true; // Match keywords (menu items, food types) const keywords = restaurantKeywords[r.name] || []; if (keywords.some(kw => kw.includes(queryLower) || queryLower.includes(kw))) return true; return false; }); const prefix = service === 'doordash' ? 'dd' : service === 'ubereats' ? 'ue' : 'gh'; return filtered.map((r, idx) => ({ id: `${prefix}-${idx + 1}`, service, ...r })); } export function getMockMenu(restaurantId: string): Menu { const menus: Record<string, Menu> = { 'dd-1': { restaurantId: 'dd-1', restaurantName: 'Burger Palace', items: [ { id: 'item-1', name: 'Classic Cheeseburger', description: 'Beef patty, cheese, lettuce', price: 9.99, category: 'Burgers' }, { id: 'item-2', name: 'Bacon Burger', description: 'Beef patty, bacon, cheese', price: 11.99, category: 'Burgers' }, { id: 'item-3', name: 'French Fries', description: 'Crispy golden fries', price: 3.99, category: 'Sides' }, ], }, 'ue-1': { restaurantId: 'ue-1', restaurantName: 'Burger Palace', items: [ { id: 'item-1', name: 'Classic Cheeseburger', description: 'Beef patty, cheese, lettuce', price: 9.99, category: 'Burgers' }, { id: 'item-2', name: 'Bacon Burger', description: 'Beef patty, bacon, cheese', price: 11.99, category: 'Burgers' }, ], }, 'gh-1': { restaurantId: 'gh-1', restaurantName: 'Burger Palace', items: [ { id: 'item-1', name: 'Classic Cheeseburger', description: 'Beef patty, cheese, lettuce', price: 9.99, category: 'Burgers' }, ], }, }; return menus[restaurantId] || { restaurantId, restaurantName: 'Unknown', items: [{ id: 'item-1', name: 'Sample Item', price: 9.99, category: 'Main' }], }; }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tas1337/mcp-a2a-ap2-im-hungry'

If you have feedback or need assistance with the MCP directory API, please join our Discord server