{
  "markdown": "# mit-dining-mcp\n\nAn [MCP server](https://modelcontextprotocol.io) that provides real-time MIT dining hall menus from all 6 Bon Appétit locations. Ask Claude what's for dinner, filter by dietary needs, plan your meals for the week, or whether if the menus are mid.\n\n[![Demo](https://asciinema.org/a/yQV3A6ai2U4tvSTu.svg)](https://asciinema.org/a/yQV3A6ai2U4tvSTu)\n\n## Install\n\nPick whichever runtime you have:\n\n**Bun**\n```bash\nclaude mcp add mit-dining -- bunx mit-dining-mcp\n```\n\n**Node.js**\n```bash\nclaude mcp add mit-dining -- npx mit-dining-mcp\n```\n\n**Deno**\n```bash\nclaude mcp add mit-dining -- deno run -A npm:mit-dining-mcp\n```\n\n### From source\n\n```bash\ngit clone https://github.com/hongnoul/mit-dining-mcp.git\ncd mit-dining-mcp\nnpm install  # or bun install\nclaude mcp add mit-dining -- npx tsx src/index.ts\n```\n\n## Tools\n\n| Tool | Description | Example prompt |\n|------|-------------|----------------|\n| `get_todays_menus` | All 6 halls, today's menus | \"What's for dinner at MIT tonight?\" |\n| `get_hall_menu` | Single hall, optional date | \"What's on the menu at Maseeh tomorrow?\" |\n| `get_weekly_menus` | 7-day lookahead for one hall | \"What's the menu at Simmons this week?\" |\n| `filter_menus_by_diet` | Filter by dietary preference | \"Find vegan options at Next House\" |\n\n### Parameters\n\n**`get_hall_menu`**\n- `hall` (required): `baker`, `maseeh`, `mccormick`, `new-vassar`, `next-house`, `simmons`\n- `date` (optional): `YYYY-MM-DD` format\n\n**`get_weekly_menus`**\n- `hall` (required): same as above\n\n**`filter_menus_by_diet`**\n- `diet` (required): `vegetarian`, `vegan`, `halal`, `kosher`, `gluten-free`\n- `hall` (optional): limit to one hall\n- `date` (optional): `YYYY-MM-DD` format\n\n## Dining halls\n\n| Key | Name |\n|-----|------|\n| `baker` | Baker Dining |\n| `maseeh` | The Howard Dining Hall at Maseeh |\n| `mccormick` | McCormick Dining |\n| `new-vassar` | New Vassar Dining |\n| `next-house` | Next Dining |\n| `simmons` | Simmons Dining |\n\n## Examples\n\n### Discord Bot\n\nA ready-to-run Discord bot with `/dinner`, `/menu`, and `/diet` slash commands. See [`examples/discord-bot`](examples/discord-bot) for setup instructions.\n\n### iOS Shortcut\n\nA tiny HTTP server that returns Siri-friendly plain text. Point an iOS Shortcut at it to ask \"Hey Siri, what's for dinner at MIT?\" See [`examples/ios-shortcut`](examples/ios-shortcut).\n\n### Google Calendar Sync\n\nA script that creates calendar events for each meal period with the full menu in the description. Run it on a cron to keep your week synced. See [`examples/gcal-sync`](examples/gcal-sync).\n\n## How it works\n\nMIT's dining is run by Bon Appétit, whose website embeds structured menu data (`Bamco.menu_items` and `Bamco.dayparts`) as JSON in `<script>` tags. This server scrapes and parses that data — no API key needed.\n\nMenus are cached in-memory for 1 hour to avoid repeated requests.\n\n## Requirements\n\nOne of:\n- [Node.js](https://nodejs.org) 18+\n- [Bun](https://bun.sh)\n- [Deno](https://deno.land) 2+\n\n## License\n\nMIT\n",
  "bytes": 2989,
  "sha": "b05f2f9a43af27842d3ab0ad227c56d2b0ed3f5a09ae77138094441b3d820b5b",
  "repo_slug": "hongnoul/mit-dining-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_hongnoul_mit_dining_e5ec303b/readme"
}