Command Palette

Search for a command to run...

UnylyUnyly
Browse all

WordPress Trac

FreeNot checked

Provides access to WordPress.org Trac development data through public CSV and RSS endpoints, enabling searches across 60,000+ tickets, detailed ticket retrieval

GitHubEmbed

About

Provides access to WordPress.org Trac development data through public CSV and RSS endpoints, enabling searches across 60,000+ tickets, detailed ticket retrieval with metadata and comments, changeset information with diff content, and recent development activity monitoring for WordPress core contributors and plugin developers.

README

A read-only Model Context Protocol server for WordPress Core Trac. It runs as a Cloudflare Worker and uses Trac's public HTML, CSV, RSS, and diff endpoints.

Live servers:

Production:

  • Standard MCP: https://wordpress-trac-mcp-server-prod.a8c-aiops.workers.dev/mcp
  • Search/fetch compatibility: https://wordpress-trac-mcp-server-prod.a8c-aiops.workers.dev/mcp/chatgpt
  • Health check: https://wordpress-trac-mcp-server-prod.a8c-aiops.workers.dev/health

Staging:

  • Standard MCP: https://mcp-server-wporg-trac-staging.a8c-aiops.workers.dev/mcp
  • Search/fetch compatibility: https://mcp-server-wporg-trac-staging.a8c-aiops.workers.dev/mcp/chatgpt
  • Health check: https://mcp-server-wporg-trac-staging.a8c-aiops.workers.dev/health

The former staging deployment at https://mcp-server-wporg-trac-staging.a8cai.workers.dev is deprecated and runs older code. Its a8cai.workers.dev subdomain differs from the active staging deployment's a8c-aiops.workers.dev subdomain.

Tools

The standard /mcp endpoint provides:

Tool Purpose
searchTickets Search by keywords, ticket number, or structured filters
getTicket Read a ticket, its attachments, changesets, recent human discussion, and linked pull requests
getChangeset Read a changeset and an optional truncated diff
getTimeline Read recent Trac activity
getTracInfo List components, milestones, priorities, severities, types, or statuses

getChangeset expects the numeric revision argument, not rev:

{
  "revision": 58504,
  "includeDiff": false
}

The /mcp/chatgpt compatibility endpoint provides search and fetch. Use a bare number for a ticket and an r prefix for a changeset: 65739 and r58504.

Search filters

searchTickets accepts plain keywords, ticket numbers, or filter expressions joined with &:

{
  "query": "milestone=6.9&status=closed&resolution=fixed",
  "limit": 50,
  "page": 2
}

It also accepts status, component, milestone, and resolution as separate arguments. A separate argument overrides the same field in query. Results include pagination metadata.

Connect

Remote-capable MCP clients can connect directly to the standard endpoint. Clients that need a local bridge can use mcp-remote:

{
  "mcpServers": {
    "wordpress-trac": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "https://wordpress-trac-mcp-server-prod.a8c-aiops.workers.dev/mcp"
      ]
    }
  }
}

For ChatGPT, add the compatibility endpoint as a custom app. See OpenAI's current MCP help because product labels and setup steps change.

After changing a configured server URL, reconnect the MCP server or restart the client once. Future deployments to the same URL do not require a client configuration change.

Develop

Requirements: Node.js 22 or later and pnpm 10.

pnpm install
pnpm dev

Open http://localhost:8787/ to view the local landing page. See docs/local-development.md for the full browser-preview workflow and troubleshooting.

Run the complete local quality gate:

pnpm check

This runs TypeScript, Biome, Vitest, and a Cloudflare Worker dry-run build. See docs/testing.md for manual protocol and live-data checks.

Deployment requires a configured Cloudflare account:

# Staging
pnpm run deploy

# Production
pnpm run deploy:production

Design and safety

  • The server is read-only and has no Trac credentials.
  • Tool inputs receive runtime validation before any upstream request.
  • Upstream requests use the fixed core.trac.wordpress.org host and the official linked-PR endpoint on api.wordpress.org.
  • Transient transport failures, rate limits, server errors, and Trac bot challenges receive bounded retries. Permanent 403 and 404 responses return immediately.
  • Responses are parsed from public Trac pages and machine-readable formats.
  • The Worker keeps no ticket cache or durable state.

Contribute

Keep tool schemas, runtime validation, tests, and documentation aligned. Run pnpm check before opening a pull request.

License

GPL-2.0-or-later.

from github.com/jameswlepage/trac-mcp

Installing WordPress Trac

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/jameswlepage/trac-mcp

FAQ

Is WordPress Trac MCP free?

Yes, WordPress Trac MCP is free — one-click install via Unyly at no cost.

Does WordPress Trac need an API key?

No, WordPress Trac runs without API keys or environment variables.

Is WordPress Trac hosted or self-hosted?

Self-hosted: the server runs locally on your machine via the install command above.

How do I install WordPress Trac in Claude Desktop, Claude Code or Cursor?

Open WordPress Trac on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare WordPress Trac with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs