Refactoring MCP — PRD
This project turns the Refactoring MCP prompt and governance specification templates into a dedicated MCP server so teams can host structured prompt generation via HTTP and automation scripts.
1. MCP Server Goal
- What is this project?
A dedicated MCP server (built on@modelcontextprotocol/sdk) that exposes MCP tools for generating protocol and governance prompt payloads following the Refactoring MCP standards. - What problem does it solve?
Documentation-only templates are hard to integrate; this MCP server exposes prompt builders via HTTP so downstream automation and review tooling can consume the specs. - Who is the primary user?
Platform engineers, MCP reviewers, or automation scripts needing consistent refactoring governance messaging via MCP workflows.
2. Success Definition
- How do we know this project is successful?
The npm package publishes, the MCP server starts, and prompts can be generated and stored via therefactoring_mcp_*tools. - What measurable outcome must be achieved?
npm testsucceeds,npm start(orrefactoring-mcp) brings the MCP service online, and at least one prompt record can be created through the MCP tools. - What does failure look like?
Prompt definitions remain stuck in Markdown without API access, or the automated validation/tests do not run.
3. Core MCP Server Action
- What is the single most important action a user performs?
Start the MCP server (vianpm startorrefactoring-mcp), host the API, and POST a protocol/governance prompt definition for downstream tooling. - What moment should make the user say “this works”?
A successfulPOST /api/promptsfollowed by aGET /api/prompts/:idthat returns the prompt text and metadata.
4. Non-Goals
- What will this project NOT attempt to do?
It does not persist prompts beyond in-memory, support authentication, or orchestrate remote agents. - What features are explicitly out of scope?
Any persistent database, full LLM orchestration, or advanced scheduling can be deferred to future MCPs.
5. Constraints
- Time constraints: Keep the MVP lean for npm publishing—no long-running refactors.
- Scope constraints: Single MCP server (Express + prompt builders) without sprawling CLI features.
- Resource constraints: Only trusted dependencies (Express, built-in Node modules) are permitted.
Validation Check
- Can the project goal be explained in one sentence? Yes — “Expose Refactoring MCP prompts via an Express API and CLI for automation-ready tooling.”
- Can success be evaluated without subjective judgment? Yes — endpoints respond successfully and tests pass.
6. MCP Server Usage
Installation
npm install -g refactoring-mcp(ornpm install refactoring-mcpfor local use).
Run (stdio)
refactoring-mcpornpm startboots the MCP server on port 3000 by default.- Use
--port <number>(or-p) or set thePORTenv var to change the listening port.
Example MCP Client Config
{
"command": "npx",
"args": ["-y", "refactoring-mcp"]
}
Tools
service_status→ return service metadata (name, version, uptime, timestamp).refactoring_mcp_list_documents→ list the guidance documents that describe this MCP.refactoring_mcp_get_document→ fetch a specific guidance document by key.refactoring_mcp_get_bundle→ download all guidance documents in one bundle.refactoring_mcp_generate_prompt→ build a protocol or governance prompt, validate the schema, and store the payload.refactoring_mcp_list_prompts→ inspect saved prompt metadata and timestamps.refactoring_mcp_get_prompt→ retrieve a stored prompt byid.
Documents
spec→docs/spec-prompts.md(protocol & governance spec templates).trd→TRD.md(technical boundaries for the MCP server).mcp_server→docs/mcp-server.md(server responsibilities and customization steps).agents→examples/AGENTS.md(agent instructions tied to this MCP).trd_questions→prompts/trd.questions.md(prompt template for drafting the TRD).
Tool Overview
service_statuskeeps MCP agents aware of the running version and uptime of the server.refactoring_mcp_*tools encapsulate prompt generation, doc discovery, and persisted prompt storage so other agents can consume the MCP output.
MCP Server Runtime
refactoring-mcp(installed globally) ornpm startstarts the MCP server so agents can access prompt specs.- Override the port with
--port,-p, or thePORTenvironment variable.
Testing & Validation
npm testrunstsc(build) and thennode --test ./dist/test/*.test.js, covering the prompt builders, store, and validators.