Software Planning Tool

Facilita o planejamento de desenvolvimento de software por meio de uma abordagem interativa e estruturada.

Documentação

Software Planning Tool 🚀

smithery badge

Um servidor Model Context Protocol (MCP) projetado para facilitar o planejamento de desenvolvimento de software por meio de uma abordagem interativa e estruturada. Esta ferramenta ajuda a dividir projetos de software complexos em tarefas gerenciáveis, acompanhar o progresso da implementação e manter planos de desenvolvimento detalhados.

Software Planning Tool MCP server

Recursos ✨

  • Sessões de Planejamento Interativas: Inicie e gerencie sessões de planejamento de desenvolvimento
  • Gerenciamento de Tarefas: Crie, atualize e acompanhe tarefas de desenvolvimento
  • Pontuação de Complexidade: Atribua pontuações de complexidade às tarefas para melhor estimativa
  • Exemplos de Código: Inclua trechos de código relevantes nas descrições das tarefas
  • Planos de Implementação: Salve e gerencie planos de implementação detalhados

Instalação 🛠️

Instalação via Smithery

Para instalar o Software Planning Tool para Claude Desktop automaticamente via Smithery:

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

Instalação Manual

  1. Clone o repositório
  2. Instale as dependências:
pnpm install
  1. Compile o projeto:
pnpm run build
  1. Adicione à configuração de definições do MCP (normalmente localizada em ~/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": []
    }
  }
}

Ferramentas Disponíveis 🔧

start_planning

Inicie uma nova sessão de planejamento com um objetivo específico.

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

add_todo

Adicione um novo item de tarefa ao plano atual.

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

get_todos

Recupere todas as tarefas do plano atual.

// No parameters required

update_todo_status

Atualize o status de conclusão de um item de tarefa.

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

save_plan

Salve o plano de implementação atual.

{
  plan: string  // The implementation plan text
}

remove_todo

Remova um item de tarefa do plano atual.

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

Exemplo de Uso 📝

Aqui está um exemplo completo de uso da ferramenta de planejamento de software:

  1. Inicie uma sessão de planejamento:
await client.callTool("software-planning-tool", "start_planning", {
  goal: "Create a React-based dashboard application"
});
  1. Adicione um item de tarefa:
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. Atualize o status da tarefa:
await client.callTool("software-planning-tool", "update_todo_status", {
  todoId: todo.id,
  isComplete: true
});
  1. Salve o plano de implementação:
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
  `
});

Desenvolvimento 🔨

Estrutura do Projeto

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

Compilação

pnpm run build

Testes

Teste todos os recursos usando o inspetor MCP:

pnpm run inspector

Licença 📄

MIT


Feito com ❤️ usando o Model Context Protocol