{"server":{"$schema":"https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json","name":"com.thepantrybutler/pantry","description":"Answers 'what can I cook tonight?' from your own saved recipes and what's really in your kitchen.","title":"The Pantry Butler","version":"1.1.0","websiteUrl":"https://thepantrybutler.com/connect","remotes":[{"type":"streamable-http","url":"https://thepantrybutler.com/mcp"}],"_meta":{"io.modelcontextprotocol.registry/publisher-provided":{"account_required":"A free Pantry Butler account. No approval process, no waitlist.","auth":"OAuth 2.1. Clients register themselves (RFC 7591 dynamic client registration) and authorize with PKCE S256 — no token to paste and no key to issue by hand. Discovery is the standard one: an unauthenticated call to /mcp returns 401 with a WWW-Authenticate resource_metadata pointer to https://thepantrybutler.com/.well-known/oauth-protected-resource. Scopes are read and write; write implies read. Long-lived bearer tokens from https://thepantrybutler.com/connect still work for scripts and self-hosted clients.","docs":"https://thepantrybutler.com/api-docs","oauth":{"authorization_server":"https://thepantrybutler.com/.well-known/oauth-authorization-server","dynamic_registration":true,"pkce":"S256 required","protected_resource":"https://thepantrybutler.com/.well-known/oauth-protected-resource","scopes":["read","write"]},"openapi":"https://thepantrybutler.com/openapi.json","rate_limit":"120 requests per minute per token","tools":["cook_tonight","list_pantry","add_pantry_items","list_recipes","save_recipe","whoami"]}}},"_meta":{"io.modelcontextprotocol.registry/official":{"status":"active","statusChangedAt":"2026-09-24T14:15:53.056979Z","publishedAt":"2026-09-24T14:15:53.056979Z","updatedAt":"2026-09-24T14:15:53.056979Z","isLatest":true}}}
