Verbind een aangepaste MCP-client met WordPress.com
Deze tekst is vertaald met AI. Als je de oorspronkelijke tekst in het Engels wilt bekijken, klik dan hier.
Als je een MCP-client (Model Context Protocol) bouwt of een bestaande uitbreidt, kunnen je gebruikers door integratie met WordPress.com hun WordPress.com-sitegegevens via een standaard MCP-interface naar je AI-tool brengen. Dit maakt workflows mogelijk zoals zoeken in de content van een site, berichten en pagina’s ophalen voor samenvatting of analyse, vragen beantwoorden op basis van wat is gepubliceerd, en WordPress.com in het algemeen gebruiken als een vertrouwde contentbron binnen een assistent met MCP-ondersteuning.
Deze handleiding richt zich op de WordPress.com-specifieke onderdelen: hoe je authenticeert en welk MCP-endpoint je moet aanroepen. Voor algemene richtlijnen over het bouwen van een MCP-client, zie de officiële MCP-clientdocumentatie.
Overzicht
WordPress.com biedt een MCP-server via HTTPS en beveiligt deze met OAuth 2.1 met behulp van:
- Dynamic Client Registration: Hiermee kun je clients programmatisch registreren.
- Authorization Code-flow met PKCE: Proof Key for Code Exchange (PKCE) wordt aanbevolen voor publieke clients zoals desktop- en CLI-applicaties.
De flow ziet er als volgt uit:
- Registreer je client bij WordPress.com om een
client_idte verkrijgen - Leid de gebruiker door de OAuth-autorisatiestap (met PKCE)
- Wissel de autorisatie-
codein voor eenaccess_token - Roep het WordPress.com MCP-endpoint aan met
Authorization: Bearer …
WordPress.com-endpoints
Alle onderstaande endpoints worden gehost op:
- Basis-URL:
https://public-api.wordpress.com
OAuth 2.1
- Client registreren:
POST /oauth2-1/register - Autoriseren:
GET /oauth2-1/authorize - Token:
POST /oauth2-1/token
MCP
- WordPress.com MCP-server:
POST /wpcom/v2/mcp/v1
Stap 1: registreer je OAuth-client
WordPress.com ondersteunt dynamische clientregistratie, wat betekent dat je MCP-client zichzelf kan registreren zonder een aparte handmatige instellingsstap.
Verzoek
POST https://public-api.wordpress.com/oauth2-1/registerContent-Type: application/json
Voorbeeld:
curl -X POST "https://public-api.wordpress.com/oauth2-1/register"
-H "Content-Type: application/json"
--data '{
"client_name": "My MCP Client",
"redirect_uris": ["http://localhost:8080/callback"],
"grant_types": ["authorization_code", "refresh_token"]
}'
Wat je terugkrijgt
De reactie bevat een client_id en andere metadata. WordPress.com is ontworpen om public clients te ondersteunen, en registratiereacties geven doorgaans het volgende aan:
token_endpoint_auth_method: "none"
Dat wil zeggen: tokenverzoeken vereisen geen client secret. PKCE biedt de beveiliging voor de uitwisseling van de authorization code.
Sla minimaal de client_id op die je tijdens de registratie ontvangt en zorg ervoor dat je consequent een van de exacte redirect_uri-waarden gebruikt die je hebt geregistreerd. Je kunt eventueel de rest van de registratiereactie bewaren (bijvoorbeeld tijdstempels of de registration client URI) als dat helpt bij het later oplossen van problemen of inspecteren van de clientconfiguratie.
Stap 2: Leid de gebruiker door de autorisatie
Om een gebruiker te verifiëren, doet je client het volgende:
- Een PKCE
code_verifiergenereren - Een
code_challengeafleiden met de methodeS256 - De gebruiker openen (of doorsturen) naar de autorisatiepagina van WordPress.com
Autorisatieverzoek
GET https://public-api.wordpress.com/oauth2-1/authorize
Voorbeeld:
https://public-api.wordpress.com/oauth2-1/authorize?
response_type=code&
client_id=YOUR_CLIENT_ID&
redirect_uri=http://localhost:8080/callback&
code_challenge=YOUR_CODE_CHALLENGE&
code_challenge_method=S256&
scope=auth
Nadat de gebruiker toegang heeft goedgekeurd, leidt WordPress.com de browser terug naar je redirect_uri met een queryparameter code. Je redirect_uri moet exact overeenkomen met een van de URIs die je hebt geregistreerd.
Stap 3: Wissel de autorisatiecode in voor tokens
Zodra je client de autorisatiecode ontvangt, wissel je deze in voor een toegangstoken bij het tokenendpoint.
Tokenaanvraag
POST https://public-api.wordpress.com/oauth2-1/tokenContent-Type: application/x-www-form-urlencoded
Voorbeeld:
curl -X POST "https://public-api.wordpress.com/oauth2-1/token"
-H "Content-Type: application/x-www-form-urlencoded"
--data "grant_type=authorization_code&code=AUTHORIZATION_CODE&redirect_uri=http://localhost:8080/callback&code_verifier=YOUR_CODE_VERIFIER&client_id=YOUR_CLIENT_ID"
Resultaat
Het token-endpoint retourneert een OAuth-respons met een access_token en kan ook velden bevatten zoals expires_in en een refresh_token.
Gebruik de access_token om aanroepen naar het WordPress.com MCP-endpoint te verifiëren via Authorization: Bearer YOUR_ACCESS_TOKEN.
Stap 4: Roep de WordPress.com MCP-server aan
De MCP-server van WordPress.com wordt via HTTP benaderd door MCP-verzoeken naar het MCP-endpoint te POSTen, geverifieerd met je OAuth-toegangstoken.
MCP-verzoek
POST https://public-api.wordpress.com/wpcom/v2/mcp/v1
Kopteksten:
Authorization: Bearer YOUR_ACCESS_TOKENContent-Type: application/json
Voorbeeld:
{
"method": "tools/call",
"params": {
"name": "wpcom-mcp-posts-search",
"arguments": {
"wpcom_site": "yoursite.wordpress.com",
"search": "recent updates"
}
}
}
In dit voorbeeld vraagt je client de MCP-server van WordPress.com om de tool met de naam wpcom-mcp-posts-search uit te voeren met de opgegeven argumenten.
Implementatieopmerkingen
- PKCE is vereist voor publieke clients. Neem geen geheimen op in gedistribueerde apps.
- Alle MCP-calls moeten
Authorization: Bearer …bevatten met een geldige WordPress.com-toegangstoken. - Redirect-URI’s moeten overeenkomen met de registratie. Als je
http://localhostgebruikt tijdens de ontwikkeling, registreer dan die exacte callback-URL.
Laatste update: juni 22, 2026