Skip to main content
Glama

WordPress Docs MCP Server

npm version License: MIT

A Model Context Protocol (MCP) server that provides WordPress documentation and development tools for both Claude Code and Claude Desktop. Get instant access to WordPress.org documentation, WordPress VIP guides, and function references directly in your Claude conversations.

πŸš€ Quick Start

npm install -g wordpress-docs-claude-mcp

Configure for Claude Code

Add to your Claude Code MCP configuration file (~/.claude/mcp.json):

{
  "mcpServers": {
    "wordpress-docs": {
      "command": "wordpress-docs-mcp"
    }
  }
}

Configure for Claude Desktop

Add to your Claude Desktop configuration file:

  • macOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "wordpress-docs": {
      "command": "wordpress-docs-mcp"
    }
  }
}

Restart Claude

Restart Claude Code or Claude Desktop to load the MCP server.

Related MCP server: DevDocs MCP Server

πŸ› οΈ Available Tools

hello_wp

WordPress-themed greeting tool for testing MCP server connectivity.

  • Parameters: name (required) - Name to greet with WordPress context

wp_search_docs

Search WordPress.org developer documentation with filtering options.

  • Parameters:

    • query (required) - Search term for WordPress documentation

    • type (optional) - Content type: "posts", "functions", "hooks", "classes"

Search WordPress VIP platform documentation for enterprise features.

  • Parameters:

    • query (required) - Search term for WordPress VIP documentation

    • section (optional) - VIP section: "all", "getting-started", "infrastructure", "development", "content"

wp_function_lookup

Get detailed information about specific WordPress functions, hooks, or classes.

  • Parameters:

    • function_name (required) - Exact name of the WordPress function, hook, or class

πŸ’‘ Usage Examples

Once configured, you can ask Claude to use these tools naturally:

Search Documentation:

  • "Search WordPress docs for custom post types"

  • "Find WordPress VIP documentation about caching"

  • "Look up information about REST API endpoints"

Function Lookup:

  • "Look up the wp_enqueue_script function"

  • "Find documentation for get_post"

  • "What parameters does add_action take?"

VIP-Specific Queries:

  • "Search VIP docs for deployment best practices"

  • "Find VIP information about performance optimization"

  • "Look up VIP security controls"

πŸ”§ Development Setup

If you want to contribute or run from source:

  1. Clone the repository:

    git clone https://github.com/freibergergarcia/wordpress-docs-claude-mcp.git
    cd wordpress-docs-claude-mcp
  2. Install dependencies:

    npm install
  3. Build the project:

    npm run build
  4. Configure Claude with local path:

    {
      "mcpServers": {
        "wordpress-docs": {
          "command": "node",
          "args": ["dist/index.js"],
          "cwd": "/absolute/path/to/wordpress-docs-claude-mcp"
        }
      }
    }

πŸ§ͺ Testing

Test the server manually (requires jq for formatted output):

# List available tools
echo '{"jsonrpc": "2.0", "id": 1, "method": "tools/list", "params": {}}' | wordpress-docs-mcp | jq

# Test WordPress greeting
echo '{"jsonrpc": "2.0", "id": 2, "method": "tools/call", "params": {"name": "hello_wp", "arguments": {"name": "Developer"}}}' | wordpress-docs-mcp | jq

# Search WordPress documentation
echo '{"jsonrpc": "2.0", "id": 3, "method": "tools/call", "params": {"name": "wp_search_docs", "arguments": {"query": "REST API", "type": "posts"}}}' | wordpress-docs-mcp | jq

# Search WordPress VIP documentation
echo '{"jsonrpc": "2.0", "id": 4, "method": "tools/call", "params": {"name": "wp_vip_search", "arguments": {"query": "deployment"}}}' | wordpress-docs-mcp | jq

# Look up WordPress function
echo '{"jsonrpc": "2.0", "id": 5, "method": "tools/call", "params": {"name": "wp_function_lookup", "arguments": {"function_name": "get_post"}}}' | wordpress-docs-mcp | jq

πŸ“š Documentation

  • MCP Architecture - Learn how MCP servers work, Node.js integration, and Claude communication

  • Development Guide - How to add new WordPress tools and development workflow

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

  1. Fork the repository

  2. Create your feature branch (git checkout -b feature/AmazingFeature)

  3. Commit your changes (git commit -m 'Add some AmazingFeature')

  4. Push to the branch (git push origin feature/AmazingFeature)

  5. Open a Pull Request

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

⚑ What's New

Version 1.0.0

  • βœ… WordPress.org documentation search with content type filtering

  • βœ… WordPress VIP documentation search with web scraping fallback

  • βœ… WordPress function lookup with direct URL scraping

  • βœ… Comprehensive error handling and validation

  • βœ… Support for both Claude Code and Claude Desktop

  • βœ… Real-time documentation fetching (no cached/stale content)


Made with ❀️ for the WordPress and Claude communities

Available Tools

4 tools
hello_wpC

WordPress-themed greeting tool for testing WordPress context

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesName to greet with WordPress context

TDQS

C2.6/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It mentions 'greeting' and 'testing', implying a read-only, non-destructive operation, but doesn't disclose behavioral traits like response format, error handling, or any constraints. The description is too brief to provide meaningful behavioral context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that states the tool's purpose without unnecessary details. It's appropriately sized for a simple tool, though it could be more front-loaded with clearer action verbs.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete. It doesn't explain what the tool returns (e.g., greeting message format), error conditions, or how it integrates with WordPress context beyond a vague mention. For a tool with no structured support, more detail is needed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with the parameter 'name' documented as 'Name to greet with WordPress context'. The description doesn't add any meaning beyond this, such as examples or format details. With high schema coverage, the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states it's a 'WordPress-themed greeting tool for testing WordPress context', which provides a general purpose (greeting with WordPress context) but is vague about the specific action. It doesn't clearly distinguish from sibling tools like wp_function_lookup or wp_search_docs beyond the 'greeting' aspect.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives. The description mentions 'for testing WordPress context', but doesn't specify scenarios, prerequisites, or exclusions compared to sibling tools like wp_function_lookup or wp_search_docs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wp_function_lookupB

Look up detailed information about WordPress functions, hooks, or classes

ParametersJSON Schema
NameRequiredDescriptionDefault
function_nameYesExact name of the WordPress function, hook, or class to look up

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool looks up 'detailed information' but doesn't specify what that entailsβ€”e.g., return format, data sources, error handling, or rate limits. For a lookup tool with zero annotation coverage, this leaves significant gaps in understanding its behavior and constraints.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence with no wasted words. It front-loads the core purpose ('Look up detailed information') and efficiently specifies the scope ('about WordPress functions, hooks, or classes'). Every part of the sentence contributes directly to understanding the tool's function.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (one parameter, no output schema, no annotations), the description is minimally adequate. It covers the basic purpose but lacks details on behavior, usage context, or output format. Without annotations or an output schema, the description should ideally provide more context about what 'detailed information' includes, but it meets the bare minimum for a simple lookup tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with the parameter 'function_name' documented as 'Exact name of the WordPress function, hook, or class to look up.' The description adds no additional parameter semantics beyond this, such as examples or format details. With high schema coverage, a baseline score of 3 is appropriate, as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Look up detailed information about WordPress functions, hooks, or classes.' It specifies the verb ('look up') and resource ('WordPress functions, hooks, or classes'), making the intent unambiguous. However, it doesn't explicitly differentiate from sibling tools like wp_search_docs or wp_vip_search, which might have overlapping functionality.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention sibling tools (e.g., wp_search_docs, wp_vip_search) or specify contexts where this tool is preferred, such as for exact name lookups versus broader searches. Without such guidance, users must infer usage from the tool name alone.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

wp_search_docsC

Search WordPress.org developer documentation

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch term for WordPress documentation
typeNoType of content to search for

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure but only states the basic action without details on permissions, rate limits, response format, or error handling. It doesn't add meaningful context beyond the minimal purpose, leaving significant gaps in understanding how the tool behaves.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, efficient sentence that directly states the tool's purpose without unnecessary words. It's appropriately sized and front-loaded, with zero waste, making it easy for an agent to parse quickly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the lack of annotations and output schema, the description is incomplete for a search tool. It doesn't explain what the search returns (e.g., links, summaries, error cases) or behavioral aspects like pagination or limitations, leaving the agent with insufficient context to use the tool effectively.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, clearly documenting both parameters (query and type with enum values). The description doesn't add any semantic details beyond what the schema provides, such as search scope or result formatting, so it meets the baseline for high schema coverage without compensating with extra value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose as searching WordPress.org developer documentation, which is a specific verb+resource combination. However, it doesn't differentiate itself from sibling tools like wp_vip_search, which might also search WordPress content, so it doesn't fully distinguish from alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus the sibling tools (hello_wp, wp_function_lookup, wp_vip_search). There's no mention of context, prerequisites, or alternatives, leaving the agent with no usage direction beyond the basic purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

TDQS

B3.3/5.0
Disambiguation5/5

Each tool has a clearly distinct purpose: hello_wp is a greeting tool for testing, wp_function_lookup retrieves detailed information about specific WordPress elements, wp_search_docs searches general developer documentation, and wp_vip_search targets VIP platform documentation. There is no overlap or ambiguity between these functions.

Naming Consistency5/5

All tool names follow a consistent snake_case pattern with a 'wp_' prefix, and they use descriptive verbs like 'lookup', 'search', and 'hello' that clearly indicate their actions. This uniformity makes the tool set predictable and easy to understand.

Tool Count4/5

With 4 tools, the count is reasonable for a documentation-focused server, though it feels slightly thin for comprehensive WordPress development coverage. Each tool earns its place by addressing distinct aspects of documentation lookup, but additional tools for other resources (e.g., themes or plugins) could enhance scope.

Completeness4/5

The tool set covers key documentation needs for WordPress developers, including function lookups and searches across general and VIP docs, with a testing tool for context. Minor gaps exist, such as no tools for updating or managing documentation, but agents can work around this for typical lookup tasks.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/freibergergarcia/wordpress-docs-claude-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server