Dokumentation durchsuchen
MCP server

MCP-Tools & Scopes

Die 22 Tools, die ein Client erhalten kann, die 11 Scopes, die sie öffnen, und die Shopify-Berechtigungen, die jedes benötigt.

22 Tools über 11 Scopes. Beide Zahlen werden aus dem Scope-Katalog im Repository abgeleitet, sodass diese Seite nie von dem abweichen kann, was ein Client tatsächlich erhalten kann.

Der Katalog enthält außerdem Tools, die dem BoostEcom-Team vorbehalten sind. Sie werden von Ihrem Zustimmungsbildschirm entfernt und prüfen bei jedem Aufruf erneut die Rolle des Aufrufers: Keine Berechtigung auf dieser Seite öffnet eines davon, und sie sind oben nicht mitgezählt.

Der Katalog

| Scope | Familie | Tools | Benötigte Shopify-Berechtigung | |---|---|---|---| | boostecom:store.read | relay | getShopInfo, getStoreContext, introspectSchema | — | | boostecom:catalog.read | relay | listProducts, getProduct | read_products oder write_products | | boostecom:orders.read | relay | listOrders | read_orders oder write_orders | | boostecom:content.read | relay | listPages | read_content oder write_content | | boostecom:metadata.read | relay | getMetafields, listMetaobjectDefinitions, listMetaobjects | — (Shopify entscheidet pro Query) | | boostecom:themes.read | relay | listThemes, getTheme, runAudit | read_themes, write_themes oder write_theme_code | | boostecom:analytics.read | relay | runShopifyQL | read_analytics oder read_reports | | boostecom:graphql.read | relay | shopifyAdminGraphQL | — | | boostecom:studio.read | native | getStudioSection, getStudioProduction, listStudioGenerations, getStudioPricing | — (siehe unten) | | boostecom:intelligence.read | native | getStoreIntelligence | — (siehe unten) | | boostecom:docs.read | public | searchDocs, getDoc | keine (nichts zu gewähren) |

Jede einzelne der aufgeführten Shopify-Berechtigungen erfüllt eine Zeile. Ein Strich bedeutet, dass Shopify kein Mitspracherecht hat: entweder benötigt das Tool keine bestimmte Berechtigung, oder Shopify setzt seine eigene Grenze pro Abfrage durch.

Die drei Familien

Nicht kosmetisch. Die Familie entscheidet, wem ein Tool antwortet:

relay erreicht Shopify über die Brücke. Ein statischer bst_mcp_-Bearer erfüllt sie, weil der Schlüssel auf den Store begrenzt ist und ihn zu besitzen die Autorisierung ist.

native erreicht ein System, das BoostEcom besitzt. Es erfordert einen identifizierten Aufrufer, sodass ein statischer Schlüssel es nie erfüllt. Der Grund lohnt sich, klar zu benennen: getStudioSection schützt eine Ressource, deren Berechtigung von einer OrganizationMember-Zeile abhängt. Ohne Benutzer gibt es niemanden zum Prüfen, und eine nicht prüfbare Berechtigung muss ablehnen, nie durchlassen.

public erreicht etwas, das ohne Sitzung bereits lesbar ist. Die Familie würde einen statischen Schlüssel zulassen, weil es keine Berechtigung zu prüfen gibt: searchDocs liefert, was /docs einem Fremden ausliefert. Ein statischer Schlüssel erhält diese Tools heute trotzdem nicht: Er trägt keinen Scope-String, erweitert sich also nur zur Relay-Familie, zu der boostecom:docs.read nie gehört. Sie erreichen einen Client über OAuth, sobald der Benutzer den Scope genehmigt.

Warum studio.read eine leere Shopify-Spalte zeigt

shopify: [] bei einem nativen Scope bedeutet nicht „benötigt keine Berechtigung". Es bedeutet, dass Shopify kein Mitspracherecht hat. Das Tor ist die eigene studio.*-Berechtigung des Aufrufers, pro Abschnitt zum Zeitpunkt des Aufrufs abgefragt: dieselbe Prüfung, die die Dashboard-Seiten vornehmen.

Der Scope wird auf dem Zustimmungsbildschirm jedem Benutzer angeboten, anders als ein Relay-Scope, den die Custom App eines Stores nicht erfüllen kann. Das ist beabsichtigt: eine Shopify-Berechtigung ist eine harte Obergrenze, die sich nur durch erneutes Verbinden der App bewegt, während eine Studio-Berechtigung eine Mitgliedschaft ist, die sich morgen ändern kann. Den Scope zum Zeitpunkt der Zustimmung abzulehnen würde eine langlebige Gewährung gegen eine Berechtigung einfrieren, die der Benutzer bald haben könnte, und die Prüfung pro Aufruf antwortet in beiden Fällen korrekt.

Der ererbte mcp-Scope

Clients, die zugestimmt haben, bevor der Katalog existierte, tragen einen einzelnen mcp-Scope. Er erweitert sich zur Relay-Familie und wird das immer tun: er wurde zugestimmt, als der Katalog nur die Shopify-Brücke war und nichts sonst, also kann er nur das bedeuten. Er erreicht weder native noch public Tools.

Was BoostEcom über Ihren eigenen Shop weiß

getStoreIntelligence beantwortet für den Shop, auf den die Verbindung beschränkt ist, was die Plattform über seine Domain beobachtet hat: Traffic, abgeleitete Wirtschaftlichkeit, Katalog, Tech-Stack, Werbekreative, Bewertungsgeschwindigkeit, soziale Reichweite, Marke und agentische Bereitschaft.

Jedes Feld trägt seine unit, und das ist keine Zierde. visitsChange ist ein vorzeichenbehaftetes Verhältnis, momGrowth steht in Punkten. Beide zeigen „−19,9 %“ und sie zu vertauschen bleibt unbemerkt. Ein Feld, das die Plattform nicht beobachtet hat, behält seinen Platz mit dem Wert null und, sofern der Datensatz es sagt, einem Grund für das Fehlen: Fehlen ist Information, nie eine still gelöschte Zahl.

Grenzen Sie die Antwort mit sections ein (traffic, economics, catalog, stack, ads, reviews, audience, brand, agentic); lassen Sie es weg, um alles zu erhalten. Ein Shop ohne Datensatz antwortet observed: false statt mit einem leeren, damit „nichts beobachtet“ nie als „null“ gelesen wird.

Das Werkzeug liest denselben Datensatz, über denselben Leser, den auch das Panel „Store details“ in Ihrem Dashboard und die Browser-Erweiterung lesen. Eine Frage, eine Zahl, wer auch immer fragt.

Da der Datensatz zum Shop gehört, hängt die Antwort davon ab, wer fragt: das Relay hat bereits an der Tür bewiesen, dass Sie zur Organisation gehören, der er gehört. Ein Shop mit privatem Datensatz antwortet seinem eigenen Händler vollständig.

GraphQL-Durchleitung

shopifyAdminGraphQL ist eine Durchleitung zur Shopify-Admin- GraphQL-API, gepaart mit introspectSchema zur Entdeckung. Shopifys eigenes Berechtigungsmodell gilt pro Abfrage: die Brücke erweitert es nicht.

Scope-Strings auf der Leitung

Scopes reisen als leer- oder kommagetrennter String. Die in den Metadaten des Autorisierungsservers angekündigte Liste ist der ererbte Scope plus alle 12 Scopes des Katalogs: die 11 oben genannten und 1, der dem BoostEcom-Team vorbehalten ist.

Auf diesen Docs aufgebaut?

Schauen Sie im Forum vorbei, wenn etwas unklar oder falsch ist. Docs verbessern sich schneller, wenn Lesende die Lücken melden.

Forum öffnen