NightTrek

Software Planning Tool ๐Ÿš€

Community NightTrek
Updated

A Model Context Protocol server

Software Planning Tool ๐Ÿš€

smithery badge

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

MCP Server ยท Populars

MCP Server ยท New

    chatmcp

    mcpso

    directory for Awesome MCP Servers

    Community chatmcp
    TBXark

    MCP Proxy Server

    An MCP proxy server that aggregates and serves multiple MCP resource servers through a single HTTP server.

    Community TBXark
    ttommyth

    interactive-mcp

    Ask users questions from your LLM! interactive-mcp: Local, cross-platform MCP server for interactive prompts, chat & notifications.

    Community ttommyth
    lpigeon

    ros-mcp-server

    The ROS MCP Server is designed to support robots in performing complex tasks and adapting effectively to various environments by providing a set of functions that transform natural language commands, entered by a user through an LLM, into ROS commands for robot control.

    Community lpigeon
    emicklei

    melrose-mcp

    interactive programming of melodies, producing MIDI

    Community emicklei