WooCommerce MCP åpen kildekode: kun-lesing butikktilgang for KI-agenter
NB

WooCommerce MCP åpen kildekode: kun-lesing butikktilgang for KI-agenter

Sist verifisert: 19. juli 2026
13 min lesetid
Guide
500+ WP-prosjekter
AI-integrasjon

#WooCommerce MCP åpen kildekode: kun-lesing butikktilgang for KI-agenter

På WooCommerce-til-ERP-prosjekter dukker det samme spørsmålet opp i kickoff-samtaler: kan KI-en bare sjekke butikken? Det ærlige svaret er ja - hvis den ikke kan ødelegge noe. Den begrensningen er grunnen til at vi slipper woocommerce-mcp som åpen kildekode: en liten Model Context Protocol (MCP)-server som svarer på live spørsmål om produkter, lager, ordrer, salg og innlegg over de offisielle REST API-ene, med ingen skriving og ingen plugin installert i butikken.

Denne artikkelen er utgivelses- og driftsguiden for den publiserte pakken. Hvis du trenger å designe en egendefinert server fra bunnen av (inkludert muterende verktøy eller Workers-deploy), bruk følgesguiden Building an MCP server for WooCommerce. For det kommersielle programmet, se MCP-server-utvikling og WooCommerce ERP-integrasjon. Relatert nordisk MCP-kontekst finner du også i MCP-server i WordPress-plugin og WordPress Playground MCP for KI-agenter.

#TL;DR

  • Pakke: @wppoland/woocommerce-mcp på npm (CLI-binæren heter fortsatt woocommerce-mcp).
  • Registry: io.github.wppoland/woocommerce-mcp i det offisielle MCP Registry.
  • Fem skrivebeskyttede verktøy over WooCommerce / WordPress REST - kun Read-nøkler.
  • Ingen butikk-side plugin. MIT, TypeScript, Node 18+.
  • Bruk dette når agenter trenger fakta fra katalogen og ordrene; bygg egendefinert MCP når du trenger skriving eller ERP-spesifikke verktøy.

#Hvorfor vi slipper en skrivebeskyttet MCP-server

MCP gir en LLM-vert (Claude Desktop, Cursor, en egendefinert agent) en typet tools/list-flate i stedet for å tvinge modellen til å finne opp /wp-json/wc/v3/-stier. Det er nyttig. Det er også farlig hvis hvert verktøy kan mutere lager, refusjoner eller kundedata.

På ERP-synk-arbeid ser vi to feilmoduser oftere enn smarte promptfeil:

  1. Oversalg under Black Week fordi en skrivebane race-et et grossist-/lagerfeed.
  2. Utilsiktede statusendringer når en agent «hjelpsomt» markerte ordrer som fullført under feilsøking.

Skrivebeskyttet MCP fikser ikke dårlig ERP-design. Den fjerner én klasse utilsiktede skriveoperasjoner fra agentplanet. Butikken forblir autoritativ kilde gjennom WooCommerce REST. Agenten bare spør.

Vi dokumenterte protokollvalget i MCP vs REST: when each wins og autentiseringsflaten i MCP authentication patterns. Denne utgivelsen er den konkrete binæren du kan installere i dag.

#Hva som ble levert (juli 2026)

FlateURL / identifikator
npmhttps://www.npmjs.com/package/@wppoland/woocommerce-mcp
GitHubhttps://github.com/wppoland/woocommerce-mcp
MCP Registryio.github.wppoland/woocommerce-mcp
DEV-artikkelhttps://dev.to/wppolandcom/a-read-only-mcp-server-for-woocommerce-what-ai-agents-actually-need-from-a-store-3fk6
Product Hunthttps://www.producthunt.com/products/woocommerce-mcp
Show HNhttps://news.ycombinator.com/item?id=48815903

Versjon 0.1.1 er installasjonsmålet. Versjon 0.1.0 eksisterte kort som en mislykket registry-stub - en konfliktende legacy _auth-linje i lokal ~/.npmrc ødela den publishen. Ignorer 0.1.0.

#Hvorfor npm-navnet er @wppoland/woocommerce-mcp

Navnet uten prefiks woocommerce-mcp er låst på npm (E403) etter at en annen part avpubliserte det. Vi publiserer som @wppoland/woocommerce-mcp. Bruk det navnet til npm install / npx. bin-feltet i package.json eksponerer fortsatt kommandoen woocommerce-mcp, så Claude Desktop- og Cursor-konfigurasjoner beholder samme binærnavn.

mcpName i package.json er io.github.wppoland/woocommerce-mcp. Den strengen må matche MCP Registry server.json name-feltet slik at eierskapsverifisering lykkes når du publiserer med den offisielle mcp-publisher CLI-en.

#Verktøyflate

VerktøyFormålWooCommerce-nøkler
list_productsSøk / list produkter (navn, SKU, pris, lager, permalink)ja
get_productFullt produkt etter idja
list_ordersNylige ordrer, valgfri statusfilterja
sales_reportTotaler for week / month / last_month / yearja
search_postsPubliserte innlegg via offentlig WordPress RESTnei

Alt valideres ved MCP-grensen og kaller deretter REST. Det finnes ingen sti i denne pakken som oppretter produkter, oppdaterer lager, refunderer ordrer eller installerer plugins.

#Spørsmål disse verktøyene faktisk svarer på

  • Hvilke SKU-er er på null lager før en kampanje?
  • Hva solgte vi forrige måned i netto termer butikken allerede rapporterer?
  • Hva var de siste tjue ordrene med status processing?
  • Er butikken tilgjengelig med nøklene vi utstedte?

Det er spørsmålene som dukker opp på ERP-integrasjons-standup. Det er også spørsmålene som ikke krever skrivetilgang.

#Installer og konfigurer

#Forutsetninger

  • Node.js 18 eller nyere
  • En WooCommerce-butikk på HTTPS
  • Mulighet til å opprette REST API-nøkler med Read-tilgang

#Installasjon

npm install -g @wppoland/woocommerce-mcp
# or one-shot:
npx @wppoland/woocommerce-mcp

Fra kildekode:

git clone https://github.com/wppoland/woocommerce-mcp.git
cd woocommerce-mcp
npm install
npm run build

#Miljøvariabler

VariabelPåkrevdEksempel
WP_URLjahttps://shop.example.com
WC_CONSUMER_KEYfor Woo-verktøyck_…
WC_CONSUMER_SECRETfor Woo-verktøycs_…

Opprett nøkler under WooCommerce → Innstillinger → Avansert → REST API → Legg til nøkkel. Tilgang: Read. Hvis noen gir deg Read/Write «bare i tilfelle», nekt. Pakken trenger ikke skrivescope, og å holde ubrukte skrivescope er en hendelse som venter på en kompromittert laptop.

search_posts fungerer mot det offentlige WordPress REST API uten Woo-nøkler. Det er nyttig for innholdsagenter; det er fortsatt ikke en grunn til å eksponere admin-informasjonskapsler for MCP-verten.

#Claude Desktop / Cursor-skisse

Registrer en stdio-server som kjører binæren med de tre miljøvariablene. Eksakte JSON-former varierer etter klientversjon; invarianten er: stdio, env injisert av verten, ingen hemmeligheter i chat-transkriptet.

Etter tilkobling, spør noe falsifiserbart: «Hva er lageret for SKU X?» Hvis agenten finner opp et tall uten et verktøykall, er klienten din ikke faktisk koblet. Hvis den kaller list_products eller get_product og returnerer butikkverdien, er du ferdig med røyktesten.

#Eksempel på Claude Desktop-fragment

Klientkonfigurasjonsformater endres; behandle dette som en form, ikke en evig kontrakt:

{
  "mcpServers": {
    "woocommerce-mcp": {
      "command": "woocommerce-mcp",
      "env": {
        "WP_URL": "https://shop.example.com",
        "WC_CONSUMER_KEY": "ck_replace_me",
        "WC_CONSUMER_SECRET": "cs_replace_me"
      }
    }
  }
}

Foretrekk full sti til binæren fra npm root -g hvis shell PATH inne i skrivebordsappen er tynnere enn terminal PATH. Cursor og andre verter bruker lignende stdio + env-mønstre.

#Feilsøking av installasjoner

SymptomSannsynlig årsakFiks
E403 ved publisering av navn uten prefiksNavn låst etter tredjeparts avpubliseringBruk @wppoland/woocommerce-mcp
Agent svarer uten verktøykallServer ikke registrert / feil kommandoSjekk klientens MCP-panel; restart vert
401 fra Woo RESTFeil nøkler eller HTTP-URLUtsted Read-nøkler på nytt; tving HTTPS
Tom produktlisteNøkkel for feil nettsted / stagingBekreft at WP_URL matcher nøkkelens nettsted
Registry publish 422 på descriptionDescription > 100 tegnForkort server.json-description

Hvis npm view @wppoland/woocommerce-mcp version returnerer 404 mens npm access fortsatt lister pakken, er du i den ødelagte stub-tilstanden vi traff på 0.1.0. Bump versjonen, fjern legacy registry.npmjs.org/:_auth fra ~/.npmrc hvis den finnes, og publiser på nytt. Ikke be butikkeiere om å installere en versjon du ikke kan npm pack.

#Sikkerhetsmodell (klart språk)

  1. Nøkler blir på MCP-verten, ikke i butikken som en plugin og ikke i modellvektene.
  2. Kun Read-tilgang på WooCommerce-nøkkelen.
  3. Kun HTTPS for WP_URL.
  4. Behandle MCP-klientmaskinen som produksjon hvis den holder live-nøkler - samme barre som et CI-hemmelighetslager.
  5. Roter nøkler når en laptop forlater selskapet eller et konsulentengasjement avsluttes.

MCP løser ikke autentisering magisk. Vår lengre behandling er MCP authentication patterns. For denne pakken er den konservative standarden lokal stdio med Read-nøkler, ikke et offentlig HTTP MCP-endepunkt på det åpne internettet.

#Trusselnotater som dukker opp i ekte gjennomganger

  • Laptoptyveri: Read-nøkler lekker katalog- og ordremetadata. Det er fortsatt GDPR-/personvernrelevant. Krypter disk, bruk kortlivede nøkler for demoer, tilbakekall ved offboarding.
  • Prompt injection via produktbeskrivelser: En ondsinnet produkttittel får ikke denne pakken til å skrive, men den kan styre modellens tale. Hold upålitelig katalogtekst utenfor høyrisiko-automatisering uten et menneske i løkken.
  • Confused deputy via delte MCP-verter: Én Claude Desktop-profil med nøkler for butikk A og butikk B er en ulykke som venter. Separate profiler eller separate maskiner.
  • Logglekkasje: Noen verter logger verktøyargumenter. Anta at SKU-er og ordre-id-er dukker opp i logger; konfigurer lagring deretter.

Ingen av disse er grunner til å unngå MCP. De er grunner til å behandle verten som produksjon.

#Hvor dette passer i ERP- og KI-programmer

WPPolands arbeid for EU- og nordiske kunder kobler ofte WooCommerce til grossist-API-er og ERP-er - typisk Visma, Tripletex, Fortnox eller egenutviklede lagerfeeds for nordiske B2B-kjeder. Agenter kommer inn i den stakken når driftsteam vil ha naturligspråklige svar uten å åpne wp-admin. Skrivebeskyttet MCP er den første trygge skiven:

  • Før-synk-sjekker: «Er vi allerede utsolgt på kampanje-SKU-ene før Black Week-utsendelsen?»
  • Etter-synk-revisjoner: «Ser gårsdagens ordrer ut som ERP-fakturatallet fra grossistsynken?»
  • Innholdsops: «Hvilke innlegg nevner den nye kolleksjonen?» via search_posts

Når du trenger at agenter skal foreslå ordrer eller utkast til refusjoner, forlater du denne pakken og bygger en egendefinert server med eksplisitte muterende verktøy, idempotency-nøkler og menneskelige godkjenningsporter. Den stien er byggeguiden pluss typede katalogverktøy med Zod.

For butikker som allerede drukner i plugin-spredning eller AI-bygget tema-gjeld, fiks Core Web Vitals og lager-sannhet før du legger til agenter. MCP redder ikke en TTFB på 1.8s eller en katalog som er uenig med lageret.

#Hvordan dette skiller seg fra hostede WordPress MCP-eksperimenter

WordPress.com og relaterte økosystemer har utforsket MCP-flater for managed hosting. Disse programmene er verdifulle, og de er ikke samme artefakt som en selvhostet stdio-server du peker mot dine WooCommerce REST-nøkler. Selvhostet MCP holder legitimasjon og trafikk på infrastruktur du velger. Hostet MCP holder bekvemmelighet på vertens vilkår. Velg bevisst; anta ikke funksjonsparitet.

Glama og lignende MCP-kataloger kan indeksere GitHub-repoet eller registry-oppføringen. Behandle tredjepartskataloger som oppdagelse, ikke som en sikkerhetsgrense. Sannhetskilden for installasjon forblir npm + GitHub + det offisielle MCP Registry-navnet.

For plugin-forfattere som vurderer MCP som varig differensiering inne i WordPress, se også argumentet om MCP-server i WordPress-plugin som vollgrav. For sandkasse- og Playground-baserte agentarbeidsflyter er WordPress Playground MCP den naturlige nabostien.

#Sammenligning: åpen pakke vs egendefinert MCP

Behov@wppoland/woocommerce-mcpEgendefinert MCP-server
Produkt- / ordre- / salgslesingJaJa
BloggsøkJaValgfritt
Skriving (refusjoner, lagerendringer)NeiDu designer dem
Butikkplugin påkrevdNeiVanligvis nei
Cloudflare Workers edge-deployIkke denne pakkenVanlig mønster i våre bygg
ERP-spesifikke verktøyNeiJa
Offisiell registry-listingJa (io.github.wppoland/woocommerce-mcp)Du publiserer din egen

#Publiseringsnotater for vedlikeholdere

Hvis du forker eller publiserer din egen MCP-server:

  1. Sett mcpName i package.json som matcher registry-navnerommet (for GitHub-auth: io.github.<org>/<name>).
  2. Hold server.json description100 tegn eller færre - det offisielle registeret avviser lengre strenger med HTTP 422.
  3. Bruk mcp-publisher-binæren fra modelcontextprotocol/registry releases, ikke en tilfeldig npm-pakke kalt publisher.
  4. Foretrekk npm-navn under et @scope du kontrollerer; navn uten prefiks kan bli permanent låst etter avpublisering.

Vi lærte beskrivelsesgrensen på den harde måten under første registry-publish-forsøk. Validering med mcp-publisher validate før publish sparer en runde.

#Driftsjekkliste

  • @wppoland/[email protected] (eller nyere) installert
  • WooCommerce-nøkkel er Read-only
  • WP_URL er HTTPS og matcher butikken nøklene tilhører
  • Klienten bruker stdio (eller en annen transport du bevisst har herdet)
  • Røyktest bruker en ekte SKU og et ekte datointervall
  • Hemmeligheter er ikke limt inn i tickets eller chatlogger
  • Teamet vet at denne pakken ikke kan refundere eller restocke - eskaler til mennesker / ERP for skriving

#Interne cluster-lenker

#Praktiker-notater fra kundeprosjekter

På en norsk B2B-grossist med regionale prisgrupper (WooCommerce mot Visma-lagerfeed) var demoen som overbeviste drift ikke en chatbot i butikkfronten. Det var Claude Desktop som før morgenens utsending svarte «hvilke kampanje-SKU-er er allerede på null?». Demoen overlevde sikkerhetsgjennomgangen bare fordi MCP ikke kunne «fikse» lageret når modellen foreslo en skrivehandling.

Den farlige forespørselen kom senere samme uke: «marker disse som completed hvis de ser betalte ut». Det er nøyaktig klassen av verktøy denne åpne pakken nekter å tilby. Agenten kan liste processing-ordrer; et menneske eller en dedikert ERP-jobb fullfører dem. Under Black Week i Norden synkroniseres kampanje-SKU-er ofte nattlig fra grossistens API mens butikkfronten fortsatt viser gårsdagens lager; en skrivebeskyttet agent som sier «null på lager» før morgenens e-post er mer verdifull enn en agent som «fikser» lageret og kjører race mot synken.

Hvis butikken din fortsatt bruker application passwords med fulle capabilities for «midlertidige skript», roter dem før du peker noen MCP-vert mot produksjon. Read-nøkler for denne serveren er billige å utstede og billige å tilbakekalle - og under GDPR/personvern er katalog- og ordremetadata fortsatt personopplysningsrelevant når ordrer inneholder kundedata.

En annen nordisk case: en svensk nettbutikk med Fortnox-fakturaflyt spurte agenten om gårsdagens ordreantall matchet ERP-eksporten. list_orders og sales_report ga WooCommerce-sannheten; avviket viste seg å være en forsinket grossistbekreftelse, ikke en agentfeil. MCP overflater butikkens tall - den reparerer ikke synk-gjeld.

Samme mønster dukker opp når en norsk grossist synkroniserer regionale prisgrupper nattlig: agenten kan bekrefte at kampanje-SKU-er allerede er på null før morgenens utsending, men den skal ikke «rette» lageret mens Visma- eller Tripletex-jobben fortsatt kjører. Leseflaten er nok til driftsspørsmål; skrivestien hører hjemme i ERP-jobben eller hos et menneske.

#Hva vi ikke gjør i v0.x

  • Ingen skriveverktøy i den åpne standardgrenen.
  • Ingen obligatorisk butikkplugin.
  • Ingen påstand om at MCP erstatter WooCommerce REST for partnerintegrasjoner.
  • Ingen spesifikke priser for implementeringsarbeid - engasjementer er individuelle tilbud via MCP-server-utvikling.

Funksjonsforespørsler som passer inn under skrivebeskyttet mandat (refusjonssammendrag, kupongstatus, kundeoppslag uten PII-dump) er åpen samtale på GitHub. Funksjonsforespørsler som er «bare legg til update_product» blir lukket med en peker til den egendefinerte byggeguiden.

#Måle om agentstien er verdt det

Før du utvider utover skrivebeskyttede verktøy, mål tre ting i to uker:

  1. Hvor ofte mennesker åpner wp-admin bare for å svare på et lager- eller ordrespørsmål. Hvis det tallet er nær null, er MCP en nyhet. Hvis det er daglig, betaler leseverktøy for seg i oppmerksomhet.
  2. Hvor ofte de svarene er uenige med ERP-et. MCP overflater WooCommerce-sannhet, ikke lagersannhet. Hvis de divergerer, fiks synken først (WooCommerce ERP-integrasjon).
  3. Hvor ofte noen ber agenten om å endre tilstand. Den frekvensen er veikartsignalet ditt for en egendefinert muterende server - ikke en grunn til å svekke denne pakken.

GEO- og AEO-programmer bryr seg om siterbare, strukturerte svar. Et MCP-verktøykall som returnerer lager er mer pålitelig enn en modell som gjetter fra en scrapet HTML-side. Par agentstien med on-site entiteter og FAQ-schema på kommersielle sider slik at offentlige KI-systemer og private agenter ikke finner opp ulike produktfortellinger.

For team som allerede bygger agentarbeidsflyter rundt WordPress-plugin-overflater eller Playground-sandkasser, er den åpne WooCommerce MCP-pakken den produksjonsnære leseflaten: samme protokollfamilie, strengere skriverestriksjon, direkte mot butikkens REST.

#Konklusjon

@wppoland/woocommerce-mcp er den minste nyttige MCP-flaten vi stoler på foran en live WooCommerce-butikk: fem leseverktøy, offisiell REST under, MIT, publisert til npm og MCP Registry. Installer den når agenter trenger butikkfakta. Bygg en egendefinert server når agenter trenger butikkhandlinger.

Start her: https://www.npmjs.com/package/@wppoland/woocommerce-mcp - koble deretter Read-nøkler, kjør et røykspørsmål, og hold skriving ute av agentstien til programmet er klart for dem.

Neste steg

Gjor artikkelen om til faktisk implementering

Denne blokken styrker intern lenking og sender leseren videre til de mest relevante tjenestene og innholdet.

Vil du fa dette implementert pa nettstedet ditt?

Hvis synlighet i Google og AI-systemer betyr noe, kan jeg bygge innholdsarkitektur, FAQ, schema og intern lenking for SEO, GEO og AEO.

Relevant klynge

Utforsk andre WordPress-tjenester og kunnskapsbase

Styrk virksomheten din med profesjonell teknisk støtte innen kjerneområdene i WordPress-økosystemet.

Artikkel-FAQ

Ofte stilte spørsmål

Praktiske svar for å bruke temaet i faktisk arbeid.

SEO-readyGEO-readyAEO-ready5 Q&A
Hva er WooCommerce MCP?#
WooCommerce MCP (@wppoland/woocommerce-mcp) er en åpen Model Context Protocol-server som eksponerer skrivebeskyttede verktøy for produkter, lager, ordrer, salgsrapporter og blogginnlegg over de offisielle WooCommerce- og WordPress REST API-ene. Den installerer ingen plugin i butikken og skriver aldri data.
Hvorfor heter npm-pakken @wppoland/woocommerce-mcp?#
Navnet uten prefiks woocommerce-mcp er låst på npm-registeret (E403) etter at en annen part avpubliserte det. Støttet installasjon er @wppoland/woocommerce-mcp. CLI-kommandoen fra bin-feltet forblir woocommerce-mcp.
Er WooCommerce MCP trygt for produksjonsbutikker?#
Den er designet for produksjonslesing når du bruker HTTPS, Read-only API-nøkler og en betrodd MCP-klient på en maskin du kontrollerer. Den erstatter ikke nettverkspolicy, nøkkelrotasjon eller en full sikkerhetsgjennomgang av agentverten.
Erstatter dette å bygge en egen MCP-server?#
Nei. Bruk den åpne pakken når fem leseverktøy er nok. Bygg en egendefinert server når du trenger skriving, ERP-spesifikke verktøy eller Cloudflare Workers-deployformer dekket i vår byggeguide.
Hvor er den listet utenom npm?#
Serveren er registrert i det offisielle MCP Registry som io.github.wppoland/woocommerce-mcp, kildekoden ligger på GitHub under wppoland/woocommerce-mcp, og lanseringsfortellingen er på Product Hunt og DEV Community.

Trenger du FAQ tilpasset bransje og marked? Vi lager en versjon som støtter dine forretningsmål.

Ta kontakt

Relaterte artikler

Shopify Plus vs WooCommerce headless i 2026: kostnad, kontroll, KI

Valget mellom Shopify Plus og WooCommerce headless i 2026 er ikke lenger en binær avveining mellom "plattform vs custom". Begge kan kjøre headless, begge integrerer KI, begge leverer på edge. De reelle aksene er kontroll, totalkostnad over fem år og exit-strategi. Denne artikkelen går gjennom matrisen med bekreftede plattformfakta.