WordPress MCP
OfficialWordPress МКП
Плагин WordPress, реализующий протокол контекста модели (MCP) для раскрытия функциональности WordPress через стандартизированный интерфейс. Этот плагин позволяет моделям ИИ и другим приложениям взаимодействовать с сайтами WordPress структурированным и безопасным способом.
Функции
🔒 Безопасный и стандартизированный интерфейс для взаимодействия с WordPress
🤖 Конечные точки API, совместимые с ИИ
🏗️ Расширяемая архитектура для пользовательских инструментов, ресурсов и подсказок
🔌 Адаптер для API функций WordPress
⚡ Высокопроизводительная реализация
Related MCP server: wp-mcp
Установка
Загрузите последнюю версию wordpress-mcp.zip с https://github.com/Automattic/wordpress-mcp/releases/
Загрузите файлы плагина в каталог
/wp-content/plugins/wordpress-mcpАктивируйте плагин через меню «Плагины» в WordPress.
Перейдите в
Settings > MCPи включите функции и возможности MCP.
Использование
Этот плагин предназначен для работы с wp-wordpress-remote , который обеспечивает реализацию на стороне клиента для взаимодействия с интерфейсом MCP. Пожалуйста, проверьте инструкции по использованию .
Разработка
Расширение плагина
Вы можете расширить функциональность плагина, добавив новые компоненты через WordPress MCP API:
Добавление новых инструментов
Проверьте инструменты, определенные в wp-content/plugins/wordpress-mcp/includes/Tools/ для примеров.
Добавление ресурсов
Проверьте определение ресурсов в wp-content/plugins/wordpress-mcp/includes/Resources/ для примеров
Добавление подсказок
Проверьте подсказки, определенные в wp-content/plugins/wordpress-mcp/includes/Prompts/ на наличие примеров
Использование API функций WordPress
Проверьте API функций WordPress — систему для предоставления функциональности WordPress стандартизированным, обнаруживаемым способом для использования как на стороне сервера, так и на стороне клиента. При включении этот плагин преобразует функции в инструменты и ресурсы MCP.
Внося вклад
Мы приветствуем ваши вклады!
Поддерживать
WordPress MCP имеет обширную документацию, для получения более подробной информации обратитесь к документации .
Для поддержки, пожалуйста:
Открыть вопрос на GitHub
Свяжитесь с сопровождающими
Available Tools
5 toolscreate-postC
Create a new WordPress post using Gutenberg blocks
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Post content in WordPress block format. Here is an example of the format: If you given following blocks documentation: ``` Name: core/paragraph Title: Paragraph Description: Start with the basic building block of all narrative. Category: text ##Attributes ###align type: string ###content type: rich-text source: rich-text selector: p role: content ###dropCap type: boolean default: false ###placeholder type: string ###direction type: string enum: ltr,rtl ###lock type: object ###metadata type: object ###className type: string ###style type: object ###backgroundColor type: string ###textColor type: string ###gradient type: string ###fontSize type: string ###fontFamily type: string ###borderColor type: string ``` You can use the following format: ``` <!-- wp:paragraph {"align":"center", "dropCap":true, "direction":"ltr", "fontSize":"large", "fontFamily":"serif", "borderColor":"red", "backgroundColor":"blue", "textColor":"green", "gradient":"linear-gradient(to right, #000000, #ffffff)", "style":{"color":"red", "background-color":"blue"}} --> <p class="has-text-align-center has-drop-cap has-large-font-size has-serif-font-family has-border-color has-background has-text-color has-gradient has-global-padding has-global-margin has-global-color has-global-font-size" style="color:red;background-color:blue;">Your paragraph content here.</p> <!-- /wp:paragraph --> ``` | |
| title | Yes | Post title less than 70 characters |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It states 'Create' which implies a write/mutation operation, but doesn't disclose behavioral traits like required permissions, whether it publishes immediately, error handling, or rate limits. For a mutation tool with zero annotation coverage, this is a significant gap in transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, zero waste. It's front-loaded with the core purpose and includes a specific implementation detail ('using Gutenberg blocks') that adds value without verbosity. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a mutation tool with no annotations and no output schema, the description is incomplete. It doesn't cover behavioral aspects (permissions, side effects), response format, or error conditions. Given the complexity of creating posts with Gutenberg blocks, more context is needed for effective agent use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents both parameters (title and content) with detailed examples and constraints. The description adds no parameter-specific information beyond what's in the schema. Baseline 3 is appropriate when schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create') and resource ('WordPress post') with the specific implementation detail 'using Gutenberg blocks'. It distinguishes from siblings like get-post (read) and update-post (modify), though not explicitly named. The purpose is specific but could more directly contrast with siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like update-post or search-posts. The description implies it's for new posts but doesn't state prerequisites (e.g., authentication, permissions) or exclusions (e.g., not for drafts). Usage context is implied but not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-postC
Get a WordPress post by its ID
| Name | Required | Description | Default |
|---|---|---|---|
| postId | Yes | Post ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. While 'Get' implies a read operation, it doesn't specify whether this requires authentication, returns errors for invalid IDs, or includes metadata like post content or status. This leaves significant gaps for a tool with no annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core purpose without unnecessary words. Every part ('Get a WordPress post by its ID') contributes directly to understanding the tool's function, making it optimally concise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with no annotations and no output schema, the description is insufficient. It doesn't explain what data is returned (e.g., post content, author, date), error conditions, or authentication needs, leaving the agent with incomplete context for proper invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description coverage is 100%, with the parameter 'postId' documented as 'Post ID' with a minimum of 0. The description adds no additional semantic context beyond what the schema provides, such as format examples or ID sources, meeting the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('a WordPress post by its ID'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'search-posts' or 'wordpress-block-types-schema', which prevents a perfect score.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'search-posts' or 'create-post'. It lacks context about prerequisites (e.g., needing a valid post ID) or exclusions, leaving the agent to infer usage from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-postsC
Search for WordPress posts by title or keyword
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Post title or keyword |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions searching but doesn't disclose behavioral traits such as whether it returns partial matches, case sensitivity, pagination, rate limits, or error handling. The description is minimal and lacks critical operational details.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence with zero waste. It's appropriately sized and front-loaded, clearly stating the tool's purpose without unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations, no output schema, and a simple input schema, the description is incomplete. It doesn't explain what the tool returns (e.g., list of posts, error messages) or behavioral aspects like search scope or limitations, leaving gaps for an AI agent to understand full usage.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with the parameter 'title' documented as 'Post title or keyword'. The description adds minimal value by echoing 'title or keyword' but doesn't provide additional semantics beyond what the schema already states, such as search behavior or examples.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Search for') and resource ('WordPress posts'), and specifies the search criteria ('by title or keyword'). It doesn't explicitly differentiate from sibling tools like 'get-post' or 'create-post', but the search functionality is distinct enough to imply differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like 'get-post' (which might retrieve a specific post by ID) or 'create-post'. It lacks explicit context, exclusions, or prerequisites for usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update-postC
Update a WordPress post using Gutenberg blocks
| Name | Required | Description | Default |
|---|---|---|---|
| content | Yes | Post content in WordPress block format. Here is an example of the format: If you given following blocks documentation: ``` Name: core/paragraph Title: Paragraph Description: Start with the basic building block of all narrative. Category: text ##Attributes ###align type: string ###content type: rich-text source: rich-text selector: p role: content ###dropCap type: boolean default: false ###placeholder type: string ###direction type: string enum: ltr,rtl ###lock type: object ###metadata type: object ###className type: string ###style type: object ###backgroundColor type: string ###textColor type: string ###gradient type: string ###fontSize type: string ###fontFamily type: string ###borderColor type: string ``` You can use the following format: ``` <!-- wp:paragraph {"align":"center", "dropCap":true, "direction":"ltr", "fontSize":"large", "fontFamily":"serif", "borderColor":"red", "backgroundColor":"blue", "textColor":"green", "gradient":"linear-gradient(to right, #000000, #ffffff)", "style":{"color":"red", "background-color":"blue"}} --> <p class="has-text-align-center has-drop-cap has-large-font-size has-serif-font-family has-border-color has-background has-text-color has-gradient has-global-padding has-global-margin has-global-color has-global-font-size" style="color:red;background-color:blue;">Your paragraph content here.</p> <!-- /wp:paragraph --> ``` | |
| postId | Yes | Post ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. 'Update' implies a mutation operation, but the description doesn't disclose behavioral traits like permissions required, whether changes are reversible, error handling for invalid post IDs, or rate limits. It mentions Gutenberg blocks but doesn't explain what happens if content format is incorrect. For a mutation tool with zero annotation coverage, this is a significant gap in behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the core action. It wastes no words and is appropriately sized for the tool's complexity. However, it could be more structured by separating purpose from technical details, but this is minor given its brevity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given complexity (mutation tool with no annotations and no output schema), the description is incomplete. It doesn't cover behavioral aspects like side effects, error conditions, or return values. While the schema handles parameters well, the description fails to provide necessary context for safe and effective use, especially for a write operation in a system like WordPress.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with both parameters well-documented in the schema: postId as 'Post ID' and content with detailed format examples. The description adds no additional parameter semantics beyond what's in the schema, such as explaining the relationship between parameters or constraints. Baseline 3 is appropriate when schema does the heavy lifting, but no extra value is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Update') and resource ('WordPress post') with specific technology context ('using Gutenberg blocks'). It distinguishes from create-post (creation vs update) and get-post/search-posts (read vs write), though not explicitly. The purpose is specific but could better differentiate from siblings like 'update-post' vs 'create-post' by mentioning it modifies existing posts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., needing an existing post ID), when to choose update-post over create-post for modifications, or any limitations. The description assumes context but provides no explicit usage rules, leaving the agent to infer from the tool name alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
wordpress-block-types-schemaC
Available WordPress block types that can be used for content creation
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions 'available WordPress block types' but doesn't disclose behavioral traits such as whether this is a read-only operation, if it requires authentication, or how data is returned (e.g., list, schema). The description is vague and lacks critical operational details for a tool with no structured annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that directly states the tool's focus. It's appropriately sized for a simple tool with no parameters, though it could be more front-loaded with action verbs (e.g., 'List available WordPress block types...') to improve clarity without adding waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., a list of block types, their schemas, or usage examples), which is crucial for a tool with no parameters. For a tool that likely provides data, more context on output behavior is needed to be fully helpful.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has 0 parameters, and schema description coverage is 100% (since there are no parameters to describe). The description doesn't need to add parameter semantics, so it meets the baseline of 4 for tools with no parameters, as it doesn't have to compensate for any gaps.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states the tool provides 'available WordPress block types that can be used for content creation,' which gives a general purpose but lacks specificity about what action the tool performs (e.g., list, retrieve, or describe). It distinguishes from siblings like create-post or update-post by focusing on block types rather than posts, but doesn't clarify if it's a read operation or configuration tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus alternatives is provided. The description implies it's for content creation, but it doesn't specify scenarios (e.g., before creating a post to know available blocks) or exclusions. Without annotations or context, usage is implied but not clearly defined.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
v1.0.0- First observed
create-post - First observed
get-post - First observed
search-posts - First observed
update-post - First observed
wordpress-block-types-schema
TDQS
Each tool has a clearly distinct purpose: create-post, get-post, search-posts, and update-post cover different CRUD operations for posts, while wordpress-block-types-schema provides metadata for content creation. There is no overlap or ambiguity between these tools.
Four tools follow a consistent verb-noun pattern (create-post, get-post, search-posts, update-post), but wordpress-block-types-schema deviates with a longer, descriptive name. This minor inconsistency slightly reduces the overall naming coherence.
With 5 tools, this server is well-scoped for managing WordPress posts. The count is appropriate for the domain, covering core operations without being overly sparse or bloated, and each tool serves a clear purpose.
The tool set provides good coverage for WordPress post management with create, read, update, and search operations, plus block type information. A minor gap is the lack of a delete-post tool, which agents might need to work around, but core workflows are well-supported.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Security-first WordPress MCP server. 129 tools for Claude, ChatGPT, Gemini. Free on wp.org.
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
WordPress MCP server: generate SEO posts, AI images, autoblog & WooCommerce on your self-hosted site
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI assistants to manage WordPress sites and create content with AI-generated featured images.322MIT
- AlicenseNot gradedqualityCmaintenanceA Model Context Protocol server that turns WordPress sites into AI-operable surfaces by exposing CRUD primitives for posts, users, comments, and settings. It supports both local STDIO and remote HTTP transports, allowing AI assistants to manage content and site configuration directly.839MIT
- FlicenseNot gradedqualityDmaintenanceEnables WordPress content management through the Model Context Protocol, allowing AI agents to create, read, update, and delete posts, metadata, taxonomies, and terms, as well as interact with Gutenberg blocks.1-
- AlicenseNot gradedqualityCmaintenanceA comprehensive WordPress plugin that implements the Model Context Protocol (MCP) to expose WordPress functionality through standardized interfaces, enabling AI models and applications to interact with WordPress sites securely using multiple transport protocols and enterprise-grade authentication.68MIT
Appeared in Searches
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/Automattic/wordpress-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server