Follow Plan MCP Server

Local setup required. This server has to be cloned and prepared on your machine before you register it in Claude Code.
1

Set the server up locally

Run this once to clone and prepare the server before adding it to Claude Code.

Run in terminal
npm install
npm run build
npm start /path/to/your/project
2

Register it in Claude Code

After the local setup is done, run this command to point Claude Code at the built server.

Run in terminal
claude mcp add follow-plan -- node "<FULL_PATH_TO_FOLLOW_PLAN_MCP>/dist/index.js" /path/to/your/project

Replace <FULL_PATH_TO_FOLLOW_PLAN_MCP>/dist/index.js with the actual folder you prepared in step 1.

README.md

Intelligent project planning and task management with SQLite persistence.

Follow Plan MCP Server

A comprehensive Model Context Protocol (MCP) server for intelligent project planning and task management with SQLite persistence and full-text search capabilities.

Features

  • Task Management: Create, update, and track tasks with status, priority, and progress
  • Feature Planning: Manage user stories, epics, and feature specifications
  • Bug Tracking: Report and track bugs with severity levels and reproduction steps
  • Rule Engine: Define project rules, validations, and automation guidelines
  • Full-Text Search: Advanced search across all plan items with relevance scoring
  • SQLite Storage: Persistent storage with FTS5 full-text search indexing
  • Auto-Sync: Automatic synchronization between database and filesystem
  • Backup/Restore: Database backup and restore functionality

Quick Start

1. Install Dependencies

npm install

2. Build the Project

npm run build

3. Start the MCP Server

npm start /path/to/your/project

The server will create a .plan directory in your project with the following structure:

.plan/
├── database.db          # SQLite database
├── index.md            # Project overview
├── tasks/              # Task files
├── features/           # Feature files
├── bugs/               # Bug files
├── rules/              # Rule files
├── workflows/          # Workflow documentation
├── changelog/          # Project changelog
└── tmp/                # Temporary files and logs

MCP Tools

Task Management

  • create_task - Create a new task
  • update_task - Update an existing task
  • get_task - Get task details by ID
  • list_tasks - List tasks with optional filters
  • delete_task - Delete a task

Feature Management

  • create_feature - Create a new feature
  • update_feature - Update an existing feature
  • get_feature - Get feature details by ID
  • list_features - List features with optional filters
  • delete_feature - Delete a feature

Bug Tracking

  • create_bug - Create a new bug report
  • update_bug - Update an existing bug
  • get_bug - Get bug details by ID
  • list_bugs - List bugs with optional filters
  • delete_bug - Delete a bug

Rule Management

  • create_rule - Create a new project rule
  • update_rule - Update an existing rule
  • get_rule - Get rule details by ID
  • list_rules - List rules with optional filters
  • delete_rule - Delete a rule

Search & Discovery

  • search - Search across all plan items
  • advanced_search - Advanced search with filters

Data Management

  • backup_database - Create a database backup
  • restore_database - Restore from backup
  • sync_filesystem - Sync database to filesystem

MCP Resources

  • plan://index - Project plan overview (Markdown)
  • plan://tasks - All tasks (JSON)
  • plan://features - All features (JSON)
  • plan://bugs - All bugs (JSON)
  • plan://rules - All rules (JSON)
  • plan://stats - Project statistics (JSON)

Configuration

Claude Desktop

Add to your Claude Desktop configuration:

{
  "mcpServers": {
    "follow-plan": {
      "command": "node",
      "args": [
        "/path/to/follow-plan-mcp/dist/index.js",
        "/path/to/your/project"
      ],
      "env": {}
    }
  }
}

Environment Variables

  • LOG_LEVEL - Set logging level (debug, info, warn, error)
  • PLAN_AUTO_SYNC - Enable/disable auto-sync (default: true)
  • PLAN_BACKUP_INTERVAL - Backup interval in seconds (default: 1800)

Development

Build

npm run build

Test

npm test
npm run test:coverage

Lint

npm run lint
npm run lint:fix

Format

npm run format

Database Schema

The server uses SQLite with FTS5 full-text search. Key tables:

  • tasks - Project tasks
  • features - Feature specifications
  • bugs - Bug reports
  • rules - Project rules
  • messages - Communication logs
  • prompts - AI prompt templates
  • cascades - Automation workflows
  • fts_search - Full-text search index

Architecture

src/
├── index.ts              # Main MCP server
├── types/                # TypeScript type definitions
├── services/             # Business logic services
│   ├── database-service.ts
│   ├── task-service.ts
│   ├── feature-service.ts
│   ├── bug-service.ts
│   ├── rule-service.ts
│   ├── search-service.ts
│   └── persistence-service.ts
├── handlers/             # MCP request handlers
│   ├── tools.ts
│   ├── resources.ts
│   ├── validation.ts
│   └── search-handlers.ts
├── utils/                # Utility functions
└── constants/            # Application constants

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests
  5. Run the test suite
  6. Submit a pull request

License

MIT License - see LICENSE file for details

Support

For issues and questions:

  • GitHub Issues: [Report a bug or request a feature]
  • Documentation: See the /docs directory
  • Exa

Tools (25)

create_taskCreate a new task
update_taskUpdate an existing task
get_taskGet task details by ID
list_tasksList tasks with optional filters
delete_taskDelete a task
create_featureCreate a new feature
update_featureUpdate an existing feature
get_featureGet feature details by ID
list_featuresList features with optional filters
delete_featureDelete a feature
create_bugCreate a new bug report
update_bugUpdate an existing bug
get_bugGet bug details by ID
list_bugsList bugs with optional filters
delete_bugDelete a bug
create_ruleCreate a new project rule
update_ruleUpdate an existing rule
get_ruleGet rule details by ID
list_rulesList rules with optional filters
delete_ruleDelete a rule
searchSearch across all plan items
advanced_searchAdvanced search with filters
backup_databaseCreate a database backup
restore_databaseRestore from backup
sync_filesystemSync database to filesystem

Environment Variables

LOG_LEVELSet logging level (debug, info, warn, error)
PLAN_AUTO_SYNCEnable/disable auto-sync
PLAN_BACKUP_INTERVALBackup interval in seconds

Configuration

claude_desktop_config.json
{"mcpServers": {"follow-plan": {"command": "node", "args": ["/path/to/follow-plan-mcp/dist/index.js", "/path/to/your/project"]}}}

Try it

Create a new task for the login page implementation with high priority.
List all open bugs that have a critical severity level.
Search for all project rules related to code formatting.
Sync my current database changes to the filesystem.
Create a new feature specification for the user authentication module.

Frequently Asked Questions

What are the key features of Follow Plan?

Task management with status, priority, and progress tracking. Feature planning for user stories and epics. Bug tracking with severity levels and reproduction steps. Full-text search across all plan items using FTS5. Automatic synchronization between SQLite database and filesystem.

What can I use Follow Plan for?

Managing complex software development projects directly from Claude. Maintaining a persistent, searchable project knowledge base. Automating the synchronization of project documentation with task status. Tracking bug reports and feature requests in a structured format.

How do I install Follow Plan?

Install Follow Plan by running: npm install && npm run build && npm start /path/to/your/project

What MCP clients work with Follow Plan?

Follow Plan works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Follow Plan docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare