wppoland.com/mcp som en levende MCP-server: arkitektur, integrasjoner og praktiske bruksområder for WordPress og netthandel
NB

wppoland.com/mcp som en levende MCP-server: arkitektur, integrasjoner og praktiske bruksområder for WordPress og netthandel

Sist verifisert: 21. august 2026
10 min lesetid
Guide
500+ WP-prosjekter
AI-integrasjon

Den raskeste måten å forstå hva Model Context Protocol (MCP) faktisk innebærer i praksis, er ikke å lese akademiske spesifikasjoner eller se på genererte presentasjonslysbilder. Den raskeste måten er å sende en enkelt forespørsel til en levende, fungerende URL på det åpne nettet:

https://wppoland.com/mcp

Under denne adressen kjører en produksjonsklar Model Context Protocol-server på vårt nettsted. Du kan sende en POST-forespørsel med JSON-RPC 2.0. Serveren svarer umiddelbart med strukturerte, typede data. Ingen WordPress-plugin i kontrollpanelet er påkrevd, ingen API-nøkkel, ingen gebyrer og ingen skriving til databasen.

Dersom en AI-assistent (som Claude Desktop, Claude Code, Cursor eller en autonom utvikleragent) støtter MCP, kan den spørre våre systemer direkte: Hvilke tjenester tilbyr vi faktisk? Hvilke teknologier støttes? Hva er den kanoniske adressen for et skriftlig prosjektbrief? Hva assistenten ikke kan gjøre, er å sende en e-post på dine vegne eller opprette uverifiserte leads i vårt CRM. Denne begrensningen er ingen forglemmelse, men fundamentet i vår sikkerhetsmodell.

I denne dyptgående guiden går vi grundig gjennom hvordan det levende MCP-endepunktet fungerer på wppoland.com, arkitekturen til vår åpne søsterserver woocommerce-mcp, praktiske bruksscenarier for byråer og nettbutikker, samt lærdommer fra produksjonsdrift på edge-infrastruktur.


#Hvorfor en direkte MCP-server endrer spillereglene

Standard webapplikasjoner har allerede programmeringsgrensesnitt. WooCommerce har et modent REST API. WordPress har tilbudt /wp-json/ i mange år. Vårt nettsted publiserer en maskinlesbar tjenestekatalog i JSON-format under /api/services.json.

Store språkmodeller (LLM) opererer på sannsynlighetsberegning av neste ord. Når en assistent forsøker å analysere et nettsted gjennom HTML-skraping eller utdaterte treningsdata, hender det ofte at den oppfinner ikke-eksisterende undersider, antar tjenester som aldri har vært tilbudt, eller gir utdaterte kontaktdetaljer.

Model Context Protocol (lansert av Anthropic i november 2024 og nå forvaltet under Linux Foundations Agentic AI Foundation; spesifikasjon: modelcontextprotocol.io) løser dette fundamentalt. MCP fungerer som en universell standard - en USB-kontakt for AI-agenter.

Model Context Protocol arkitektur som kobler AI-assistenter til systemer

Akkurat som en datamaskin ikke trenger en egen driver for hvert tastaturmerke takket være standardiserte USB-porter og datakontrakter, trenger en AI-assistent en enhetlig protokoll for verktøybruk. Et verktøy (Tool) i MCP er en navngitt, deterministisk operasjon med et strengt definert JSON-skjema for inn- og utdata.

Når en AI-klient støtter MCP, kan den koble seg til en hvilken som helst kompatibel server: et kodearkiv, et sakshåndteringssystem, en produktbase eller et byrånettsted som wppoland.com.


#De tre komponentene i praksis

En MCP-arkitektur består av tre samvirkende deler:

  1. Klienten (Client): Programmet brukeren snakker med (Claude Desktop, Claude Code, Cursor IDE, Windsurf). Klienten styrer kontekstvinduet, tolker intensjoner og avgjør når et verktøy skal kalles.
  2. Serveren (Server): Et lettvektsprogram eller en edge-funksjon (på wppoland.com en Cloudflare Pages Function) som publiserer verktøymanifester og håndterer kjøreforespørsler. Serveren er ikke WordPress og ikke en PHP-plugin.
  3. Verktøyet (Tool): En enkelt deterministisk handling. På vårt offentlige endepunkt finnes to verktøy: check_services og request_quote.

Flyten er enkel: Klienten henter listen over verktøy (tools/list), modellen velger et verktøy med validerte parametere, serveren kjører koden og returnerer strukturerte data, og modellen formulerer et nøyaktig svar til mennesket.


#Trinnvis testing i terminalen

Du kan teste endepunktet direkte fra terminalen med curl uten å skrive AI-orkestreringskode:

curl -s -X POST https://wppoland.com/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Svaret returnerer et manifest med tilgjengelige verktøy og deres JSON Schema-definisjoner:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "tools": [
      {
        "name": "check_services",
        "description": "List or search WPPoland services catalog with localized canonical URLs.",
        "inputSchema": {
          "type": "object",
          "properties": {
            "query": {
              "type": "string",
              "description": "Optional search term to filter services"
            },
            "lang": {
              "type": "string",
              "enum": ["pl", "en", "de", "nb", "es", "pt-pt"],
              "description": "Target language for service titles and URLs"
            }
          }
        }
      },
      {
        "name": "request_quote",
        "description": "Get localized contact URL and brief submission instructions.",
        "inputSchema": {
          "type": "object",
          "properties": {
            "project_type": {
              "type": "string",
              "description": "Type of project (e.g. mcp-server-development, woocommerce, audit)"
            },
            "lang": {
              "type": "string",
              "enum": ["pl", "en", "de", "nb", "es", "pt-pt"],
              "description": "Preferred language for the inquiry"
            }
          }
        }
      }
    ]
  }
}

Terminal-respons for tools/list fra wppoland.com/mcp

En GET-forespørsel til https://wppoland.com/mcp i en nettleser gir status og peker til discovery-kortet:

https://wppoland.com/.well-known/mcp/server-card.json

GET-respons med serverstatus og lenke til discovery-kortet

Dette kortet bekrefter at transporten er Streamable HTTP, at autentisering ikke kreves, og at serveren utelukkende eksponerer tools (uten tomme resources eller prompts).


#Konfigurasjon i Claude Desktop og Cursor

#Konfigurasjon for Claude Desktop

I filen claude_desktop_config.json (under macOS: ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "wppoland": {
      "url": "https://wppoland.com/mcp/"
    }
  }
}

#Konfigurasjon for Cursor IDE

I filen .cursor/mcp.json i prosjektets rot eller i globale innstillinger:

{
  "mcpServers": {
    "wppoland": {
      "url": "https://wppoland.com/mcp/"
    }
  }
}

Konfigurasjon av wppoland MCP-serveren i Claude Desktop og Cursor

Etter omstart av klienten kan du spørre: “Hvilke tjenester innen WooCommerce-optimalisering og MCP-utvikling tilbyr WPPoland?”. Assistenten kaller check_services med parameteren query: "woocommerce" og returnerer bekreftede, kanoniske lenker.


#Lærdom fra drift: Skråstreken som ødela 90 % av forespørslene

JSON-RPC over HTTP krever POST-forespørsler med en body. Mange serveroppsett og statiske generatorer omdirigerer automatisk (301) stier uten avsluttende skråstrek (/mcp) til stier med skråstrek (/mcp/).

Mange automatiserte klienter feilet på dette:

  • Noen biblioteker avbrøt umiddelbart ved 301 og behandlet det som protokollfeil.
  • Andre fulgte omdirigeringen ved å konvertere forespørselen til en GET og forkaste POST-kroppen helt.

Våre målinger over tre påfølgende dager viste 29 feilede JSON-RPC-kall per dag mot kun 2 vellykkede på stien uten skråstrek.

Løsningen: En Cloudflare Zone Rule som sikrer at POST-forespørsler til /mcp behandles direkte uten omdirigering og returnerer HTTP 200. Suksessraten steg umiddelbart til 100 %.

Viktig poeng: Standard web-analyse (som Google Analytics) registrerer ikke slike feil fordi AI-agenter ikke kjører JavaScript på klientsiden.


#Sikkerhetsarkitektur: Hvorfor skrivebeskyttelse er avgjørende

Nettbutikkeiere spør med rette: “Kan en AI-assistent slette ordrer, endre priser eller overskrive kundedata?”.

På wppoland.com/mcp er dette utelukket, da endepunktet ikke har noen skrivefunksjoner.

Verktøyet request_quote returnerer strukturert veiledning:

{
  "contact_url": "https://wppoland.com/nb/kontakt/?source=mcp",
  "method": "web-form",
  "note": "Skrivebeskyttet endepunkt. Send henvendelsen via kontaktskjemaet; dette verktøyet sender ikke e-post automatisk.",
  "suggested_message": "Forespørsel om pristilbud: Utvikling av MCP-server. Vennligst inkluder omfang og tidsplan.",
  "reply_time": "innen én virkedag"
}

Strukturert JSON-respons fra request_quote verktøyet

Hvorfor sender ikke verktøyet e-post direkte?

  1. Spambeskyttelse: Et åpent, skrivende MCP-endepunkt ville blitt en spam-kilde på få timer.
  2. Beskyttelse mot prompt injection: Manipulerte ledetekster kan ikke tvinge fram tilstandsendringer når det mangler skrivekode i handlere.
  3. Defense in depth: For bindende handlinger omdirigeres brukeren til et sikkert skjema med bot-beskyttelse.

#Butikksiden: woocommerce-mcp

For WooCommerce-butikker har vi utviklet og publisert åpen kildekode:

Åpen kildekode woocommerce-mcp server for WordPress og WooCommerce

https://github.com/wppoland/woocommerce-mcp

Pakken @wppoland/woocommerce-mcp (npm, MIT) kommuniserer direkte med WooCommerce REST API ved hjelp av skrivebeskyttede nøkler og tilbyr fem verktøy:

WooCommerce REST API nøkler konfigurert med Read-only rettigheter

  • list_products: Søke i produktkatalogen etter kategori og lagerstatus.
  • get_product: Hente fullstendige produktdetaljer basert på ID.
  • list_orders: Hente nylige bestillinger med statusfiltre (f.eks. processing, on-hold).
  • sales_report: Aggregere salgstall og ordretall over definerte perioder.
  • search_posts: Søke i blogginnlegg og kunnskapsbase via standard WordPress REST API.

#TypeScript-implementering med Zod-validering

import { z } from "zod";

server.registerTool(
  "list_orders",
  {
    title: "List orders",
    description: "List recent WooCommerce orders, newest first. Optionally filter by status.",
    inputSchema: {
      per_page: z.number().int().min(1).max(100).optional(),
      status: z.enum([
        "any", "pending", "processing", "on-hold",
        "completed", "cancelled", "refunded", "failed"
      ]).optional(),
    },
  },
  async ({ per_page, status }) => {
    const cfg = loadConfig(true);
    const data = await wc(cfg, "orders", {
      per_page: per_page ?? 10,
      status,
      orderby: "date",
      order: "desc",
    });
    
    return ok(data.map((order) => ({
      id: order.id,
      number: order.number,
      status: order.status,
      total: order.total,
      currency: order.currency,
      date_created: order.date_created,
      item_count: order.line_items?.length ?? 0,
    })));
  },
);

Dataflytarkitektur mellom AI-assistent, MCP-server og WooCommerce-butikk

Åpen kildekode repository for woocommerce-mcp på GitHub på MIT-lisens

#Detaljerte verktøykall med cURL

For å forstå hvordan tools/call fungerer i praksis, kan du sende en direkte forespørsel til serveren:

curl -s -X POST https://wppoland.com/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 2,
    "method": "tools/call",
    "params": {
      "name": "check_services",
      "arguments": {
        "query": "mcp",
        "lang": "nb"
      }
    }
  }'

Serveren behandler forespørselen og returnerer den kanoniske tjenestekatalogen:

{
  "jsonrpc": "2.0",
  "id": 2,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "Funnet tjenester (1):\n- Navn: Utvikling av MCP-server\n  ID: mcp-server-development\n  URL: https://wppoland.com/nb/tjenester/mcp-server-development/\n  Beskrivelse: Utvikling av Model Context Protocol-servere for WordPress og WooCommerce."
      }
    ]
  }
}

Tilsvarende gir et kall til request_quote et strukturert svar uten skriving:

{
  "jsonrpc": "2.0",
  "id": 3,
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\n  \"contact_url\": \"https://wppoland.com/nb/kontakt/?source=mcp\",\n  \"method\": \"web-form\",\n  \"reply_time\": \"innen én virkedag\"\n}"
      }
    ]
  }
}

#Fire praktiske bruksscenarier

#Scenario 1: Autonom driftsassistent for nettbutikk

Nettbutikksjefer lar bestillinger i status on-hold analyseres automatisk uten å navigere manuelt i wp-admin.

Forespørsel i naturlig språk:

“Sjekk de 10 siste bestillingene med status on-hold. Beregn totalbeløp og identifiser berørte produkter.”

Intern verktøykjede:

  1. Assistenten kaller list_orders(status="on-hold", per_page=10).
  2. MCP-serveren returnerer ID-er og beløp uten personopplysninger.
  3. For relevante produkter kalles get_product(id=...).
  4. Assistenten oppsummerer resultatet i en ryddig tabell.

#Scenario 2: B2B-henvendelsestriage for byråer

Kunders AI-agenter sjekker spesifikke kjernekompetanser via check_services og mottar passende brief-lenker.

Forespørsel i naturlig språk:

“Tilbyr WPPoland migrasjon til Google Merchant API og hva er forutsetningene for en teknisk revisjon?”

Intern verktøykjede:

  1. Agenten kaller check_services(query="merchant", lang="nb").
  2. Serveren returnerer tjenestebeskrivelsen og den kanoniske landingssiden.
  3. Deretter kalles request_quote(project_type="mcp-server-development", lang="nb").
  4. Assistenten leverer en presis oppsummering med direkte lenke til brief-skjemaet (?source=mcp).

#Scenario 3: Førstelinjesupport i kundeservice

Supportmedarbeidere sjekker lagerbeholdning og produktvarianter via Slack-bot koblet til MCP uten å trenge fulle admin-rettigheter i WordPress.

Eksempel på arbeidsflyt:

  • Supportmedarbeider skriver i Slack: /sjekk-vare VARE-9940.
  • Boten kaller get_product(id=9940) over MCP.
  • Sanntids lagerstatus og fargevarianter returneres på 200 ms.
  • Feilkilder minimeres og svartiden overfor kunden reduseres dramatisk.

#Scenario 4: Innholdsorkestrering i Headless WordPress

Redaktører sjekker eksisterende artikler via search_posts før nye guider produseres for å unngå SEO-kannibalisering.

Eksempel på arbeidsflyt:

  • Redaksjonsagent kjører search_posts(query="Core Web Vitals").
  • Serveren returnerer publiserte artikler og datoer for siste oppdatering.
  • Den nye artikkelen struktureres slik at den naturlig lenker internt til eksisterende innholdsstolper.

#Teknisk sammenligning: stdio vs. Streamable HTTP vs. SSE

EgenskapStdio TransportStreamable HTTP (wppoland.com)Server-Sent Events (SSE)
PlasseringLokal (Desktop / CLI)Edge Functions / SkyDedikerte backend-servere
Latens< 5 ms20 - 50 ms (Edge)50 - 150 ms (Stateful)
SikkerhetLokale prosessgrenserOffentlig skrivebeskyttelseBearer Token / OAuth
OppsettNode-binærfil lokaltRen URL i klientenServerinfrastruktur kreves
VedlikeholdPakkeoppdateringer lokaltNull konfigurasjon for klienterPersistente tilkoblinger

#Hva MCP ikke er

  • Ikke en nettleser-chatwidget: MCP er en maskin-til-maskin-protokoll for AI-agenter.
  • Ikke en ERP-erstatning: Synkronisering mellom SAP og WooCommerce krever deterministiske rørledninger.
  • Ikke automatisk GDPR-overholdelse: Skrivebeskyttede nøkler har tilgang til ordredata; MCP-verktøyet må filtrere personopplysninger.
  • Ikke slutten på WordPress-utviklere: Komplekse oppsett og temaer krever fortsatt menneskelig ekspertise.

#Produksjonsarkitektur: Anbefalt ansvarsfordeling

Ved bygging av et moderne enterprise-miljø basert på WordPress, WooCommerce og AI-agenter anbefaler vi en tredelt ansvarsfordeling:

  1. Transaksjonell datakilde (Catalogue of Record): Forblir i WooCommerce-databasen eller det integrerte ERP-systemet. En AI-modell skal aldri estimere priser eller finne på lagerstatus.
  2. Redaksjonelt innhold: Forvaltes i WordPress eller statiske Markdown/MDX-filer.
  3. MCP-verktøylag: Kjører som en isolert Edge Function (Cloudflare Workers / Pages) med streng rate limiting og Cloudflare Cache Rules. Dette sikrer at en AI-agent i en løkke under salgstoppe (f.eks. Black Friday) aldri reduserer kasseopplevelsen for menneskelige kunder.

#Konklusjon

Å gjøre WordPress tilgjengelig for AI-agenter via wppoland.com/mcp og woocommerce-mcp på GitHub krever verken tunge plugins eller kompromisser på sikkerhet.

Les mer om våre MCP-utviklingstjenester eller test endepunktet direkte fra terminalen.

Neste steg

Gjør artikkelen om til faktisk implementering

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

Vil du få dette implementert på 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.

Hva er egentlig endepunktet https://wppoland.com/mcp?#
Det er en offentlig tilgjengelig, produksjonsklar Model Context Protocol (MCP)-server som kjører på Cloudflare Pages Functions på edge-nettverket. Den svarer på POST JSON-RPC 2.0-forespørsler uten krav om API-nøkkel og tilbyr to typede, skrivebeskyttede verktøy: check_services og request_quote.
Hvorfor må en offentlig MCP-server være strengt skrivebeskyttet?#
Å tillate skriveoperasjoner på et åpent endepunkt skaper umiddelbar risiko for spam-angrep og utilsiktede tilstandsendringer fra hallusinerende LLM-modeller. Verktøyet request_quote returnerer en lokalisert skjemalenke, slik at den faktiske innsendingen forblir en styrt handling.
Hvordan skiller wppoland.com/mcp seg fra åpen kildekode-serveren woocommerce-mcp?#
wppoland.com-endepunktet er en lett HTTP-edge-server for et markedsføringskatalog. woocommerce-mcp (@wppoland/woocommerce-mcp på npm) er en lokal stdio TypeScript-server for WooCommerce-butikker som kobler seg til det offisielle REST API-et med skrivebeskyttede nøkler.
Kan AI-assistenter ødelegge butikkens database eller endre ordrestatus?#
Nei. Skrivebeskyttelse håndheves på skjemaniå, i handlere og i API-tilganger (WooCommerce Read-only-nøkler, ingen muterende funksjoner).
Hvilke tekniske krav må en klient oppfylle for å koble seg til?#
Klienten må støtte Streamable HTTP eller standard HTTP POST med JSON-RPC 2.0. Dette støttes nativt av Claude Desktop, Claude Code, Cursor IDE og MCP-klientbiblioteker.

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

Ta kontakt

Relaterte artikler

Nettstedet ditt som en skrivebeskyttet MCP-server

Vi gjorde et statisk markedsføringsnettsted om til en levende, skrivebeskyttet Model Context Protocol-server på POST /mcp. Ikke en nettbutikk, et innholdsnettsted: hvorfor vi gjorde det, Cloudflare Pages-funksjonen som kjører det, håndskrevet JSON-RPC uten SDK, og den skrivebeskyttede sikkerhetstilnærmingen bak request_quote-verktøyet.

Cloudflare Workers og WordPress: WooCommerce levert fra edge

Cloudflare Workers kjører JavaScript og WebAssembly i hundrevis av datasentre i over 100 land verden over. Å sette Workers foran en WordPress-origin flytter lese-stien bort fra WordPress-serveren og gjør WooCommerce til en edge-rendret butikk. Slik fungerer arkitekturen, der den ryker, og hva som bør måles før innføring.