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
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 testrunsnode --test ./test/*.test.js, covering the prompt builders, store, and validators.