ClaudeCodeMod

All shelves / MCP servers

Software Planning

nighttrek/software-planning-mcp · 393 stars · JavaScript · MIT

MCP server An experiment in software planning using MCP

Install

In your shell
npx -y @smithery/cli install @NightTrek/Software-planning-mcp --client claude

These repos do not share one command. When an entry shows a command, it was copied as published. Check the repo's README before you run it.

Open the repo

Files

README.md

Software Planning Tool 🚀

A Model Context Protocol (MCP) server designed to facilitate software development planning through an interactive, structured approach. This tool helps break down complex software projects into manageable tasks, track implementation progress, and maintain detailed development plans.

Features ✨

  • Interactive Planning Sessions: Start and manage development planning sessions
  • Todo Management: Create, update, and track development tasks
  • Complexity Scoring: Assign complexity scores to tasks for better estimation
  • Code Examples: Include relevant code snippets in task descriptions
  • Implementation Plans: Save and manage detailed implementation plans

Installation 🛠️

Installing via Smithery

To install Software Planning Tool for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @NightTrek/Software-planning-mcp --client claude

Manual Installation

  1. Clone the repository
  2. Install dependencies:
pnpm install
  1. Build the project:
pnpm run build
  1. Add to your MCP settings configuration (typically located at ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json):
{
  "mcpServers": {
    "software-planning-tool": {
      "command": "node",
      "args": [
        "/path/to/software-planning-tool/build/index.js"
      ],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Available Tools 🔧

start_planning

Start a new planning session with a specific goal.

{
  goal: string  // The software development goal to plan
}

add_todo

Add a new todo item to the current plan.

{
  title: string,         // Title of the todo item
  description: string,   // Detailed description
  complexity: number,    // Complexity score (0-10)
  codeExample?: string  // Optional code example
}

get_todos

Retrieve all todos in the current plan.

// No parameters required

update_todo_status

Update the completion status of a todo item.

{
  todoId: string,     // ID of the todo item
  isComplete: boolean // New completion status
}

save_plan

Save the current implementation plan.

{
  plan: string  // The implementation plan text
}

remove_todo

Remove a todo item from the current plan.

{
  todoId: string  // ID of the todo item to remove
}

Example Usage 📝

Here's a complete example of using the software planning tool:

  1. Start a planning session:
await client.callTool("software-planning-tool", "start_planning", {
  goal: "Create a React-based dashboard application"
});
  1. Add a todo item:
const todo = await client.callTool("software-planning-tool", "add_todo", {
  title: "Set up project structure",
  description: "Initialize React project with necessary dependencies",
  complexity: 3,
  codeExample: `
npx create-react-app dashboard
cd dashboard
npm install @material-ui/core @material-ui/icons
  `
});
  1. Update todo status:
await client.callTool("software-planning-tool", "update_todo_status", {
  todoId: todo.id,
  isComplete: true
});
  1. Save the implementation plan:
await client.callTool("software-planning-tool", "save_plan", {
  plan: `
# Dashboard Implementation Plan

## Phase 1: Setup (Complexity: 3)
- Initialize React project
- Install dependencies
- Set up routing

## Phase 2: Core Features (Complexity: 5)
- Implement authentication
- Create dashboard layout
- Add data visualization components
  `
});

Development 🔨

Project Structure

software-planning-tool/
  ├── src/
  │   ├── index.ts        # Main server implementation
  │   ├── prompts.ts      # Planning prompts and templates
  │   ├── storage.ts      # Data persistence
  │   └── types.ts        # TypeScript type definitions
  ├── build/              # Compiled JavaScript
  ├── package.json
  └── tsconfig.json

Building

pnpm run build

Testing

Test all features using the MCP inspector:

pnpm run inspector

License 📄

MIT

Made with ❤️ using the Model Context Protocol

Facts

Kind
MCP server
Repo
nighttrek/software-planning-mcp
Group
Uncategorized
Stars
393
License
MIT
Language
JavaScript
Last push
2025-03-14
Forks
60

More on this shelf

  1. 1Everythingmodelcontextprotocol/serversThis MCP server attempts to exercise all the features of the MCP protocol. It is not intended to be a useful server, but rather a test server for builders of MCP clients. It implements prompts, tools, resources, sampling, and more to showcase MCP capabilities.85.8k
  2. 2Fetchmodelcontextprotocol/serversA Model Context Protocol server that provides web content fetching capabilities. This server enables LLMs to retrieve and process content from web pages, converting HTML to markdown for easier consumption.85.8k
  3. 3Gitmodelcontextprotocol/serversA Model Context Protocol server for Git repository interaction and automation. This server provides tools to read, search, and manipulate Git repositories via Large Language Models.85.8k
  4. 4Memorymodelcontextprotocol/serversA basic implementation of persistent memory using a local knowledge graph. This lets Claude remember information about the user across chats.85.8k
  5. 5Sequential Thinkingmodelcontextprotocol/serversAn MCP server implementation that provides a tool for dynamic and reflective problem-solving through a structured thinking process.85.8k
  6. 6Timemodelcontextprotocol/serversA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.85.8k