WordPress Trac
FreeNot checkedProvides access to WordPress.org Trac development data through public CSV and RSS endpoints, enabling searches across 60,000+ tickets, detailed ticket retrieval
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.orghost and the official linked-PR endpoint onapi.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.
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-mcpFAQ
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
GitHub
PRs, issues, code search, CI status
by GitHubFilesystem
Secure file operations with configurable access controls.
Memory
Knowledge graph-based persistent memory system.
Template MCP Server
A CLI tool to create a new Model Context Protocol server project with TypeScript support, dual transport options, and an extensible structure
by mcpdotdirectCompare 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
