cursor-doctor

cursor-doctor

An MCP server that audits a project for documentation, rules, skills, and knowledge artifacts, compares against a reference concept catalog, and generates a prescription plan with frontmatter todos to guide creation of missing or incomplete elements.

Category
Visit Server

README

Cursor Doctor

An MCP server that audits a project for documentation, rules, skills, and other knowledge artifacts. It compares what exists against a reference concept catalog and produces a prescription plan (cursor-doctor-prescription-plan.md) with frontmatter todos listing missing or incomplete elements. The plan always ends with an Update Artifacts todo so that rules, skills, and docs stay in sync after every session.

Repo mascot & logo

Installation

Add the server to your project's MCP config (or use it globally via Cursor settings):

Using npx (no local install):

{
  "mcpServers": {
    "cursor-doctor": {
      "command": "npx",
      "args": ["-y", "cursor-doctor@latest"]
    }
  }
}

Local development (from this repo):

{
  "mcpServers": {
    "cursor-doctor": {
      "command": "node",
      "args": ["/path/to/cursor-doctor/dist/index.js"]
    }
  }
}

Config lives in .cursor/mcp.json (project) or in Cursor’s user MCP configuration.

Using the MCP server

  1. Install the server (add it to .cursor/mcp.json as in Installation above).

  2. Create a skill for the doctor command
    Prompt Cursor to create a skill file for the command "doctor" or "cursor doctor" that:

    • Calls the cursor-doctor-self MCP server in planning mode.
    • Uses the generate_prescription tool so the project is audited and cursor-doctor-prescription-plan.md is written with frontmatter-style todos in the plan.
    • Works through the plan using those frontmatter todos as the task list.

    The repo tracks a skill and rules so the workflow is consistent; see Tracked Cursor artifacts below.

Tracked Cursor artifacts

These files are committed in this repo so the doctor command and expectations stay consistent:

File Purpose
.cursor/skills/cursor-doctor/SKILL.md Skill for "doctor" / "cursor doctor": calls cursor-doctor-self in planning mode, uses frontmatter todos from the prescription plan.
.cursor/rules/cursor-doctor.mdc Rule applied when editing the prescription plan or rules/skills: use the doctor workflow and complete Update Artifacts.
.cursor/rules/required-cursor-doctor-skill.mdc Rule (always apply): the cursor-doctor skill must exist at .cursor/skills/cursor-doctor/SKILL.md; if missing, recreate it from this README.

Reference these in your workflow; do not remove them without updating the README.

Tools

Tool Purpose
audit_project Scans the project for markdown, rules (.mdc), skills (SKILL.md), and config files. Returns paths and summaries for semantic matching, plus a list of gaps (concepts that have no matching artifact).
read_document Returns the full content of a file. Use a path from the audit result to inspect an artifact.
generate_prescription Runs an audit, then writes cursor-doctor-prescription-plan.md to the project root with YAML frontmatter todos (missing/incomplete concepts and the always-final “Update Artifacts” step).

Concept Catalog

The server checks for 23 concepts in 6 tiers. Artifacts are matched by file patterns (e.g. README.md, .cursor/rules/*.mdc) and by content signals (keywords in the first lines of a file) so that differently named files can still satisfy a concept.

  • Tier 1 – Foundation: README, project-overview rule, file-locations rule, agent-workflow rule.
  • Tier 2 – Architecture: Architecture doc, data model doc, API spec (e.g. OpenAPI).
  • Tier 3 – Development conventions: Backend, frontend, database, and lessons-learnt rules.
  • Tier 4 – AI knowledge and skills: AGENTS doc, knowledge-base skill, code-generation skill, operational skills, dependency-management skill.
  • Tier 5 – Quality and documentation: Testing spec, accessibility doc, style guide, UI documentation.
  • Tier 6 – Infrastructure: MCP config, container config, CI/CD config.
  • Final – Artifact sync: “Update Artifacts” is always appended as the last todo so that after any plan or coding session the AI is prompted to review and update rules, skills, and docs.

Prescription format

cursor-doctor-prescription-plan.md has:

  1. YAML frontmatter with:

    • title, project, audited_at, health_score, total_concepts, found, missing, incomplete
    • todos: list of id, tier, status (missing | incomplete | found | action), concept, priority, and optionally found_at, details, prompt
  2. Body with a short summary and a reminder that the final todo is always “Update Artifacts”.

Each todo for a missing or incomplete concept includes a prompt that instructs the AI to create or update the artifact (e.g. by mining the codebase). The artifact-sync todo always has status: action and a prompt to review and update all cursor-doctor artifacts at the end of the session.

Build and run

npm install
npm run build

The server runs over stdio; Cursor (or another MCP client) starts it and communicates via stdin/stdout. To run the built server directly:

node dist/index.js

(It will wait for JSON-RPC on stdin; normal use is through Cursor’s MCP integration.)

Version bump on commit

A pre-commit hook (via Husky) bumps the npm package patch version before each commit. The commit you push will therefore include the updated package.json (and package-lock.json). Hooks are installed when you run npm install (the prepare script runs husky). To skip the bump for a single commit, use git commit --no-verify.

Publishing

1. Publish to npm (for npx cursor-doctor)

So users can install with npx cursor-doctor@latest, publish the package to npm:

npm login          # once, if not already logged in
./publish.sh       # builds and runs npm publish
./publish.sh --dry-run   # test without publishing

2. List on the Cursor MCP Marketplace (cursor.store)

To appear in the Cursor MCP Marketplace so people can discover and install from cursor.store:

  1. Publish to npm first (step above), so the install snippet works.

  2. Submit your listing at cursor.store/mcp/new (free). You’ll need:

    • Name: e.g. Cursor Doctor
    • Slug: e.g. cursor-doctor
    • Short & long description: what it does (audit docs/rules/skills, generate prescription plan).
    • Category: e.g. DevTools or Productivity
    • Tags: e.g. documentation, cursor, mcp, audit, rules, skills
    • Author/maintainer: your name or handle
    • Repository URL: your GitHub (or other) repo
    • Install snippet (for Cursor .cursor/mcp.json):
      {
        "mcpServers": {
          "cursor-doctor": {
            "command": "npx",
            "args": ["-y", "cursor-doctor@latest"]
          }
        }
      }
      
    • Permission level: Low (read-only: scans filesystem, returns JSON; no shell, no network except what Cursor does).
  3. Optional: After the listing exists, you can claim it (e.g. via GitHub) on cursor.store to add a verified badge, better description, and screenshots.

Full rules and requirements: cursor.store/rules.

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured