{"id":221,"date":"2026-02-17T18:36:57","date_gmt":"2026-02-17T17:36:57","guid":{"rendered":"https:\/\/helloblog.io\/bg\/wordpress-mcp-adapter-abilities-api-ai-agenti\/"},"modified":"2026-02-17T18:36:57","modified_gmt":"2026-02-17T17:36:57","slug":"wordpress-mcp-adapter-abilities-api-ai-agenti","status":"publish","type":"post","link":"https:\/\/helloblog.io\/bg\/wordpress-mcp-adapter-abilities-api-ai-agenti\/","title":{"rendered":"WordPress MCP Adapter: \u043a\u0430\u043a Abilities API \u043f\u0440\u0435\u0432\u0440\u044a\u0449\u0430 \u043f\u043b\u044a\u0433\u0438\u043d\u0438\u0442\u0435 \u0442\u0438 \u0432 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438 \u0437\u0430 AI \u0430\u0433\u0435\u043d\u0442\u0438"},"content":{"rendered":"\n<p>\u0410\u043a\u043e \u0441\u043b\u0435\u0434\u0438\u0448 \u043d\u0430\u043a\u044a\u0434\u0435 \u0432\u044a\u0440\u0432\u0438 WordPress \u0435\u043a\u043e\u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0430, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e \u0441\u0438 \u0443\u0441\u0435\u0442\u0438\u043b, \u0447\u0435 AI \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f\u0442\u0430 \u0432\u0435\u0447\u0435 \u043d\u0435 \u0435 \u201e\u043d\u044f\u043a\u044a\u0434\u0435 \u0442\u0430\u043c\u201c, \u0430 \u0437\u0430\u043f\u043e\u0447\u0432\u0430 \u0434\u0430 \u0441\u0442\u0430\u0432\u0430 \u0447\u0430\u0441\u0442 \u043e\u0442 \u0440\u0435\u0430\u043b\u043d\u0438\u0442\u0435 dev workflows. \u041a\u043b\u044e\u0447\u043e\u0432\u0438\u044f\u0442 \u0435\u043b\u0435\u043c\u0435\u043d\u0442 \u0442\u0443\u043a \u0435 <strong>Abilities API<\/strong> (\u0432 WordPress 6.9) \u2013 \u043d\u0430\u0447\u0438\u043d \u0434\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430\u0448 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442\u0438, \u043a\u043e\u0438\u0442\u043e \u0441\u0430 <strong>\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u0430\u043d\u0438, \u043e\u0442\u043a\u0440\u0438\u0432\u0430\u0435\u043c\u0438, \u0442\u0438\u043f\u0438\u0437\u0438\u0440\u0430\u043d\u0438 \u0438 \u0438\u0437\u043f\u044a\u043b\u043d\u0438\u043c\u0438<\/strong>. \u0410 \u043a\u043e\u0433\u0430\u0442\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u0448 \u043a\u044a\u043c \u0442\u043e\u0432\u0430 <strong>Model Context Protocol (MCP)<\/strong>, \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430\u0448 \u043c\u043e\u0441\u0442 \u043c\u0435\u0436\u0434\u0443 WordPress \u0438 AI \u0430\u0433\u0435\u043d\u0442\u0438.<\/p>\n\n\n\n<p>\u0422\u043e\u0447\u043d\u043e \u0442\u0443\u043a \u0432\u043b\u0438\u0437\u0430 <strong>WordPress MCP Adapter<\/strong> \u2013 \u043f\u0430\u043a\u0435\u0442\/\u043f\u043b\u044a\u0433\u0438\u043d, \u043a\u043e\u0439\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0432\u0430 AI \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0438 (Claude Desktop, Claude Code, Cursor, VS Code) \u0434\u0430 <strong>\u043d\u0430\u043c\u0438\u0440\u0430\u0442 \u0438 \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u0442 WordPress Abilities \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e<\/strong> \u043a\u0430\u0442\u043e MCP tools. \u0412 \u0442\u043e\u0437\u0438 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b \u0449\u0435 \u043c\u0438\u043d\u0435\u043c \u043f\u0440\u0435\u0437 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f, \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f, \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 AI \u043a\u043b\u0438\u0435\u043d\u0442\u0438, \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 MCP tools, \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u043d\u0435 \u043d\u0430 custom MCP server \u0437\u0430 \u043f\u043b\u044a\u0433\u0438\u043d \u0438 \u0432\u0430\u0436\u043d\u0438\u0442\u0435 security \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0411\u044a\u0440\u0437 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442: Abilities API \u043a\u0430\u0442\u043e \u043e\u0441\u043d\u043e\u0432\u0430<\/h2>\n\n\n\n<p>Abilities API \u0434\u0430\u0432\u0430 \u043d\u0430 WordPress \u201efirst-class\u201c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0435\u043d API, \u043a\u043e\u0439\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0438 cross-context \u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u0430 \u043a\u0430\u043a Core \u0438 \u043f\u043b\u044a\u0433\u0438\u043d\u0438\u0442\u0435 \u043e\u043f\u0438\u0441\u0432\u0430\u0442 \u201e\u043a\u0430\u043a\u0432\u043e \u043c\u043e\u0433\u0430\u0442 \u0434\u0430 \u043f\u0440\u0430\u0432\u044f\u0442\u201c.<\/p>\n\n\n\n<p>\u0415\u0434\u043d\u0430 ability \u0441\u0435 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430 \u0435\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0441:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>\u0423\u043d\u0438\u043a\u0430\u043b\u043d\u043e \u0438\u043c\u0435 (<code>namespace\/ability-name<\/code>)<\/li>\n\n\n<li>\u0422\u0438\u043f\u0438\u0437\u0438\u0440\u0430\u043d\u0430 <strong>input schema<\/strong> \u0438 <strong>output schema<\/strong><\/li>\n\n\n<li><strong>permission_callback<\/strong>, \u043a\u043e\u0439\u0442\u043e \u043f\u0440\u0438\u043b\u0430\u0433\u0430 \u043f\u0440\u0430\u0432\u0430\/\u043a\u0430\u043f\u0430\u0431\u0438\u043b\u0438\u0442\u0438\u0442\u0430<\/li>\n\n\n<li><strong>execute_callback<\/strong>, \u043a\u043e\u0439\u0442\u043e \u0440\u0435\u0430\u043b\u043d\u043e \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435\u0442\u043e<\/li>\n\n<\/ul>\n\n\n\n<p>\u041b\u043e\u0433\u0438\u043a\u0430\u0442\u0430 \u0432 <code>execute_callback<\/code> \u043c\u043e\u0436\u0435 \u0434\u0430 \u0435 \u0432\u0441\u0438\u0447\u043a\u043e: \u0438\u0437\u0432\u043b\u0438\u0447\u0430\u043d\u0435 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438, \u044a\u043f\u0434\u0435\u0439\u0442 \u043d\u0430 \u043f\u043e\u0441\u0442\u043e\u0432\u0435, \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430, \u043e\u0442\u0447\u0435\u0442\u0438 \u2013 \u0432\u0441\u044f\u043a\u0430 \u043e\u0442\u0434\u0435\u043b\u043d\u0430, \u0434\u043e\u0431\u0440\u0435 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u043d\u0430 unit-of-work.<\/p>\n\n\n\n<p>\u0421\u043b\u0435\u0434 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f ability-\u0442\u043e \u0441\u0442\u0430\u0432\u0430 <strong>discoverable<\/strong> \u0438 <strong>executable<\/strong> \u043e\u0442 PHP, JavaScript \u0438 REST API.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u0422\u0440\u0438\u0442\u0435 Core abilities \u0432 WordPress 6.9<\/h3>\n\n\n\n<p>WordPress 6.9 \u0438\u0434\u0432\u0430 \u0441 3 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u0438 abilities, \u043a\u043e\u0438\u0442\u043e \u0441\u0430 \u0443\u0434\u043e\u0431\u043d\u0438 \u0437\u0430 \u043f\u044a\u0440\u0432\u0438 \u0442\u0435\u0441\u0442\u043e\u0432\u0435 \u0441 MCP Adapter:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><code>core\/get-site-info<\/code>: \u0432\u0440\u044a\u0449\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0437\u0430 \u0441\u0430\u0439\u0442\u0430 (\u043f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u0432\u0441\u0438\u0447\u043a\u0438 \u043f\u043e\u043b\u0435\u0442\u0430 \u0438\u043b\u0438 \u043e\u043f\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e \u0444\u0438\u043b\u0442\u0440\u0438\u0440\u0430\u043d \u043f\u043e\u0434-\u043d\u0430\u0431\u043e\u0440).<\/li>\n\n\n<li><code>core\/get-user-info<\/code>: \u0432\u0440\u044a\u0449\u0430 \u0431\u0430\u0437\u043e\u0432\u0438 \u043f\u0440\u043e\u0444\u0438\u043b\u043d\u0438 \u0434\u0435\u0442\u0430\u0439\u043b\u0438 \u0437\u0430 \u0442\u0435\u043a\u0443\u0449\u0438\u044f \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0438\u0440\u0430\u043d \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b \u2013 \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u0437\u0430 \u043f\u0435\u0440\u0441\u043e\u043d\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u043e\u0434\u0438\u0442\u0438\u0440\u0430\u043d\u0435 \u0438 access-aware \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435.<\/li>\n\n\n<li><code>core\/get-environment-info<\/code>: \u0432\u0440\u044a\u0449\u0430 \u0434\u0430\u043d\u043d\u0438 \u0437\u0430 runtime \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442\u0430 \u2013 \u0441\u0440\u0435\u0434\u0430, PHP runtime, \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f \u0437\u0430 DB \u0441\u044a\u0440\u0432\u044a\u0440\u0430, \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 WordPress (\u0437\u0430 \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430\/\u0441\u044a\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442).<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u041a\u0430\u043a\u0432\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430 WordPress MCP Adapter?<\/h2>\n\n\n\n<p><strong>WordPress MCP Adapter<\/strong> \u0435 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u0435\u043d \u043f\u0430\u043a\u0435\u0442 \u0432 \u0438\u043d\u0438\u0446\u0438\u0430\u0442\u0438\u0432\u0430\u0442\u0430 <em>AI Building Blocks for WordPress<\/em>. \u0426\u0435\u043b\u0442\u0430 \u043c\u0443 \u0435 \u0434\u0430 \u201e\u0430\u0434\u0430\u043f\u0442\u0438\u0440\u0430\u201c abilities, \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430\u043d\u0438 \u043f\u0440\u0435\u0437 <strong>Abilities API<\/strong>, \u043a\u044a\u043c \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u0438\u0442\u0435 (primitives) \u043d\u0430 <strong>Model Context Protocol (MCP)<\/strong>, \u0442\u0430\u043a\u0430 \u0447\u0435 AI \u0430\u0433\u0435\u043d\u0442\u0438\u0442\u0435:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>\u0434\u0430 \u043e\u0442\u043a\u0440\u0438\u0432\u0430\u0442 \u0438 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0442 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442 \u043a\u0430\u0442\u043e <strong>MCP tools<\/strong><\/li>\n\n\n<li>\u0434\u0430 \u0447\u0435\u0442\u0430\u0442 WordPress \u0434\u0430\u043d\u043d\u0438 \u043a\u0430\u0442\u043e <strong>MCP resources<\/strong><\/li>\n\n<\/ul>\n\n\n\n<p>\u041d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430 \u0442\u043e\u0432\u0430 \u043e\u0437\u043d\u0430\u0447\u0430\u0432\u0430: <strong>\u0430\u043a\u043e \u043f\u043b\u044a\u0433\u0438\u043d\u044a\u0442 \u0442\u0438 \u0432\u0435\u0447\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430 abilities, \u0441\u0438 \u043d\u0430 \u0435\u0434\u043d\u0430 \u0441\u0442\u044a\u043f\u043a\u0430 \u043e\u0442 \u0442\u043e\u0432\u0430 AI \u0430\u0433\u0435\u043d\u0442 \u0434\u0430 \u0433\u0438 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430<\/strong>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">MCP \u043d\u0430\u043a\u0440\u0430\u0442\u043a\u043e: tools, resources \u0438 prompts<\/h3>\n\n\n\n<p>MCP \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0438\u0440\u0430 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f\u0442\u0430 \u043f\u0440\u0435\u0437 \u0442\u0440\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u0438 \u043f\u0440\u0438\u043c\u0438\u0442\u0438\u0432\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>Tools<\/strong>: \u0438\u0437\u043f\u044a\u043b\u043d\u0438\u043c\u0438 \u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0438\u0442\u043e AI \u0438\u0437\u0432\u0438\u043a\u0432\u0430, \u0437\u0430 \u0434\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435.<\/li>\n\n\n<li><strong>Resources<\/strong>: \u043f\u0430\u0441\u0438\u0432\u043d\u0438 \u0438\u0437\u0442\u043e\u0447\u043d\u0438\u0446\u0438 \u043d\u0430 \u0434\u0430\u043d\u043d\u0438 (\u043a\u0430\u0442\u043e \u0444\u0430\u0439\u043b\u043e\u0432\u0435 \u0438\u043b\u0438 \u0440\u0435\u0434\u043e\u0432\u0435 \u043e\u0442 \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u0438), \u043a\u043e\u0438\u0442\u043e AI \u0447\u0435\u0442\u0435 \u043a\u0430\u0442\u043e \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442.<\/li>\n\n\n<li><strong>Prompts<\/strong>: \u043f\u0440\u0435\u0434\u0432\u0430\u0440\u0438\u0442\u0435\u043b\u043d\u043e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u043d\u0438 \u0448\u0430\u0431\u043b\u043e\u043d\u0438, \u043a\u043e\u0438\u0442\u043e \u043d\u0430\u0441\u043e\u0447\u0432\u0430\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0438 workflow-\u0438.<\/li>\n\n<\/ul>\n\n\n\n<p>\u0421 MCP Adapter \u043e\u0431\u0438\u0447\u0430\u0439\u043d\u0438\u044f\u0442 \u0441\u043b\u0443\u0447\u0430\u0439 \u0435 abilities \u0434\u0430 \u0441\u0435 \u0435\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u0430\u0442 \u043a\u0430\u0442\u043e <strong>tools<\/strong>, \u0437\u0430\u0449\u043e\u0442\u043e \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0432\u0430\u0442 \u0438\u0437\u043f\u044a\u043b\u043d\u0438\u043c\u0430 \u043b\u043e\u0433\u0438\u043a\u0430 (fetch, update, diagnostics). \u041d\u043e \u0430\u043a\u043e ability-\u0442\u043e \u0435 read-only \u0438 \u0432\u0440\u044a\u0449\u0430 \u043a\u043e\u043d\u0442\u0435\u043a\u0441\u0442 (\u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0438\u043b\u0438 debug log), \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430 \u0438 \u043a\u0430\u0442\u043e <strong>resource<\/strong>, \u0437\u0430 \u0434\u0430 \u043c\u043e\u0436\u0435 \u043c\u043e\u0434\u0435\u043b\u044a\u0442 \u0434\u0430 \u201e\u043f\u043e\u0433\u044a\u043b\u043d\u0435\u201c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f\u0442\u0430 \u0431\u0435\u0437 \u0430\u043a\u0442\u0438\u0432\u043d\u043e \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u043d\u0435.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 MCP Adapter<\/h2>\n\n\n\n<p>\u041d\u0430\u0439-\u0431\u044a\u0440\u0437\u0438\u044f\u0442 \u0441\u0442\u0430\u0440\u0442 \u0435 \u043a\u0430\u0442\u043e \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u0448 MCP Adapter \u043a\u0430\u0442\u043e \u043f\u043b\u044a\u0433\u0438\u043d \u043e\u0442 GitHub Releases \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0442\u0430:<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/WordPress\/mcp-adapter\/releases\">https:\/\/github.com\/WordPress\/mcp-adapter\/releases<\/a><\/p>\n\n\n\n<p>\u0421\u043b\u0435\u0434 \u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u043d\u0435 \u043f\u043b\u044a\u0433\u0438\u043d\u044a\u0442 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430 <strong>default MCP server<\/strong> \u0441 \u0438\u043c\u0435 <code>mcp-adapter-default-server<\/code> \u0438 \u0442\u0440\u0438 custom abilities:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><code>mcp-adapter\/discover-abilities<\/code><\/li>\n\n\n<li><code>mcp-adapter\/get-ability-info<\/code><\/li>\n\n\n<li><code>mcp-adapter\/execute-ability<\/code><\/li>\n\n<\/ul>\n\n\n\n<p>\u0422\u0435\u0437\u0438 abilities \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0441\u0435 \u0435\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u0430\u0442 \u0438 \u043a\u0430\u0442\u043e MCP tools:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><code>mcp-adapter-discover-abilities<\/code><\/li>\n\n\n<li><code>mcp-adapter-get-ability-info<\/code><\/li>\n\n\n<li><code>mcp-adapter-execute-ability<\/code><\/li>\n\n<\/ul>\n\n\n\n<p>\u0422\u0440\u0438\u0442\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430 \u0441\u0430 \u0437\u0430\u043c\u0438\u0441\u043b\u0435\u043d\u0438 \u043a\u0430\u0442\u043e \u201e\u043d\u0430 \u0441\u043b\u043e\u0435\u0432\u0435\u201c \u0434\u043e\u0441\u0442\u044a\u043f \u0434\u043e Abilities: \u0430\u0433\u0435\u043d\u0442\u044a\u0442 \u043f\u044a\u0440\u0432\u043e <strong>\u043e\u0442\u043a\u0440\u0438\u0432\u0430<\/strong> \u043a\u0430\u043a\u0432\u043e \u0435 \u043d\u0430\u043b\u0438\u0447\u043d\u043e, \u043f\u043e\u0441\u043b\u0435 <strong>\u0432\u0437\u0438\u043c\u0430 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f<\/strong> \u0437\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u0430 ability, \u0438 \u043d\u0430\u043a\u0440\u0430\u044f <strong>\u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430<\/strong> ability-\u0442\u043e.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041a\u0430\u043a \u0434\u0430 \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0448 Abilities \u0432 default MCP server-\u0430<\/h2>\n\n\n\n<p>\u041f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435 abilities \u0441\u0430 \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u0438 \u043f\u0440\u0435\u0437 default MCP server-\u0430 \u0441\u0430\u043c\u043e \u0430\u043a\u043e \u0438\u0437\u0440\u0438\u0447\u043d\u043e \u0433\u0438 \u043c\u0430\u0440\u043a\u0438\u0440\u0430\u0448 \u043a\u0430\u0442\u043e \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u0438 \u0437\u0430 MCP. \u0422\u043e\u0432\u0430 \u0441\u0442\u0430\u0432\u0430 \u0441 \u0444\u043b\u0430\u0433 <code>meta.mcp.public<\/code> \u0432 \u0430\u0440\u0433\u0443\u043c\u0435\u043d\u0442\u0438\u0442\u0435 \u043f\u0440\u0438 <code>wp_register_ability()<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>'meta' =&gt; array(\n    'mcp' =&gt; array(\n        'public' =&gt; true,  \/\/ Required for MCP default server access\n    ),\n)\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#9ECBFF\">'meta'<\/span><span style=\"color:#F97583\"> =><\/span><span style=\"color:#79B8FF\"> array<\/span><span style=\"color:#E1E4E8\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">    'mcp'<\/span><span style=\"color:#F97583\"> =><\/span><span style=\"color:#79B8FF\"> array<\/span><span style=\"color:#E1E4E8\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'public'<\/span><span style=\"color:#F97583\"> =><\/span><span style=\"color:#79B8FF\"> true<\/span><span style=\"color:#E1E4E8\">,  <\/span><span style=\"color:#6A737D\">\/\/ Required for MCP default server access<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    ),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">)<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u0417\u0430 Core abilities (\u0438\u043b\u0438 \u0437\u0430 \u0447\u0443\u0436\u0434\u0438 abilities, \u043a\u043e\u0438\u0442\u043e \u0438\u0441\u043a\u0430\u0448 \u0434\u0430 \u201e\u044a\u043f\u0434\u0435\u0439\u0442\u043d\u0435\u0448\u201c \u043f\u0440\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044f\u0442\u0430 \u0438\u043c) \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0448 \u0444\u0438\u043b\u0442\u044a\u0440\u0430 <code>wp_register_ability_args<\/code> \u0438 \u0434\u0430 \u0434\u043e\u0431\u0430\u0432\u0438\u0448 <code>meta.mcp.public<\/code>.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>&lt;?php\n\/**\n * Plugin Name: Enable core abilities\n * Version: 1.0.0\n *\n * @package enable-core-abilities\n *\/\n\nadd_filter( 'wp_register_ability_args', 'myplugin_enable_core_abilities_mcp_access', 10, 2 );\n\/**\n * Enable MCP access for core abilities.\n *\n * @param array  $args         Ability registration arguments.\n * @param string $ability_name Ability ID.\n * @return array Modified ability registration arguments.\n *\/\nfunction myplugin_enable_core_abilities_mcp_access( array $args, string $ability_name ) {\n\t\/\/ Enable MCP access for the three current core abilities.\n\t$core_abilities = array(\n\t\t'core\/get-site-info',\n\t\t'core\/get-user-info',\n\t\t'core\/get-environment-info',\n\t);\n\tif ( in_array( $ability_name, $core_abilities, true ) ) {\n\t\t$args['meta']['mcp']['public'] = true;\n\t}\n\n\treturn $args;\n}\n\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#F97583\">&#x3C;?<\/span><span style=\"color:#79B8FF\">php<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">\/**<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * Plugin Name: Enable core abilities<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * Version: 1.0.0<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> *<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * <\/span><span style=\"color:#F97583\">@package<\/span><span style=\"color:#6A737D\"> enable-core-abilities<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> *\/<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#B392F0\">add_filter<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#9ECBFF\">'wp_register_ability_args'<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#9ECBFF\">'myplugin_enable_core_abilities_mcp_access'<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#79B8FF\">10<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#79B8FF\">2<\/span><span style=\"color:#E1E4E8\"> );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">\/**<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * Enable MCP access for core abilities.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> *<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * <\/span><span style=\"color:#F97583\">@param<\/span><span style=\"color:#F97583\"> array<\/span><span style=\"color:#6A737D\">  $args         Ability registration arguments.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * <\/span><span style=\"color:#F97583\">@param<\/span><span style=\"color:#F97583\"> string<\/span><span style=\"color:#6A737D\"> $ability_name Ability ID.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * <\/span><span style=\"color:#F97583\">@return<\/span><span style=\"color:#F97583\"> array<\/span><span style=\"color:#6A737D\"> Modified ability registration arguments.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> *\/<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">function<\/span><span style=\"color:#B392F0\"> myplugin_enable_core_abilities_mcp_access<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#F97583\">array<\/span><span style=\"color:#E1E4E8\"> $args, <\/span><span style=\"color:#F97583\">string<\/span><span style=\"color:#E1E4E8\"> $ability_name ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">\t\/\/ Enable MCP access for the three current core abilities.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">\t$core_abilities <\/span><span style=\"color:#F97583\">=<\/span><span style=\"color:#79B8FF\"> array<\/span><span style=\"color:#E1E4E8\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">\t\t'core\/get-site-info'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">\t\t'core\/get-user-info'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">\t\t'core\/get-environment-info'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">\t);<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">\tif<\/span><span style=\"color:#E1E4E8\"> ( <\/span><span style=\"color:#79B8FF\">in_array<\/span><span style=\"color:#E1E4E8\">( $ability_name, $core_abilities, <\/span><span style=\"color:#79B8FF\">true<\/span><span style=\"color:#E1E4E8\"> ) ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">\t\t$args[<\/span><span style=\"color:#9ECBFF\">'meta'<\/span><span style=\"color:#E1E4E8\">][<\/span><span style=\"color:#9ECBFF\">'mcp'<\/span><span style=\"color:#E1E4E8\">][<\/span><span style=\"color:#9ECBFF\">'public'<\/span><span style=\"color:#E1E4E8\">] <\/span><span style=\"color:#F97583\">=<\/span><span style=\"color:#79B8FF\"> true<\/span><span style=\"color:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">\t}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">\treturn<\/span><span style=\"color:#E1E4E8\"> $args;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u0421\u043b\u0435\u0434 \u0442\u043e\u0432\u0430 \u0432\u0435\u0447\u0435 \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u0441\u0432\u044a\u0440\u0436\u0435\u0448 AI \u043a\u043b\u0438\u0435\u043d\u0442 \u043a\u044a\u043c \u0441\u0430\u0439\u0442\u0430 \u0441\u0438 \u043f\u0440\u0435\u0437 MCP Adapter \u0438 \u0434\u0430 \u0438\u0437\u0432\u0438\u043a\u0432\u0430\u0448 core abilities \u043f\u0440\u0435\u0437 MCP tools \u043d\u0430 default server-\u0430.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0421\u0432\u044a\u0440\u0437\u0432\u0430\u043d\u0435 \u043d\u0430 AI \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043a\u044a\u043c WordPress MCP server<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Transport \u043c\u0435\u0442\u043e\u0434\u0438: STDIO \u0438 HTTP<\/h3>\n\n\n\n<p>\u0417\u0430 \u0432\u0440\u044a\u0437\u043a\u0430 \u043a\u044a\u043c MCP server \u0438\u043c\u0430 \u0434\u0432\u0430 transport \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430: <strong>STDIO<\/strong> \u0438 <strong>HTTP<\/strong>. \u0418\u0437\u0431\u043e\u0440\u044a\u0442 \u043e\u0431\u0438\u043a\u043d\u043e\u0432\u0435\u043d\u043e \u0437\u0430\u0432\u0438\u0441\u0438 \u043e\u0442 \u0442\u043e\u0432\u0430 \u043a\u044a\u0434\u0435 \u0442\u0438 \u0435 WordPress \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f\u0442\u0430.<\/p>\n\n\n\n<p>\u0417\u0430 \u043b\u043e\u043a\u0430\u043b\u043d\u0430 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u043d\u0430\u0439-\u0434\u0438\u0440\u0435\u043a\u0442\u043d\u0438\u044f\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0435 <strong>STDIO<\/strong> \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442. MCP Adapter \u0433\u043e \u043f\u043e\u0434\u0434\u044a\u0440\u0436\u0430 \u0447\u0440\u0435\u0437 <strong>WP-CLI<\/strong> (\u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0438\u044f \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442 \u043d\u0430 WordPress), \u0442\u0430\u043a\u0430 \u0447\u0435 \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u0438\u043c\u0430\u0448 WP-CLI \u0438\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u043d \u043b\u043e\u043a\u0430\u043b\u043d\u043e.<\/p>\n\n\n\n<p>\u041c\u0438\u043d\u0438\u043c\u0430\u043b\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0437\u0430 STDIO \u0438\u0437\u0433\u043b\u0435\u0436\u0434\u0430 \u0442\u0430\u043a\u0430:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>&quot;wordpress-mcp-server&quot;: {\n  &quot;command&quot;: &quot;wp&quot;,\n  &quot;args&quot;: [\n    &quot;--path=\/path\/to\/your\/wordpress\/installation&quot;,\n    &quot;mcp-adapter&quot;,\n    &quot;serve&quot;,\n    &quot;--server=mcp-adapter-default-server&quot;,\n    &quot;--user={admin_user}&quot;\n  ]\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#9ECBFF\">\"wordpress-mcp-server\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"command\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"wp\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"args\"<\/span><span style=\"color:#E1E4E8\">: [<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">    \"--path=\/path\/to\/your\/wordpress\/installation\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">    \"mcp-adapter\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">    \"serve\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">    \"--server=mcp-adapter-default-server\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">    \"--user={admin_user}\"<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  ]<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u0414\u0435\u0442\u0430\u0439\u043b\u0438\u0442\u0435 \u0442\u0443\u043a \u0441\u0430 \u0432\u0430\u0436\u043d\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>\u0418\u043c\u0435\u0442\u043e \u043d\u0430 server-\u0430 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430 \u0435 <code>wordpress-mcp-server<\/code> \u2013 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0435 \u043a\u0430\u043a\u0432\u043e\u0442\u043e \u0440\u0435\u0448\u0438\u0448.<\/li>\n\n\n<li><code>command<\/code> \u0435 <code>wp<\/code> (WP-CLI).<\/li>\n\n\n<li><code>args<\/code> \u0432\u043a\u043b\u044e\u0447\u0432\u0430:<\/li>\n\n\n<li><code>--path<\/code> \u043a\u044a\u043c WordPress \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f\u0442\u0430.<\/li>\n\n\n<li><code>mcp-adapter serve<\/code> \u0437\u0430 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043d\u0430 MCP Adapter server.<\/li>\n\n\n<li><code>--server<\/code> \u0437\u0430 \u0438\u0437\u0431\u043e\u0440 \u043d\u0430 MCP server (\u0442\u0443\u043a default).<\/li>\n\n\n<li><code>--user<\/code> \u2013 WordPress \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u044f\u0442, \u043a\u0430\u0442\u043e \u043a\u043e\u0439\u0442\u043e \u0449\u0435 \u0441\u0435 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0438\u0440\u0430 (\u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e admin).<\/li>\n\n<\/ul>\n\n\n\n<p>\u0417\u0430 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u0438 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u0438 (\u0438\u043b\u0438 \u0430\u043a\u043e \u043d\u0435 \u0438\u0441\u043a\u0430\u0448 STDIO) \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u043c\u0438\u043d\u0435\u0448 \u043f\u043e <strong>HTTP<\/strong> \u0447\u0440\u0435\u0437 remote proxy \u043f\u0430\u043a\u0435\u0442\u0430 <a href=\"https:\/\/www.npmjs.com\/package\/@automattic\/mcp-wordpress-remote\"><code>@automattic\/mcp-wordpress-remote<\/code><\/a>. \u0422\u043e\u0432\u0430 \u0438\u0437\u0438\u0441\u043a\u0432\u0430 <strong>Node.js<\/strong> \u0438 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f \u043f\u0440\u0435\u0437 <strong>WordPress application passwords<\/strong> \u0438\u043b\u0438 custom OAuth \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f.<\/p>\n\n\n\n<p>\u041c\u0438\u043d\u0438\u043c\u0430\u043b\u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0437\u0430 HTTP \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>&quot;wordpress-mcp-server&quot;: {\n  &quot;command&quot;: &quot;npx&quot;,\n  &quot;args&quot;: [&quot;-y&quot;, &quot;@automattic\/mcp-wordpress-remote@latest&quot;],\n  &quot;env&quot;: {\n    &quot;WP_API_URL&quot;: &quot;https:\/\/yoursite.example\/wp-json\/mcp\/mcp-adapter-default-server&quot;,\n    &quot;WP_API_USERNAME&quot;: &quot;{admin_user}&quot;,\n    &quot;WP_API_PASSWORD&quot;: &quot;{application-password}&quot;\n  }\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#9ECBFF\">\"wordpress-mcp-server\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"command\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"npx\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"args\"<\/span><span style=\"color:#E1E4E8\">: [<\/span><span style=\"color:#9ECBFF\">\"-y\"<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#9ECBFF\">\"@automattic\/mcp-wordpress-remote@latest\"<\/span><span style=\"color:#E1E4E8\">],<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"env\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">    \"WP_API_URL\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"https:\/\/yoursite.example\/wp-json\/mcp\/mcp-adapter-default-server\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">    \"WP_API_USERNAME\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"{admin_user}\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">    \"WP_API_PASSWORD\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"{application-password}\"<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u041a\u043b\u044e\u0447\u043e\u0432\u0438\u0442\u0435 \u0435\u043b\u0435\u043c\u0435\u043d\u0442\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><code>command<\/code> \u0435 <code>npx<\/code> (\u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430 Node.js packages).<\/li>\n\n\n<li><code>-y<\/code> \u043f\u0440\u0438\u0435\u043c\u0430 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u043d\u043e \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 \u043f\u0430\u043a\u0435\u0442\u0430.<\/li>\n\n\n<li><code>WP_API_URL<\/code> \u0441\u043e\u0447\u0438 MCP endpoint-\u0430 \u043d\u0430 \u0441\u0430\u0439\u0442\u0430.<\/li>\n\n\n<li><code>WP_API_USERNAME<\/code> \u0435 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u044f\u0442.<\/li>\n\n\n<li><code>WP_API_PASSWORD<\/code> \u0435 application password \u0437\u0430 \u0442\u043e\u0437\u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b.<\/li>\n\n<\/ul>\n\n\n\n<p>\u0410\u043a\u043e \u043f\u043e\u043b\u0437\u0432\u0430\u0448 HTTP remote proxy \u0438 \u0441\u0435 \u0441\u0432\u044a\u0440\u0437\u0432\u0430\u0448 \u043a\u044a\u043c \u043b\u043e\u043a\u0430\u043b\u043d\u0430 \u0438\u043d\u0441\u0442\u0430\u043b\u0430\u0446\u0438\u044f, \u043f\u0430\u043a\u0435\u0442\u044a\u0442 \u0438\u043c\u0430 troubleshooting \u043d\u0430\u0441\u043e\u043a\u0438 (\u0447\u0435\u0441\u0442\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0438\u0442\u0435 \u0441\u0430 \u043e\u0442 \u043c\u043d\u043e\u0436\u0435\u0441\u0442\u0432\u043e Node \u0432\u0435\u0440\u0441\u0438\u0438 \u0438\u043b\u0438 \u043b\u043e\u043a\u0430\u043b\u043d\u0438 SSL \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0438): <a href=\"https:\/\/github.com\/Automattic\/mcp-wordpress-remote\/blob\/trunk\/Docs\/troubleshooting.md\">https:\/\/github.com\/Automattic\/mcp-wordpress-remote\/blob\/trunk\/Docs\/troubleshooting.md<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043f\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/h3>\n\n\n\n<p>\u041d\u0430\u0439-\u0447\u0435\u0441\u0442\u0438\u0442\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0438 \u0432 dev \u0441\u0440\u0435\u0434\u0430 \u0432 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0441\u0430 Claude Desktop, Cursor, Claude Code \u0438 VS Code. \u041f\u043e-\u0434\u043e\u043b\u0443 \u0441\u0430 \u043c\u0435\u0441\u0442\u0430\u0442\u0430, \u043a\u044a\u0434\u0435\u0442\u043e \u0441\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u0432\u0430 MCP server.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Claude Desktop<\/h4>\n\n\n\n<p>\u0412 Claude Desktop MCP server-\u0438\u0442\u0435 \u0441\u0435 \u0434\u043e\u0431\u0430\u0432\u044f\u0442 \u043e\u0442 <strong>Developer<\/strong> \u0442\u0430\u0431\u0430: <em>Claude \u2192 Settings \u2192 Developer<\/em>. \u0412 \u0441\u0435\u043a\u0446\u0438\u044f\u0442\u0430 Local MCP servers \u0438\u0437\u0431\u0435\u0440\u0438 <strong>Edit config<\/strong>. \u0422\u043e\u0432\u0430 \u0449\u0435 \u043e\u0442\u0432\u043e\u0440\u0438 <code>claude_desktop_config.json<\/code>, \u043a\u044a\u0434\u0435\u0442\u043e \u0441\u0435 \u0434\u043e\u0431\u0430\u0432\u044f\u0442 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432 <code>mcpServers<\/code> \u043e\u0431\u0435\u043a\u0442.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1711\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-01-claude-developer-settings-scaled.png\" alt=\"Claude Desktop: \u043f\u0430\u043d\u0435\u043b\u044a\u0442 Developer settings\" class=\"wp-image-216\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-01-claude-developer-settings-scaled.png 2560w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-01-claude-developer-settings-300x201.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-01-claude-developer-settings-1024x684.png 1024w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-01-claude-developer-settings-768x513.png 768w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-01-claude-developer-settings-1536x1027.png 1536w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-01-claude-developer-settings-2048x1369.png 2048w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-01-claude-developer-settings-400x267.png 400w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><figcaption class=\"wp-element-caption\"><em>Forr\u00e1s: WordPress Developer Blog<\/em><\/figcaption><\/figure>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>{\n  &quot;mcpServers&quot;: {\n  }\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"mcpServers\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430 STDIO \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>{\n  &quot;mcpServers&quot;: {\n    &quot;wordpress-mcp-server&quot;: {\n      &quot;command&quot;: &quot;wp&quot;,\n      &quot;args&quot;: [\n        &quot;--path=\/Users\/jonathanbossenger\/Studio\/wordpress-mcp&quot;,\n        &quot;mcp-adapter&quot;,\n        &quot;serve&quot;,\n        &quot;--server=mcp-adapter-default-server&quot;,\n        &quot;--user=admin&quot;\n      ]\n    }\n  }\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"mcpServers\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">    \"wordpress-mcp-server\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"command\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"wp\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"args\"<\/span><span style=\"color:#E1E4E8\">: [<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--path=\/Users\/jonathanbossenger\/Studio\/wordpress-mcp\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"mcp-adapter\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"serve\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--server=mcp-adapter-default-server\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--user=admin\"<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">      ]<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430 HTTP \u0442\u0440\u0430\u043d\u0441\u043f\u043e\u0440\u0442:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>{\n  &quot;mcpServers&quot;: {\n    &quot;wordpress-mcp-server&quot;: {\n      &quot;command&quot;: &quot;npx&quot;,\n      &quot;args&quot;: [&quot;-y&quot;, &quot;@automattic\/mcp-wordpress-remote@latest&quot;],\n      &quot;env&quot;: {\n        &quot;WP_API_URL&quot;: &quot;http:\/\/localhost:8885\/wp-json\/mcp\/mcp-adapter-default-server&quot;,\n        &quot;WP_API_USERNAME&quot;: &quot;admin&quot;,\n        &quot;WP_API_PASSWORD&quot;: &quot;2SEB qW5j D7CW fpsh pbmN RGva&quot;\n      }\n    }\n  }\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"mcpServers\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">    \"wordpress-mcp-server\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"command\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"npx\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"args\"<\/span><span style=\"color:#E1E4E8\">: [<\/span><span style=\"color:#9ECBFF\">\"-y\"<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#9ECBFF\">\"@automattic\/mcp-wordpress-remote@latest\"<\/span><span style=\"color:#E1E4E8\">],<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"env\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        \"WP_API_URL\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"http:\/\/localhost:8885\/wp-json\/mcp\/mcp-adapter-default-server\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        \"WP_API_USERNAME\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"admin\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        \"WP_API_PASSWORD\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"2SEB qW5j D7CW fpsh pbmN RGva\"<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">      }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u0412\u0430\u0436\u043d\u043e: \u0441\u043b\u0435\u0434 \u043f\u0440\u043e\u043c\u044f\u043d\u0430 \u043d\u0430 \u0444\u0430\u0439\u043b\u0430 \u0442\u0440\u044f\u0431\u0432\u0430 <strong>\u0440\u0435\u0441\u0442\u0430\u0440\u0442 \u043d\u0430 Claude Desktop<\/strong>, \u0437\u0430\u0449\u043e\u0442\u043e \u0447\u0435\u0442\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u043e\u0432\u0435\u0442\u0435 \u0441\u0430\u043c\u043e \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1711\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-02-claude-mcp-server-scaled.png\" alt=\"Claude Desktop: \u0441\u043f\u0438\u0441\u044a\u043a \u0441 Local MCP servers, \u0434\u043e\u0431\u0430\u0432\u0435\u043d WordPress MCP server \u0441\u044a\u0441 \u0441\u0442\u0430\u0442\u0443\u0441 running\" class=\"wp-image-217\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-02-claude-mcp-server-scaled.png 2560w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-02-claude-mcp-server-300x201.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-02-claude-mcp-server-1024x684.png 1024w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-02-claude-mcp-server-768x513.png 768w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-02-claude-mcp-server-1536x1027.png 1536w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-02-claude-mcp-server-2048x1369.png 2048w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-02-claude-mcp-server-400x267.png 400w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><figcaption class=\"wp-element-caption\"><em>Forr\u00e1s: WordPress Developer Blog<\/em><\/figcaption><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Cursor<\/h4>\n\n\n\n<p>\u0412 Cursor \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0442\u0430 \u0435 \u043e\u0442 <em>Cursor \u2192 Settings \u2192 Cursor Settings<\/em>, \u0441\u0435\u043a\u0446\u0438\u044f <strong>Tools and MCP<\/strong>. \u041d\u0430\u0442\u0438\u0441\u043d\u0438 <strong>Add Custom MCP<\/strong> \u2013 \u0442\u043e\u0432\u0430 \u043e\u0442\u0432\u0430\u0440\u044f <code>mcp.json<\/code>. \u0424\u043e\u0440\u043c\u0430\u0442\u044a\u0442 \u0435 \u0441\u044a\u0449\u0438\u044f\u0442 \u043a\u0430\u0442\u043e \u043f\u0440\u0438 Claude Desktop. \u0421\u043b\u0435\u0434 \u0437\u0430\u043f\u0438\u0441 Cursor \u0449\u0435 \u043f\u043e\u043a\u0430\u0436\u0435 server-\u0430 \u0432 Tools and MCP \u0438 \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u0433\u043e \u0432\u043a\u043b\u044e\u0447\u0438\u0448 \u0437\u0430 coding sessions.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1603\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-04-cursor-scaled.png\" alt=\"Cursor: Tools &#038; MCP settings \u043f\u0430\u043d\u0435\u043b\" class=\"wp-image-218\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-04-cursor-scaled.png 2560w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-04-cursor-300x188.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-04-cursor-1024x641.png 1024w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-04-cursor-768x481.png 768w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-04-cursor-1536x962.png 1536w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-04-cursor-2048x1283.png 2048w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-04-cursor-400x251.png 400w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><figcaption class=\"wp-element-caption\"><em>Forr\u00e1s: WordPress Developer Blog<\/em><\/figcaption><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1603\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-05-cursor-mcp-scaled.png\" alt=\"Cursor: Tools &#038; MCP settings \u043f\u0430\u043d\u0435\u043b \u0441 \u0434\u043e\u0431\u0430\u0432\u0435\u043d WordPress MCP Server\" class=\"wp-image-219\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-05-cursor-mcp-scaled.png 2560w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-05-cursor-mcp-300x188.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-05-cursor-mcp-1024x641.png 1024w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-05-cursor-mcp-768x481.png 768w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-05-cursor-mcp-1536x962.png 1536w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-05-cursor-mcp-2048x1283.png 2048w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-05-cursor-mcp-400x251.png 400w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><figcaption class=\"wp-element-caption\"><em>Forr\u00e1s: WordPress Developer Blog<\/em><\/figcaption><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Claude Code<\/h4>\n\n\n\n<p>\u0412 Claude Code \u0438\u043c\u0430\u0448 \u0434\u0432\u0430 \u043f\u044a\u0442\u044f:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>\u0414\u043e\u0431\u0430\u0432\u044f\u0448 <code>mcpServers<\/code> \u0441 \u043d\u0443\u0436\u043d\u0438\u0442\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0432 <code>.claude.json<\/code> \u0432 home \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u0442\u0430 (\u0433\u043b\u043e\u0431\u0430\u043b\u043d\u043e \u0437\u0430 \u0432\u0441\u0438\u0447\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438).<\/li>\n\n\n<li>\u0418\u043b\u0438 \u0441\u044a\u0437\u0434\u0430\u0432\u0430\u0448 <code>.mcp.json<\/code> \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u0442\u0430 \u043d\u0430 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 (\u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 MCP server-\u0438 \u0437\u0430 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0438).<\/li>\n\n<\/ul>\n\n\n\n<p>\u0418 \u0432 \u0434\u0432\u0430\u0442\u0430 \u0441\u043b\u0443\u0447\u0430\u044f \u0444\u043e\u0440\u043c\u0430\u0442\u044a\u0442 \u043d\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430 \u0435 \u0441\u044a\u0449\u0438\u044f\u0442 \u043a\u0430\u0442\u043e \u043f\u0440\u0438 Cursor\/Claude Desktop.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">VS Code<\/h4>\n\n\n\n<p>\u0412 VS Code \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430 JSON \u0444\u0430\u0439\u043b (\u043e\u0431\u0438\u0447\u0430\u0439\u043d\u043e <code>mcp.json<\/code>) \u0432 <code>.vscode<\/code> \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u0442\u0430 \u043d\u0430 workspace-\u0430. \u0420\u0430\u0437\u043b\u0438\u043a\u0430\u0442\u0430 \u0435, \u0447\u0435 server-\u0438\u0442\u0435 \u0441\u0435 \u0434\u0435\u0444\u0438\u043d\u0438\u0440\u0430\u0442 \u0432 <code>servers<\/code> \u043e\u0431\u0435\u043a\u0442 (\u043d\u0435 <code>mcpServers<\/code>). \u041e\u0441\u0442\u0430\u043d\u0430\u043b\u043e\u0442\u043e \u0435 \u0438\u0434\u0435\u043d\u0442\u0438\u0447\u043d\u043e.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>{\n  &quot;servers&quot;: {\n    \/\/ MCP server definitions go here\n  }\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"servers\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">    \/\/ MCP server definitions go here<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u0421\u043b\u0435\u0434 \u043a\u0430\u0442\u043e \u0444\u0430\u0439\u043b\u044a\u0442 \u0435 \u043d\u0430\u043b\u0438\u0447\u0435\u043d, VS Code \u043f\u043e\u043a\u0430\u0437\u0432\u0430 MCP \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u043d\u0430 \u043b\u0435\u043d\u0442\u0430 \u0437\u0430 start\/stop\/restart \u043d\u0430 server-\u0430. \u041f\u0440\u0438 \u0443\u0441\u043f\u0435\u0448\u0435\u043d \u0441\u0442\u0430\u0440\u0442 \u0432\u0438\u0436\u0434\u0430\u0448 \u0438 \u043a\u043e\u043b\u043a\u043e tools \u0441\u0430 \u043d\u0430\u043b\u0438\u0447\u043d\u0438.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"2560\" height=\"1631\" src=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-06-vscode-scaled.png\" alt=\"VS Code: mcp.json \u0441 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0430 MCP server \u0437\u0430 WordPress\" class=\"wp-image-220\" srcset=\"https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-06-vscode-scaled.png 2560w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-06-vscode-300x191.png 300w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-06-vscode-1024x652.png 1024w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-06-vscode-768x489.png 768w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-06-vscode-1536x979.png 1536w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-06-vscode-2048x1305.png 2048w, https:\/\/helloblog.io\/app\/uploads\/sites\/21\/2026\/02\/mcp-06-vscode-400x255.png 400w\" sizes=\"auto, (max-width: 2560px) 100vw, 2560px\" \/><figcaption class=\"wp-element-caption\"><em>Forr\u00e1s: WordPress Developer Blog<\/em><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">\u041a\u0430\u043a \u0441\u0435 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 MCP tools (\u0440\u0435\u0430\u043b\u0435\u043d flow)<\/h2>\n\n\n\n<p>\u0421\u043b\u0435\u0434 \u043a\u0430\u0442\u043e MCP server-\u044a\u0442 \u0435 \u0441\u0432\u044a\u0440\u0437\u0430\u043d \u043a\u044a\u043c AI \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e, \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0448 tools, \u0435\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u0430\u043d\u0438 \u043e\u0442 MCP Adapter. \u0422\u0438\u043f\u0438\u0447\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440: \u0432 Claude Desktop \u0437\u0430\u0434\u0430\u0432\u0430\u0448 \u0437\u0430\u0434\u0430\u0447\u0430 \u043e\u0442 \u0441\u043e\u0440\u0442\u0430 \u043d\u0430 \u201e\u0432\u0437\u0435\u043c\u0438 site info \u043e\u0442 WordPress\u201c.<\/p>\n\n\n\n<p>\u041a\u0430\u043a\u0432\u043e \u0441\u0435 \u0441\u043b\u0443\u0447\u0432\u0430 \u043f\u043e\u0434 \u043a\u0430\u043f\u0430\u043a\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>\u041a\u043b\u0438\u0435\u043d\u0442\u044a\u0442 \u0432\u0438\u0436\u0434\u0430, \u0447\u0435 \u0438\u043c\u0430 \u043d\u0430\u043b\u0438\u0447\u0435\u043d MCP server.<\/li>\n\n\n<li>\u0418\u0437\u0432\u0438\u043a\u0432\u0430 <code>mcp-adapter-discover-abilities<\/code>, \u0437\u0430 \u0434\u0430 \u0440\u0430\u0437\u0431\u0435\u0440\u0435 \u043a\u043e\u0438 abilities \u0441\u0430 \u043d\u0430\u043b\u0438\u0447\u043d\u0438.<\/li>\n\n\n<li>\u0420\u0435\u0448\u0430\u0432\u0430, \u0447\u0435 <code>core\/get-site-info<\/code> \u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u043d\u0430\u0442\u0430 ability \u0437\u0430 \u0437\u0430\u0434\u0430\u0447\u0430\u0442\u0430.<\/li>\n\n\n<li>\u0418\u0437\u0432\u0438\u043a\u0432\u0430 <code>mcp-adapter-execute-ability<\/code>, \u043a\u0430\u0442\u043e \u043f\u043e\u0434\u0430\u0432\u0430 \u0438\u043c\u0435\u0442\u043e <code>core\/get-site-info<\/code>.<\/li>\n\n\n<li>\u0412\u0440\u044a\u0449\u0430 \u0441\u0435 payload \u0441\u044a\u0441 site info \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u0444\u043e\u0440\u043c\u0430\u0442\u0438\u0440\u0430 \u043e\u0442\u0433\u043e\u0432\u043e\u0440\u0430.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Custom MCP server \u0437\u0430 \u0442\u0432\u043e\u044f \u043f\u043b\u044a\u0433\u0438\u043d (\u043a\u043e\u0433\u0430\u0442\u043e default \u043d\u0435 \u0442\u0438 \u0441\u0442\u0438\u0433\u0430)<\/h2>\n\n\n\n<p>Default server-\u044a\u0442 \u043f\u043e\u043a\u0440\u0438\u0432\u0430 \u043f\u043e\u0432\u0435\u0447\u0435\u0442\u043e \u0441\u043b\u0443\u0447\u0430\u0438, \u043d\u043e custom MCP server \u0437\u0430 \u043f\u043b\u044a\u0433\u0438\u043d \u0442\u0438 \u0434\u0430\u0432\u0430 \u043f\u043e-\u0444\u0438\u043d \u043a\u043e\u043d\u0442\u0440\u043e\u043b \u043a\u0430\u043a\u0432\u0438 abilities \u0434\u0430 \u0441\u0435 \u0435\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u0430\u0442 \u043a\u0430\u0442\u043e MCP tools, \u043a\u0430\u043a\u0442\u043e \u0438 \u043a\u0430\u043a \u0434\u0430 \u0441\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0438\u0440\u0430\u0442 transport, error handling \u0438 observability.<\/p>\n\n\n\n<p>\u0417\u0430 \u0442\u043e\u0432\u0430 \u0442\u0438 \u0442\u0440\u044f\u0431\u0432\u0430 MCP Adapter \u043a\u0430\u0442\u043e dependency \u043f\u0440\u0435\u0437 Composer.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1) \u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u0439 \u043f\u0430\u043a\u0435\u0442\u0430<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>composer require wordpress\/mcp-adapter\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#B392F0\">composer<\/span><span style=\"color:#9ECBFF\"> require<\/span><span style=\"color:#9ECBFF\"> wordpress\/mcp-adapter<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">2) \u0417\u0430\u0440\u0435\u0434\u0438 autoloader-\u0430<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>if ( file_exists( __DIR__ . '\/vendor\/autoload.php' ) ) {\n    require_once __DIR__ . '\/vendor\/autoload.php';\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#F97583\">if<\/span><span style=\"color:#E1E4E8\"> ( <\/span><span style=\"color:#79B8FF\">file_exists<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#79B8FF\">__DIR__<\/span><span style=\"color:#F97583\"> .<\/span><span style=\"color:#9ECBFF\"> '\/vendor\/autoload.php'<\/span><span style=\"color:#E1E4E8\"> ) ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">    require_once<\/span><span style=\"color:#79B8FF\"> __DIR__<\/span><span style=\"color:#F97583\"> .<\/span><span style=\"color:#9ECBFF\"> '\/vendor\/autoload.php'<\/span><span style=\"color:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u041a\u043e\u0433\u0430\u0442\u043e \u0438\u043c\u0430 \u0448\u0430\u043d\u0441 \u043d\u044f\u043a\u043e\u043b\u043a\u043e \u043f\u043b\u044a\u0433\u0438\u043d\u0430 \u0434\u0430 \u0437\u0430\u0432\u0438\u0441\u044f\u0442 \u043e\u0442 MCP Adapter \u0438\u043b\u0438 Abilities API, \u043f\u0440\u0435\u043f\u043e\u0440\u044a\u0447\u0438\u0442\u0435\u043b\u043d\u043e \u0435 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0448 <strong>Jetpack Autoloader<\/strong>, \u0437\u0430 \u0434\u0430 \u0438\u0437\u0431\u0435\u0433\u043d\u0435\u0448 version conflicts: <a href=\"https:\/\/github.com\/WordPress\/mcp-adapter\/blob\/trunk\/docs\/getting-started\/installation.md#using-jetpack-autoloader-highly-recommended\">https:\/\/github.com\/WordPress\/mcp-adapter\/blob\/trunk\/docs\/getting-started\/installation.md#using-jetpack-autoloader-highly-recommended<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3) \u0418\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u0439 MCP Adapter<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>if ( ! class_exists( WPMCPCoreMcpAdapter::class ) ) {\n    \/\/ check if the MCP Adapter class is available, if not show some sort of error or admin notice\n    return;\n}\n\n\/\/ Initialize MCP Adapter and its default server.\nWPMCPCoreMcpAdapter::instance();\n\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#F97583\">if<\/span><span style=\"color:#E1E4E8\"> ( <\/span><span style=\"color:#F97583\">!<\/span><span style=\"color:#79B8FF\"> class_exists<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#79B8FF\">WPMCPCoreMcpAdapter<\/span><span style=\"color:#F97583\">::class<\/span><span style=\"color:#E1E4E8\"> ) ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">    \/\/ check if the MCP Adapter class is available, if not show some sort of error or admin notice<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">    return<\/span><span style=\"color:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">\/\/ Initialize MCP Adapter and its default server.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">WPMCPCoreMcpAdapter<\/span><span style=\"color:#F97583\">::<\/span><span style=\"color:#B392F0\">instance<\/span><span style=\"color:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">4) \u0421\u044a\u0437\u0434\u0430\u0439 custom server \u043f\u0440\u0435\u0437 <code>mcp_adapter_init<\/code><\/h3>\n\n\n\n<p>Hook-\u0432\u0430\u0448 \u0441\u0435 \u0432 <code>mcp_adapter_init<\/code>. Callback-\u044a\u0442 \u043f\u043e\u043b\u0443\u0447\u0430\u0432\u0430 \u0438\u043d\u0441\u0442\u0430\u043d\u0446\u0438\u044f \u043d\u0430 <code>McpAdapter<\/code>, \u0430 \u0442\u0438 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0448 <code>create_server()<\/code> \u0437\u0430 \u0434\u0435\u0444\u0438\u043d\u0438\u0446\u0438\u044f\u0442\u0430.<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>add_action( 'mcp_adapter_init', 'myplugin_create_custom_mcp_server' );\nfunction myplugin_create_custom_mcp_server( $adapter ) {\n    $adapter = WPMCPCoreMcpAdapter::instance();\n    $adapter-&gt;create_server(\n        'custom-mcp-server', \/\/ Unique server identifier.\n        'custom-mcp-server', \/\/ REST API namespace.\n        'mcp',               \/\/ REST API route.\n        'Custom MCP Server', \/\/ Server name.\n        'Custom MCP Server', \/\/ Server description.\n        'v1.0.0',            \/\/ Server version.\n        array(               \/\/ Transport methods.\n            WPMCPTransportHttpTransport::class,  \/\/ Recommended: MCP 2025-06-18 compliant.\n        ),\n        WPMCPInfrastructureErrorHandlingErrorLogMcpErrorHandler::class, \/\/ Error handler.\n        WPMCPInfrastructureObservabilityNullMcpObservabilityHandler::class, \/\/ Observability handler.\n        array( 'namespace\/ability-name' ), \/\/ Abilities to expose as tools\n        array(),                           \/\/ Resources (optional).\n        array(),                           \/\/ Prompts (optional).\n    );\n}\n\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#B392F0\">add_action<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#9ECBFF\">'mcp_adapter_init'<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#9ECBFF\">'myplugin_create_custom_mcp_server'<\/span><span style=\"color:#E1E4E8\"> );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">function<\/span><span style=\"color:#B392F0\"> myplugin_create_custom_mcp_server<\/span><span style=\"color:#E1E4E8\">( $adapter ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    $adapter <\/span><span style=\"color:#F97583\">=<\/span><span style=\"color:#79B8FF\"> WPMCPCoreMcpAdapter<\/span><span style=\"color:#F97583\">::<\/span><span style=\"color:#B392F0\">instance<\/span><span style=\"color:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    $adapter<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#B392F0\">create_server<\/span><span style=\"color:#E1E4E8\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'custom-mcp-server'<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#6A737D\">\/\/ Unique server identifier.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'custom-mcp-server'<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#6A737D\">\/\/ REST API namespace.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'mcp'<\/span><span style=\"color:#E1E4E8\">,               <\/span><span style=\"color:#6A737D\">\/\/ REST API route.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'Custom MCP Server'<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#6A737D\">\/\/ Server name.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'Custom MCP Server'<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#6A737D\">\/\/ Server description.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'v1.0.0'<\/span><span style=\"color:#E1E4E8\">,            <\/span><span style=\"color:#6A737D\">\/\/ Server version.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        array<\/span><span style=\"color:#E1E4E8\">(               <\/span><span style=\"color:#6A737D\">\/\/ Transport methods.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">            WPMCPTransportHttpTransport<\/span><span style=\"color:#F97583\">::class<\/span><span style=\"color:#E1E4E8\">,  <\/span><span style=\"color:#6A737D\">\/\/ Recommended: MCP 2025-06-18 compliant.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">        ),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        WPMCPInfrastructureErrorHandlingErrorLogMcpErrorHandler<\/span><span style=\"color:#F97583\">::class<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#6A737D\">\/\/ Error handler.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        WPMCPInfrastructureObservabilityNullMcpObservabilityHandler<\/span><span style=\"color:#F97583\">::class<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#6A737D\">\/\/ Observability handler.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        array<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#9ECBFF\">'namespace\/ability-name'<\/span><span style=\"color:#E1E4E8\"> ), <\/span><span style=\"color:#6A737D\">\/\/ Abilities to expose as tools<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        array<\/span><span style=\"color:#E1E4E8\">(),                           <\/span><span style=\"color:#6A737D\">\/\/ Resources (optional).<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        array<\/span><span style=\"color:#E1E4E8\">(),                           <\/span><span style=\"color:#6A737D\">\/\/ Prompts (optional).<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0438\u0442\u0435, \u043a\u043e\u0438\u0442\u043e \u0440\u0435\u0430\u043b\u043d\u043e \u0449\u0435 \u043f\u0438\u043f\u0430\u0448 \u043d\u0430\u0439-\u0447\u0435\u0441\u0442\u043e:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>(1) \u0423\u043d\u0438\u043a\u0430\u043b\u0435\u043d \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u043d\u0430 server-\u0430 \u2013 \u0442\u043e\u0432\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0448 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u043d\u0435 \u043f\u0440\u0435\u0437 WP-CLI.<\/li>\n\n\n<li>(2) \u0438 (3) REST API namespace \u0438 route \u0437\u0430 MCP server-\u0430.<\/li>\n\n\n<li>(4) \u0438 (5) \u0438\u043c\u0435 \u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u2013 \u0442\u043e\u0432\u0430 \u0441\u0435 \u0432\u0438\u0436\u0434\u0430 \u0432 AI \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0442\u0430.<\/li>\n\n\n<li>(6) \u0432\u0435\u0440\u0441\u0438\u044f \u043d\u0430 server-\u0430.<\/li>\n\n\n<li>(10) \u0441\u043f\u0438\u0441\u044a\u043a \u0441 ability \u0438\u043c\u0435\u043d\u0430, \u043a\u043e\u0438\u0442\u043e \u0438\u0441\u043a\u0430\u0448 \u0434\u0430 \u0435\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u0430\u0448 \u043a\u0430\u0442\u043e MCP tools (\u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u043f\u043e\u0434\u0430\u0434\u0435\u0448 \u043f\u043e\u0432\u0435\u0447\u0435 \u043e\u0442 \u0435\u0434\u043d\u043e).<\/li>\n\n\n<li>\u041e\u0441\u0442\u0430\u043d\u0430\u043b\u043e\u0442\u043e \u0441\u0430 transport methods, error handling \u0438 observability handlers \u2013 \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u043f\u043e\u043b\u0437\u0432\u0430\u0448 \u0433\u043e\u0442\u043e\u0432\u0438\u0442\u0435 \u043e\u0442 \u043f\u0430\u043a\u0435\u0442\u0430 \u0438\u043b\u0438 \u0434\u0430 \u043d\u0430\u043f\u0440\u0430\u0432\u0438\u0448 \u0441\u0432\u043e\u0438 \u0437\u0430 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d transport\/logging\/monitoring.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u041f\u0440\u0438\u043c\u0435\u0440: \u0434\u043e\u0431\u0430\u0432\u044f\u043d\u0435 \u043d\u0430 MCP server \u043a\u044a\u043c \u043f\u043b\u044a\u0433\u0438\u043d\u0430 List All URLs<\/h2>\n\n\n\n<p>\u0417\u0430 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440 \u043c\u043e\u0436\u0435 \u0434\u0430 \u0441\u0435 \u0432\u0437\u0435\u043c\u0435 \u043f\u043b\u044a\u0433\u0438\u043d\u044a\u0442 List All URLs (\u043a\u043e\u0439\u0442\u043e \u0432\u0435\u0447\u0435 \u0438\u043c\u0430 Abilities API \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f) \u0438 \u0434\u0430 \u043c\u0443 \u0441\u0435 \u0434\u043e\u0431\u0430\u0432\u0438 custom MCP server: <a href=\"https:\/\/github.com\/wptrainingteam\/list-all-urls\">https:\/\/github.com\/wptrainingteam\/list-all-urls<\/a><\/p>\n\n\n\n<div class=\"wp-block-group callout callout-warning is-style-warning is-layout-flow wp-block-group-is-layout-flow\" style=\"border-width:1px;border-radius:8px;padding-top:1rem;padding-right:1.5rem;padding-bottom:1rem;padding-left:1.5rem\">\n\n<h4 class=\"wp-block-heading callout-title\">\u0412\u0430\u0436\u043d\u043e<\/h4>\n\n\n<p>\u041f\u0440\u0435\u0434\u0438 \u0434\u0430 \u043f\u0440\u043e\u0434\u044a\u043b\u0436\u0438\u0448, \u0434\u0435\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 MCP Adapter \u043f\u043b\u044a\u0433\u0438\u043d\u0430, \u0430\u043a\u043e \u0435 \u0430\u043a\u0442\u0438\u0432\u0435\u043d \u043a\u0430\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u0435\u043d \u043f\u043b\u044a\u0433\u0438\u043d. \u0412 \u0442\u043e\u0437\u0438 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439 MCP Adapter \u0449\u0435 \u0431\u044a\u0434\u0435 dependency \u043d\u0430 \u043f\u043b\u044a\u0433\u0438\u043d\u0430 \u043f\u0440\u0435\u0437 Composer.<\/p>\n\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\">1) \u041a\u043b\u043e\u043d\u0438\u0440\u0430\u0439 \u043f\u043b\u044a\u0433\u0438\u043d\u0430 \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f\u0442\u0430 \u043d\u0430 \u043f\u043b\u044a\u0433\u0438\u043d\u0438\u0442\u0435<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>cd wp-content\/plugins\ngit clone git@github.com:wptrainingteam\/list-all-urls.git\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#79B8FF\">cd<\/span><span style=\"color:#9ECBFF\"> wp-content\/plugins<\/span><\/span>\n<span class=\"line\"><span style=\"color:#B392F0\">git<\/span><span style=\"color:#9ECBFF\"> clone<\/span><span style=\"color:#9ECBFF\"> git@github.com:wptrainingteam\/list-all-urls.git<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">2) \u041f\u0440\u0435\u0432\u043a\u043b\u044e\u0447\u0438 \u043a\u044a\u043c branch \u0441 Abilities API<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>cd list-all-urls\ngit checkout abilities\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#79B8FF\">cd<\/span><span style=\"color:#9ECBFF\"> list-all-urls<\/span><\/span>\n<span class=\"line\"><span style=\"color:#B392F0\">git<\/span><span style=\"color:#9ECBFF\"> checkout<\/span><span style=\"color:#9ECBFF\"> abilities<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">3) \u0418\u043d\u0441\u0442\u0430\u043b\u0438\u0440\u0430\u0439 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438\u0442\u0435<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>composer install\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#B392F0\">composer<\/span><span style=\"color:#9ECBFF\"> install<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">4) \u0414\u043e\u0431\u0430\u0432\u0438 mcp-adapter<\/h3>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>composer require wordpress\/mcp-adapter\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#B392F0\">composer<\/span><span style=\"color:#9ECBFF\"> require<\/span><span style=\"color:#9ECBFF\"> wordpress\/mcp-adapter<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">5) \u0414\u043e\u0431\u0430\u0432\u0438 \u043a\u043e\u0434 \u0432 <code>list-all-urls.php<\/code> \u0437\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 custom server<\/h3>\n\n\n\n<p>\u0412 \u043e\u0441\u043d\u043e\u0432\u043d\u0438\u044f \u0444\u0430\u0439\u043b <code>list-all-urls.php<\/code> \u0434\u043e\u0431\u0430\u0432\u0438 \u0432 \u043a\u0440\u0430\u044f:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>if ( ! class_exists( WPMCPCoreMcpAdapter::class ) ) {\n    return;\n}\n\n\/\/ Initialize MCP Adapter and its default server.\nWPMCPCoreMcpAdapter::instance();\n\nadd_action( 'mcp_adapter_init', 'list_all_urls_create_custom_mcp_server' );\n\/**\n * Create a custom MCP server for the List All URLs plugin.\n *\n * @param object $adapter WPMCPCoreMcpAdapter The MCP Adapter instance.\n * @return void\n *\/\nfunction list_all_urls_create_custom_mcp_server( $adapter ) {\n    $adapter = WPMCPCoreMcpAdapter::instance();\n    $adapter-&gt;create_server(\n        'list-all-urls-mcp-server',\n        'list-all-urls-mcp-server',\n        'mcp',\n        'List All URLS MCP Server',\n        'Custom MCP Server for the List All URLs plugin. Currently exposes only the list-all-urls\/urls ability as an MCP Tool.',\n        'v1.0.0',\n        array(\n            WPMCPTransportHttpTransport::class,\n        ),\n        WPMCPInfrastructureErrorHandlingErrorLogMcpErrorHandler::class,\n        WPMCPInfrastructureObservabilityNullMcpObservabilityHandler::class,\n        array( 'list-all-urls\/urls' ),\n    );\n}\n\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#F97583\">if<\/span><span style=\"color:#E1E4E8\"> ( <\/span><span style=\"color:#F97583\">!<\/span><span style=\"color:#79B8FF\"> class_exists<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#79B8FF\">WPMCPCoreMcpAdapter<\/span><span style=\"color:#F97583\">::class<\/span><span style=\"color:#E1E4E8\"> ) ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">    return<\/span><span style=\"color:#E1E4E8\">;<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">\/\/ Initialize MCP Adapter and its default server.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">WPMCPCoreMcpAdapter<\/span><span style=\"color:#F97583\">::<\/span><span style=\"color:#B392F0\">instance<\/span><span style=\"color:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color:#B392F0\">add_action<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#9ECBFF\">'mcp_adapter_init'<\/span><span style=\"color:#E1E4E8\">, <\/span><span style=\"color:#9ECBFF\">'list_all_urls_create_custom_mcp_server'<\/span><span style=\"color:#E1E4E8\"> );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\">\/**<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * Create a custom MCP server for the List All URLs plugin.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> *<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * <\/span><span style=\"color:#F97583\">@param<\/span><span style=\"color:#F97583\"> object<\/span><span style=\"color:#6A737D\"> $adapter WPMCPCoreMcpAdapter The MCP Adapter instance.<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> * <\/span><span style=\"color:#F97583\">@return<\/span><span style=\"color:#F97583\"> void<\/span><\/span>\n<span class=\"line\"><span style=\"color:#6A737D\"> *\/<\/span><\/span>\n<span class=\"line\"><span style=\"color:#F97583\">function<\/span><span style=\"color:#B392F0\"> list_all_urls_create_custom_mcp_server<\/span><span style=\"color:#E1E4E8\">( $adapter ) {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    $adapter <\/span><span style=\"color:#F97583\">=<\/span><span style=\"color:#79B8FF\"> WPMCPCoreMcpAdapter<\/span><span style=\"color:#F97583\">::<\/span><span style=\"color:#B392F0\">instance<\/span><span style=\"color:#E1E4E8\">();<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    $adapter<\/span><span style=\"color:#F97583\">-><\/span><span style=\"color:#B392F0\">create_server<\/span><span style=\"color:#E1E4E8\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'list-all-urls-mcp-server'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'list-all-urls-mcp-server'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'mcp'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'List All URLS MCP Server'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'Custom MCP Server for the List All URLs plugin. Currently exposes only the list-all-urls\/urls ability as an MCP Tool.'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        'v1.0.0'<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        array<\/span><span style=\"color:#E1E4E8\">(<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">            WPMCPTransportHttpTransport<\/span><span style=\"color:#F97583\">::class<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">        ),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        WPMCPInfrastructureErrorHandlingErrorLogMcpErrorHandler<\/span><span style=\"color:#F97583\">::class<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        WPMCPInfrastructureObservabilityNullMcpObservabilityHandler<\/span><span style=\"color:#F97583\">::class<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">        array<\/span><span style=\"color:#E1E4E8\">( <\/span><span style=\"color:#9ECBFF\">'list-all-urls\/urls'<\/span><span style=\"color:#E1E4E8\"> ),<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    );<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span>\n<span class=\"line\"><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u041e\u0431\u044a\u0440\u043d\u0438 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435: \u0442\u0443\u043a <strong>\u043d\u0435 \u0442\u0438 \u0442\u0440\u044f\u0431\u0432\u0430<\/strong> <code>meta.mcp.public<\/code> \u0437\u0430 <code>list-all-urls\/urls<\/code>, \u0437\u0430\u0449\u043e\u0442\u043e ability-\u0442\u043e \u0441\u0435 \u0435\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u0430 \u0438\u0437\u0440\u0438\u0447\u043d\u043e \u043f\u0440\u0435\u0437 custom MCP server-\u0430.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">6) \u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 \u043f\u043b\u044a\u0433\u0438\u043d\u0430 \u0438 \u043e\u0431\u043d\u043e\u0432\u0438 MCP \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430 \u0432 AI \u043a\u043b\u0438\u0435\u043d\u0442\u0430<\/h3>\n\n\n\n<p>\u0410\u043a\u0442\u0438\u0432\u0438\u0440\u0430\u0439 List All URLs \u043e\u0442 WordPress \u0430\u0434\u043c\u0438\u043d \u043f\u0430\u043d\u0435\u043b\u0430. \u0421\u043b\u0435\u0434 \u0442\u043e\u0432\u0430 \u043e\u0431\u043d\u043e\u0432\u0438 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f\u0442\u0430 \u043d\u0430 MCP server-\u0438\u0442\u0435 \u0432 AI \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e, \u0437\u0430 \u0434\u0430 \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0448 \u043d\u043e\u0432\u0438\u044f server.<\/p>\n\n\n\n<p>\u041f\u0440\u0438\u043c\u0435\u0440 \u0437\u0430 VS Code \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f, \u0432 \u043a\u043e\u044f\u0442\u043e \u0438\u043c\u0430\u0448 \u0438 default server-\u0430, \u0438 custom server-\u0430 (\u0438 \u0434\u0432\u0430\u0442\u0430 \u043f\u0440\u0435\u0437 STDIO):<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#24292e\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewBox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" style=\"color:#e1e4e8;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>{\n  &quot;servers&quot;: {\n    &quot;wordpress-mcp-server&quot;: {\n      &quot;command&quot;: &quot;wp&quot;,\n      &quot;args&quot;: [\n        &quot;--path=\/Users\/jonathanbossenger\/Studio\/wordpress-mcp&quot;,\n        &quot;mcp-adapter&quot;,\n        &quot;serve&quot;,\n        &quot;--server=mcp-adapter-default-server&quot;,\n        &quot;--user=admin&quot;\n      ]\n    },\n    &quot;list-all-urls-mcp-server&quot;: {\n      &quot;command&quot;: &quot;wp&quot;,\n      &quot;args&quot;: [\n        &quot;--path=\/Users\/jonathanbossenger\/Studio\/wordpress-mcp&quot;,\n        &quot;mcp-adapter&quot;,\n        &quot;serve&quot;,\n        &quot;--server=list-all-urls-mcp-server&quot;,\n        &quot;--user=admin&quot;\n      ]\n    }\n  }\n}\n<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki github-dark\" style=\"background-color:#24292e;color:#e1e4e8\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color:#E1E4E8\">{<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">  \"servers\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">    \"wordpress-mcp-server\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"command\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"wp\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"args\"<\/span><span style=\"color:#E1E4E8\">: [<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--path=\/Users\/jonathanbossenger\/Studio\/wordpress-mcp\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"mcp-adapter\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"serve\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--server=mcp-adapter-default-server\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--user=admin\"<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">      ]<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    },<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">    \"list-all-urls-mcp-server\"<\/span><span style=\"color:#E1E4E8\">: {<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"command\"<\/span><span style=\"color:#E1E4E8\">: <\/span><span style=\"color:#9ECBFF\">\"wp\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#79B8FF\">      \"args\"<\/span><span style=\"color:#E1E4E8\">: [<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--path=\/Users\/jonathanbossenger\/Studio\/wordpress-mcp\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"mcp-adapter\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"serve\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--server=list-all-urls-mcp-server\"<\/span><span style=\"color:#E1E4E8\">,<\/span><\/span>\n<span class=\"line\"><span style=\"color:#9ECBFF\">        \"--user=admin\"<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">      ]<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">    }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">  }<\/span><\/span>\n<span class=\"line\"><span style=\"color:#E1E4E8\">}<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p>\u0412 \u0435\u0434\u0438\u043d AI \u043a\u043b\u0438\u0435\u043d\u0442 \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u0438\u043c\u0430\u0448 <strong>\u043d\u044f\u043a\u043e\u043b\u043a\u043e MCP server-\u0430<\/strong> \u2013 \u0443\u0434\u043e\u0431\u043d\u043e \u0435 \u0437\u0430 \u043f\u0440\u0435\u0432\u043a\u043b\u044e\u0447\u0432\u0430\u043d\u0435 \u043c\u0435\u0436\u0434\u0443 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u0438 WordPress \u0441\u0430\u0439\u0442\u043e\u0432\u0435 \u0438\u043b\u0438 \u043f\u043b\u044a\u0433\u0438\u043d\u0438 \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u0435\u043d \u043d\u0430\u0431\u043e\u0440 \u043e\u0442 abilities.<\/p>\n\n\n\n<p>\u0421\u043b\u0435\u0434 \u043f\u0440\u043e\u043c\u0435\u043d\u0438: \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0439 AI \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u0438\u043b\u0438 \u0441\u0442\u0430\u0440\u0442\u0438\u0440\u0430\u0439 MCP server-\u0430 \u043e\u0442 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0442\u0435 \u043c\u0443. \u041f\u043e\u0441\u043b\u0435 \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u043f\u043e\u0438\u0441\u043a\u0430\u0448 \u043e\u0442 AI: \u201eList all URLs on my WordPress site\u201c \u0438 \u0442\u043e \u0449\u0435 \u0438\u0437\u0432\u0438\u043a\u0430 <code>list-all-urls-urls<\/code> tool \u043f\u0440\u0435\u0437 MCP Adapter.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0421\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442 \u0438 \u0434\u043e\u0431\u0440\u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438<\/h2>\n\n\n\n<p>MCP \u043a\u043b\u0438\u0435\u043d\u0442\u0438\u0442\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0430\u0442 \u043a\u0430\u0442\u043e <strong>\u043b\u043e\u0433\u043d\u0430\u0442\u0438 WordPress \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0438<\/strong>. \u0422\u0440\u0435\u0442\u0438\u0440\u0430\u0439 \u0433\u0438 \u043a\u0430\u0442\u043e \u0447\u0430\u0441\u0442 \u043e\u0442 attack surface-\u0430 \u043d\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u0442\u043e \u0438 \u0441\u043f\u0430\u0437\u0432\u0430\u0439 \u0442\u0435\u0437\u0438 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li><strong>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439 <code>permission_callback<\/code> \u0432\u043d\u0438\u043c\u0430\u0442\u0435\u043b\u043d\u043e<\/strong><\/li>\n\n\n<li>\u0412\u0441\u044f\u043a\u0430 ability \u0442\u0440\u044f\u0431\u0432\u0430 \u0434\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0432\u0430 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u043d\u043e \u043d\u0443\u0436\u043d\u0438\u0442\u0435 \u043a\u0430\u043f\u0430\u0431\u0438\u043b\u0438\u0442\u0438\u0442\u0430 (<code>manage_options<\/code>, <code>edit_posts<\/code> \u0438 \u0442.\u043d.).<\/li>\n\n\n<li>\u0418\u0437\u0431\u044f\u0433\u0432\u0430\u0439 <code>__return_true<\/code> \u0437\u0430 \u0440\u0430\u0437\u0440\u0443\u0448\u0438\u0442\u0435\u043b\u043d\u0438 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u043a\u0430\u0442\u043e \u0442\u0440\u0438\u0435\u043d\u0435 \u043d\u0430 \u0441\u044a\u0434\u044a\u0440\u0436\u0430\u043d\u0438\u0435.<\/li>\n\n\n<li><strong>\u0418\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0439 \u043e\u0442\u0434\u0435\u043b\u043d\u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043b\u0438 \u0437\u0430 MCP \u0434\u043e\u0441\u0442\u044a\u043f<\/strong><\/li>\n\n\n<li>\u041e\u0441\u043e\u0431\u0435\u043d\u043e \u0432 production: \u043d\u0430\u043f\u0440\u0430\u0432\u0438 \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0435\u043d user\/role \u0441 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438 \u043f\u0440\u0430\u0432\u0430.<\/li>\n\n\n<li>\u041d\u0435 \u0435\u043a\u0441\u043f\u043e\u043d\u0438\u0440\u0430\u0439 \u043c\u043e\u0449\u043d\u0438 abilities \u043a\u044a\u043c \u043d\u0435\u0430\u0443\u0434\u0438\u0442\u0438\u0440\u0430\u043d\u0438 AI \u043a\u043b\u0438\u0435\u043d\u0442\u0438.<\/li>\n\n\n<li><strong>\u041f\u0440\u0435\u0434\u043f\u043e\u0447\u0438\u0442\u0430\u0439 read-only abilities \u0437\u0430 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u0438 MCP endpoints<\/strong><\/li>\n\n\n<li>\u0417\u0430 HTTP transport, \u0438\u0437\u043b\u043e\u0436\u0435\u043d \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442: \u0444\u043e\u043a\u0443\u0441 \u0432\u044a\u0440\u0445\u0443 \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430, \u0440\u0435\u043f\u043e\u0440\u0442\u0438 \u0438 read-only content access.<\/li>\n\n\n<li><strong>\u0418\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0438\u0440\u0430\u0439 custom authentication \u043f\u0440\u0438 \u043d\u0443\u0436\u0434\u0430<\/strong><\/li>\n\n\n<li>\u041f\u043e \u043f\u043e\u0434\u0440\u0430\u0437\u0431\u0438\u0440\u0430\u043d\u0435 \u0430\u0432\u0442\u0435\u043d\u0442\u0438\u043a\u0430\u0446\u0438\u044f\u0442\u0430 \u0435 \u0441 application passwords, \u043d\u043e \u043c\u043e\u0436\u0435\u0448 \u0434\u0430 \u0440\u0435\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u0448 OAuth \u0438\u043b\u0438 \u0434\u0440\u0443\u0433\u0438 \u043c\u0435\u0442\u043e\u0434\u0438 \u0437\u0430 \u043f\u043e-\u0434\u043e\u0431\u0440\u0430 \u0441\u0438\u0433\u0443\u0440\u043d\u043e\u0441\u0442.<\/li>\n\n\n<li><strong>\u041d\u0430\u0431\u043b\u044e\u0434\u0430\u0432\u0430\u0439 \u0438 \u043b\u043e\u0433\u0432\u0430\u0439 \u0443\u043f\u043e\u0442\u0440\u0435\u0431\u0430\u0442\u0430<\/strong><\/li>\n\n\n<li>\u041f\u043e\u043b\u0437\u0432\u0430\u0439 custom error\/observability handlers, \u0437\u0430 \u0434\u0430 \u0441\u0435 \u0432\u044a\u0440\u0436\u0435\u0448 \u043a\u044a\u043c \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u0438\u044f logging\/monitoring stack.<\/li>\n\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">\u041a\u0430\u043a \u0434\u0430 \u0437\u0430\u043f\u043e\u0447\u043d\u0435\u0448 \u0434\u0430 \u0435\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0438\u0440\u0430\u0448 \u043e\u0449\u0435 \u0434\u043d\u0435\u0441<\/h2>\n\n\n\n<p>\u041d\u0430\u0439-\u043c\u0438\u043d\u0438\u043c\u0430\u043b\u043d\u0438\u044f\u0442 \u201ehello AI\u201c \u043f\u044a\u0442 \u0437\u0430 WordPress \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u0435:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n\n<li>\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0430\u0439 \u0435\u0434\u043d\u0430 ability (\u0432 \u0438\u0434\u0435\u0430\u043b\u043d\u0438\u044f \u0441\u043b\u0443\u0447\u0430\u0439 read-only \u0438 \u043d\u0435\u0440\u0430\u0437\u0440\u0443\u0448\u0438\u0442\u0435\u043b\u043d\u0430).<\/li>\n\n\n<li>\u0414\u043e\u0431\u0430\u0432\u0438 MCP Adapter (\u043a\u0430\u0442\u043e \u043f\u043b\u044a\u0433\u0438\u043d \u0438\u043b\u0438 Composer dependency) \u0438 \u0433\u043e \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u0430\u0439.<\/li>\n\n\n<li>\u0421\u0432\u044a\u0440\u0436\u0438 MCP-aware AI \u043a\u043b\u0438\u0435\u043d\u0442 (Claude Desktop, Cursor, VS Code \u0438 \u0442.\u043d.).<\/li>\n\n<\/ol>\n\n\n\n<p>\u0410\u043a\u043e \u0432\u0435\u0447\u0435 \u0438\u043c\u0430\u0448 \u043f\u043b\u044a\u0433\u0438\u043d\u0438, \u043a\u043e\u0438\u0442\u043e \u0438\u0437\u043f\u043e\u043b\u0437\u0432\u0430\u0442 Abilities API, MCP Adapter \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0430 \u0433\u0438 \u043f\u0440\u0435\u0432\u0440\u044a\u0449\u0430 \u0432 <strong>AI-ready APIs<\/strong> \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u043d\u0438 \u0434\u043e\u043f\u044a\u043b\u043d\u0438\u0442\u0435\u043b\u043d\u0438 \u043f\u0440\u043e\u043c\u0435\u043d\u0438.<\/p>\n\n\n\n<p>\u041f\u043e\u043b\u0435\u0437\u043d\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u0438 \u0437\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0438 \u0434\u0435\u0442\u0430\u0439\u043b\u0438 \u043f\u043e \u0438\u043c\u043f\u043b\u0435\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f\u0442\u0430:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n\n<li>Abilities API: <a href=\"https:\/\/developer.wordpress.org\/apis\/abilities\/\">https:\/\/developer.wordpress.org\/apis\/abilities\/<\/a><\/li>\n\n\n<li>MCP Adapter (repo): <a href=\"https:\/\/github.com\/WordPress\/mcp-adapter\">https:\/\/github.com\/WordPress\/mcp-adapter<\/a><\/li>\n\n<\/ul>\n\n\n<div class=\"references-section\">\n                <h2>\u041f\u0440\u0435\u043f\u0440\u0430\u0442\u043a\u0438 \/ \u0418\u0437\u0442\u043e\u0447\u043d\u0438\u0446\u0438<\/h2>\n                <ul class=\"references-list\"><li><a href=\"https:\/\/developer.wordpress.org\/news\/2026\/02\/from-abilities-to-ai-agents-introducing-the-wordpress-mcp-adapter\/\" target=\"_blank\" rel=\"noopener noreferrer\">From Abilities to AI Agents: Introducing the WordPress MCP Adapter<\/a><\/li><li><a href=\"https:\/\/make.wordpress.org\/core\/2025\/11\/10\/abilities-api-in-wordpress-6-9\/\" target=\"_blank\" rel=\"noopener noreferrer\">Abilities API in WordPress 6.9<\/a><\/li><li><a href=\"https:\/\/developer.wordpress.org\/news\/2025\/11\/introducing-the-wordpress-abilities-api\/\" target=\"_blank\" rel=\"noopener noreferrer\">Introducing the WordPress Abilities API<\/a><\/li><li><a href=\"https:\/\/modelcontextprotocol.io\/docs\/getting-started\/intro\" target=\"_blank\" rel=\"noopener noreferrer\">Model Context Protocol \u2013 Intro<\/a><\/li><li><a href=\"https:\/\/modelcontextprotocol.io\/docs\/learn\/architecture#primitives\" target=\"_blank\" rel=\"noopener noreferrer\">Model Context Protocol \u2013 Architecture (primitives, transport)<\/a><\/li><li><a href=\"https:\/\/modelcontextprotocol.io\/docs\/learn\/architecture#transport-layer\" target=\"_blank\" rel=\"noopener noreferrer\">Model Context Protocol \u2013 Transport layer<\/a><\/li><li><a href=\"https:\/\/make.wordpress.org\/ai\/2025\/07\/17\/mcp-adapter\/\" target=\"_blank\" rel=\"noopener noreferrer\">MCP Adapter<\/a><\/li><li><a href=\"https:\/\/make.wordpress.org\/ai\/2025\/07\/17\/ai-building-blocks\/\" target=\"_blank\" rel=\"noopener noreferrer\">AI Building Blocks for WordPress<\/a><\/li><li><a href=\"https:\/\/github.com\/WordPress\/mcp-adapter\/releases\" target=\"_blank\" rel=\"noopener noreferrer\">MCP Adapter releases<\/a><\/li><li><a href=\"https:\/\/www.npmjs.com\/package\/@automattic\/mcp-wordpress-remote\" target=\"_blank\" rel=\"noopener noreferrer\">@automattic\/mcp-wordpress-remote<\/a><\/li><li><a href=\"https:\/\/github.com\/Automattic\/mcp-wordpress-remote\/blob\/trunk\/Docs\/troubleshooting.md\" target=\"_blank\" rel=\"noopener noreferrer\">mcp-wordpress-remote troubleshooting<\/a><\/li><li><a href=\"https:\/\/wp-cli.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">WP-CLI<\/a><\/li><li><a href=\"https:\/\/make.wordpress.org\/core\/2020\/11\/05\/application-passwords-integration-guide\/\" target=\"_blank\" rel=\"noopener noreferrer\">Application Passwords integration guide<\/a><\/li><li><a href=\"https:\/\/code.visualstudio.com\/docs\/copilot\/customization\/mcp-servers\" target=\"_blank\" rel=\"noopener noreferrer\">VS Code MCP servers documentation<\/a><\/li><li><a href=\"https:\/\/github.com\/WordPress\/mcp-adapter\/blob\/trunk\/docs\/getting-started\/installation.md#using-jetpack-autoloader-highly-recommended\" target=\"_blank\" rel=\"noopener noreferrer\">Using Jetpack Autoloader (highly recommended)<\/a><\/li><li><a href=\"https:\/\/github.com\/wptrainingteam\/list-all-urls\" target=\"_blank\" rel=\"noopener noreferrer\">List All URLs plugin<\/a><\/li><li><a href=\"https:\/\/engineering.block.xyz\/blog\/build-mcp-tools-like-ogres-with-layers\" target=\"_blank\" rel=\"noopener noreferrer\">Build MCP tools like ogres with layers<\/a><\/li><li><a href=\"https:\/\/wordpress.com\/blog\/2026\/01\/22\/connect-ai-agents-to-wordpress-oauth-2-1\/\" target=\"_blank\" rel=\"noopener noreferrer\">Connect AI agents to WordPress OAuth 2.1<\/a><\/li><\/ul>\n            <\/div>","protected":false},"excerpt":{"rendered":"<p>Abilities API \u0432 WordPress 6.9 \u0432\u0435\u0447\u0435 \u0434\u0430\u0432\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0438\u0437\u0438\u0440\u0430\u043d \u043d\u0430\u0447\u0438\u043d \u0434\u0430 \u043e\u043f\u0438\u0441\u0432\u0430\u0448 \u0438 \u0438\u0437\u043f\u044a\u043b\u043d\u044f\u0432\u0430\u0448 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u043d\u043e\u0441\u0442. \u0421 MCP Adapter \u0442\u043e\u0432\u0430 \u0441\u0442\u0430\u0432\u0430 \u0434\u0438\u0440\u0435\u043a\u0442\u043d\u043e \u0434\u043e\u0441\u0442\u044a\u043f\u043d\u043e \u0437\u0430 AI \u043a\u043b\u0438\u0435\u043d\u0442\u0438 \u043a\u0430\u0442\u043e Claude Desktop, Cursor \u0438 VS Code \u2013 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e \u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0430\u043d\u043e.<\/p>\n","protected":false},"author":39,"featured_media":215,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20],"tags":[27,43,11,9,8],"class_list":["post-221","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-ekosistema-wordpress","tag-ai","tag-api","tag-plugins","tag-wordpress","tag-wp-cli"],"_links":{"self":[{"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/posts\/221","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/users\/39"}],"replies":[{"embeddable":true,"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/comments?post=221"}],"version-history":[{"count":0,"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/posts\/221\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/media\/215"}],"wp:attachment":[{"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/media?parent=221"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/categories?post=221"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/helloblog.io\/bg\/wp-json\/wp\/v2\/tags?post=221"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}