mcp-bbc-goodfood
mcp-bbc-goodfood
Ein MCP-Server, der Rezepte auf BBC Good Food liest. Nur lesend, ohne API-Schlüssel, ohne Konto.
Warum es das gibt
BBC Good Food akzeptiert jeden Wert auf einer Suchfacette und antwortet auf einen unbekannten Wert mit einer Gesamtzahl von null. Fragt man nach glutenfree statt gluten-free, sagt die Seite, dass nichts übereinstimmt, mit derselben Sicherheit, mit der sie sagt, dass 48 Rezepte zur korrekten Schreibweise passen. Ein Modell, das eine Schreibweise errät, erhält eine selbstbewusste Abwesenheit statt einer Ablehnung.
Dieser Server veröffentlicht das Vokabular, damit die Frage richtig gestellt werden kann.
Related MCP server: mcp-spoonacular
Das Werkzeug
list_filters
Listet die Achsen auf, entlang derer eine Rezeptsuche eingegrenzt werden kann, mit den Werten, die jede annimmt, und wie viele Rezepte sie tragen.
Argument | Typ | Bedeutung |
| Zeichenkette, optional | Misst die Zählungen innerhalb dieser Suche. Ohne ihn gilt das gesamte Verzeichnis der Seite. |
Die Seite zählt ihre Facetten über die Zeilen, die eine Suche zurückgibt, also beantworten die beiden verschiedene Fragen. Innerhalb von chicken meldet diet gluten-free 48. Über das gesamte Verzeichnis meldet es gluten-free 2810. Keines ist mit dem anderen vergleichbar, und die Antwort sagt, welchen Umfang sie gemessen hat.
{
"query": "chicken",
"filters": [
{
"name": "diet",
"label": "Diets",
"options": [{ "value": "gluten-free", "label": "Gluten-free", "count": 48 }],
"option_count": 10
}
],
"filter_count": 9,
"total_available": 363,
"total_is_ceiling": false,
"rows_seen": 30,
"matched_rows": 30,
"source": "BBC Good Food",
"notes": ["…"]
}Was die Antworten nicht überbewerten
Die veröffentlichten Werte sind eine Auswahlliste. Die Seite zeigt die zehn häufigsten Werte auf einer Achse und akzeptiert andere, die sie nie auflistet: cuisine=mexican grenzt eine Suche auf 306 Rezepte ein, ohne unter den zehn zu erscheinen. Die Antwort sagt, dass die Liste ein Auszug ist, statt sie die Menge der akzeptierten Werte zu nennen, denn ein Server, der sie so nennen würde, würde Werte ablehnen, die funktionieren.
Eine Gesamtzahl kann eine Untergrenze sein. Die Seite liefert höchstens 10 000 Zeilen für eine Suche und hört dort auf. Eine Gesamtzahl, die genau auf diese Zahl fällt, wurde abgeschnitten, also nennt sie eine Untergrenze statt einer Zählung, und total_is_ceiling sagt das.
Eine Zählung, für die die Seite nichts veröffentlicht hat, ist null, nie 0. Auf einer Skala, die bei null beginnt, wären die beiden nicht zu unterscheiden.
Die Seite beantwortet einen Begriff, für den sie nichts hat, mit Zeilen, die alle gleich sind. Die Suche nach foobar liefert sieben Rezepte — darunter einen Rhabarber-Fizz und einen Flapjack-Riegel —, die über Fragmente abgeglichen wurden, ohne dass etwas die Antwort als Fehlschlag kennzeichnet. Jede Antwort meldet daher rows_seen und matched_rows: wie viele Zeilen die Seite geliefert hat und wie viele davon ein Wort der Suche tragen. Wenn die zweite null ist und die erste nicht, sagt eine Anmerkung, dass die Zählung beschreibt, was die Seite angeboten hat, statt was übereinstimmte.
Zwei Zählungen statt eines Urteils. Eine legitime Suche kann in keinem Titel vorkommen, und ein Leser, der 2 von 30 sieht, urteilt besser als eine Markierung, die für ihn urteilt.
Installation
npx mcp-bbc-goodfoodClaude Code
claude mcp add bbc-goodfood -- npx -y mcp-bbc-goodfoodJeder MCP-Client
{
"mcpServers": {
"bbc-goodfood": {
"command": "npx",
"args": ["-y", "mcp-bbc-goodfood"]
}
}
}Container
docker build -t mcp-bbc-goodfood .
docker run -i --rm mcp-bbc-goodfoodDer Container muss www.bbcgoodfood.com erreichen können und sonst nichts. Er nimmt keine Anmeldedaten entgegen, weil es keine zu nehmen gibt.
Einstellungen
Jede Einstellung ist eine Umgebungsvariable, und keine ist erforderlich. Ein Wert außerhalb seines Bereichs wird mit einer Zeile auf stderr abgelehnt, und der Standardwert bleibt bestehen: Eine Einstellung, die nicht wirksam werden kann, sagt das, statt stillschweigend begrenzt zu werden.
Variable | Standard | Bereich |
| — | Ihre eigene Kennung. Die dieses Projekts bleibt angehängt, damit die Seite einen Menschen erreichen kann. |
| 1500 | 1000 bis 60000 |
| 20000 | 1000 bis 120000 |
| 3 | 0 bis 8 |
| 900000 | 0 bis 86400000, 0 schaltet den Speicher ab |
| 200 | 1 bis 5000 |
|
|
|
Die Mindestfrequenz kann von außen nicht gesenkt werden. Die Seite ist kostenlos zu lesen und veröffentlicht keine Crawl-Verzögerung, was ein Grund zur Vorsicht ist, statt einer Lizenz, schnell zu sein.
Als Bibliothek
Die Leseschicht wird separat veröffentlicht, mit ihrer Frequenz, ihrem Speicher und ihrem Fehlervokabular und ohne angehängtes Protokoll:
import { GoodFoodClient } from "mcp-bbc-goodfood/client";Fehler
Sechs Codes und nicht mehr. Ein Aufrufer verzweigt auf den Code, der die Meldung eröffnet.
Code | Was es bedeutet |
| Die Seite enthält nichts unter dieser Adresse |
| Die Argumente konnten keine Anfrage erzeugen |
| Die Seite hat diesen Client gebeten, langsamer zu machen. Es sagt nichts darüber, ob etwas übereinstimmte |
| Eine Antwort kam in einer Form an, die dieser Server nicht lesen kann |
| Die Anfrage konnte nicht abgeschlossen werden |
| Innerhalb der Frist kam keine Antwort an |
Namensnennung
Rezepte, Titel und Zählungen gehören BBC Good Food. Jede Antwort trägt die Quelle, und eine Auflistung, die einem Leser gezeigt wird, sollte die Seite nennen und auf die Seite verlinken.
Mitwirken
Siehe CONTRIBUTING.md. Tests kommen zuerst, die Abdeckung hat eine Untergrenze von 100 %, und die Regel, der alles folgt, ist, dass der Server nie etwas sagt, das die Daten nicht enthalten.
Lizenziert unter MIT.
mcp-bbc-goodfood (Französisch)
Ein MCP-Server, der Rezepte von BBC Good Food liest. Nur lesend, ohne API-Schlüssel und ohne Konto.
Warum es das gibt
BBC Good Food akzeptiert jeden Wert auf einer Suchfacette und antwortet auf einen unbekannten Wert mit einer Gesamtzahl von null. Fragt man nach glutenfree statt gluten-free, antwortet die Seite, dass nichts übereinstimmt, mit der Sicherheit, mit der sie sagt, dass 48 Rezepte zur korrekten Schreibweise passen. Ein Modell, das eine Schreibweise errät, erhält eine selbstbewusste Abwesenheit statt einer Ablehnung.
Dieser Server veröffentlicht das Vokabular, damit die Frage gestellt werden kann.
Das Werkzeug
list_filters
Listet die Achsen auf, entlang derer eine Rezeptsuche eingegrenzt werden kann, mit den Werten, die jede annimmt, und der Anzahl der Rezepte, die sie tragen.
Argument | Typ | Bedeutung |
| Zeichenkette, optional | Misst die Zählungen innerhalb dieser Suche. Ohne ihn gelten sie für das gesamte Verzeichnis der Seite. |
Die Seite zählt ihre Facetten über die Zeilen, die eine Suche zurückgibt, also beantworten die beiden verschiedene Fragen. Innerhalb von chicken meldet diet gluten-free 48. Über das gesamte Verzeichnis meldet es gluten-free 2810. Keines der beiden ist mit dem anderen vergleichbar, und die Antwort sagt, welchen Umfang sie gemessen hat.
Was die Antworten nicht behaupten
Die veröffentlichten Werte sind ein Auszug. Die Seite zeigt die zehn häufigsten Werte einer Achse und akzeptiert andere, die sie nie auflistet: cuisine=mexican grenzt eine Suche auf 306 Rezepte ein, ohne unter den zehn zu erscheinen. Die Antwort sagt, dass die Liste ein Auszug ist, statt sie die Menge der akzeptierten Werte zu nennen, denn ein Server, der sie so nennen würde, würde Werte ablehnen, die funktionieren.
Eine Gesamtzahl kann eine Untergrenze sein. Die Seite liefert höchstens 10 000 Zeilen für eine Suche und hört dort auf. Eine Gesamtzahl, die genau auf diese Zahl fällt, wurde abgeschnitten, also nennt sie eine Untergrenze statt einer Zählung, und total_is_ceiling sagt das.
Eine Zählung, für die die Seite nichts veröffentlicht hat, ist null, nie 0. Auf einer Skala, die bei null beginnt, wären die beiden nicht zu unterscheiden.
Die Seite beantwortet trotzdem einen Begriff, für den sie nichts hat. Die Suche nach foobar liefert sieben Rezepte, darunter einen Rhabarber-Cocktail und einen Flapjack-Riegel, die über Fragmente zusammengeführt wurden, ohne dass etwas die Antwort als Fehlschlag kennzeichnet. Jede Antwort liefert daher rows_seen und matched_rows: wie viele Zeilen die Seite geliefert hat und wie viele davon ein Wort der Suche tragen. Wenn die zweite null ist und die erste nicht, sagt eine Anmerkung, dass die Zählung beschreibt, was die Seite vorgeschlagen hat, statt was übereinstimmte.
Zwei Zählungen statt eines Urteils. Eine legitime Suche kann in keinem Titel vorkommen, und ein Leser, der 2 von 30 sieht, urteilt besser als eine Markierung, die für ihn urteilen würde.
Installation
npx mcp-bbc-goodfoodClaude Code
claude mcp add bbc-goodfood -- npx -y mcp-bbc-goodfoodJeder MCP-Client
{
"mcpServers": {
"bbc-goodfood": {
"command": "npx",
"args": ["-y", "mcp-bbc-goodfood"]
}
}
}Container
docker build -t mcp-bbc-goodfood .
docker run -i --rm mcp-bbc-goodfoodDer Container muss www.bbcgoodfood.com erreichen können und sonst nichts. Er nimmt keine Anmeldedaten entgegen, da es keine zu nehmen gibt.
Einstellungen
Jede Einstellung ist eine Umgebungsvariable, und keine ist erforderlich. Ein Wert außerhalb der Grenzen wird mit einer Zeile auf stderr abgelehnt, und der Standardwert bleibt bestehen: Eine Einstellung, die nicht wirksam werden kann, sagt das, statt stillschweigend begrenzt zu werden.
Variable | Standard | Grenzen |
| — | Ihre Kennung. Die dieses Projekts bleibt angehängt, damit die Seite eine Person erreichen kann. |
| 1500 | 1000 bis 60000 |
| 20000 | 1000 bis 120000 |
| 3 | 0 bis 8 |
| 900000 | 0 bis 86400000, 0 schaltet den Speicher aus |
| 200 | 1 bis 5000 |
|
|
|
Die Mindestfrequenz kann von außen nicht gesenkt werden. Die Seite ist kostenlos zu lesen und veröffentlicht keine Crawl-Verzögerung, was ein Grund zur Vorsicht ist, statt einer Lizenz, schnell zu sein.
Als Bibliothek
Die Leseschicht wird separat veröffentlicht, mit ihrer Frequenz, ihrem Speicher und ihrer Fehlertaxonomie, ohne angehängtes Protokoll:
import { GoodFoodClient } from "mcp-bbc-goodfood/client";Fehler
Sechs Codes und nicht einer mehr. Ein Aufrufer verzweigt auf den Code, der die Meldung eröffnet.
Code | Bedeutung |
| Die Website hat an dieser Adresse nichts |
| Die Argumente konnten keine Anfrage erzeugen |
| Die Website hat gebeten, langsamer zu machen. Das sagt nichts darüber aus, was übereinstimmt |
| Eine Antwort ist in einer Form eingetroffen, die dieser Server nicht lesen kann |
| Die Anfrage konnte nicht abgeschlossen werden |
| Innerhalb der Frist ist keine Antwort eingetroffen |
Namensnennung
Die Rezepte, Titel und Konten gehören BBC Good Food. Jede Antwort führt die Quelle an, und eine Auflistung, die einem Leser gezeigt wird, muss die Website nennen und auf die Seite verlinken.
Mitwirken
Siehe CONTRIBUTING.md. Tests zuerst, eine Mindestabdeckung von 100 %, und die Regel, die alles beherrscht: Der Server sagt nie etwas, das die Daten nicht hergeben.
Lizenziert unter MIT.
Maintenance
Tools
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables querying food nutritional information, discovering recipes by ingredients or diet type, getting ingredient substitutions, and receiving personalized food recommendations based on mood and season.
- AlicenseNot gradedqualityCmaintenanceProvides access to the Spoonacular food API for recipes, nutrition, ingredients, and meal plans.MIT
- FlicenseNot gradedqualityDmaintenanceEnables browsing recipes, searching by category, and viewing detailed recipe information from the Gousto cookbook API via natural language.
- AlicenseNot gradedqualityCmaintenanceEnables querying Open Food Facts product database by barcode, full-text search, category, brand, or country.12MIT
Related MCP Connectors
Spoonacular food API: recipes, nutrition, ingredients, meal plans. Free 150/day.
Recipes MCP — wraps TheMealDB API (free tier, no auth)
Federated commerce search across independent WooCommerce merchants. Keyless, read-only MCP server.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/smeet666/mcp-bbc-goodfood'
If you have feedback or need assistance with the MCP directory API, please join our Discord server