@justmpm/task-request 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,204 @@
1
+ # @justmpm/task-request
2
+
3
+ MCP App com UI interativa para criar tasks estruturadas. O host chama a tool, o formulario abre dentro do chat, o usuario preenche, e a resposta volta como markdown estruturado para a conversa.
4
+
5
+ ## O que é
6
+
7
+ Este é um **MCP App** - uma extensão do Model Context Protocol que inclui uma interface web interativa renderizada dentro de clientes como Claude Desktop.
8
+
9
+ ## Funcionalidades
10
+
11
+ - **Formulário Visual** para criar tasks estruturadas
12
+ - **Tipos de Task**: Implementar, Corrigir, Analisar, Refatorar, Testar, Documentar
13
+ - **Prioridades**: Urgente, Normal, Baixa (com emojis visuais)
14
+ - **Campos Estruturados**:
15
+ - Título e descrição
16
+ - Contexto adicional (arquivos, prints, URLs)
17
+ - Restrições (o que NÃO fazer)
18
+ - Arquivos relacionados
19
+ - Critérios de aceite
20
+ - **Validação em tempo real**
21
+ - **Geração automática de prompt estruturado**
22
+
23
+ ## Como funciona
24
+
25
+ Esse pacote tem 3 partes:
26
+
27
+ 1. `create_task`
28
+ Abre a UI dentro do host MCP.
29
+
30
+ 2. `mcp-app.html` + React
31
+ Renderiza o formulario premium dentro do chat.
32
+
33
+ 3. `submit_task`
34
+ Recebe os dados enviados pela UI e devolve o resultado estruturado para a conversa.
35
+
36
+ ## Instalação local
37
+
38
+ ```bash
39
+ # Clone ou navegue até o diretório
40
+ cd mcps-ai/task-request
41
+
42
+ # Instale dependências
43
+ npm install
44
+
45
+ # Gere UI + servidor
46
+ npm run build
47
+
48
+ # Rode o endpoint MCP
49
+ npm run start
50
+ ```
51
+
52
+ ## Desenvolvimento
53
+
54
+ ```bash
55
+ # Modo MCP real: recompila a UI para dist e observa alteracoes
56
+ npm run dev
57
+
58
+ # Preview visual da UI no navegador, separado do host MCP
59
+ npm run dev:ui
60
+ ```
61
+
62
+ ## Publicar e instalar globalmente
63
+
64
+ ```bash
65
+ # Publicar no npm
66
+ npm publish --access public
67
+
68
+ # Instalar globalmente no seu PC
69
+ npm install -g @justmpm/task-request
70
+
71
+ # Rodar o MCP publicado
72
+ task-request-mcp
73
+ ```
74
+
75
+ ## Testar no host
76
+
77
+ ### Opção 1: basic-host
78
+
79
+ ```bash
80
+ git clone https://github.com/modelcontextprotocol/ext-apps.git
81
+ cd ext-apps/examples/basic-host
82
+ npm install
83
+
84
+ # Aponte para o endpoint local do MCP
85
+ SERVERS='["http://localhost:3001/mcp"]' npm start
86
+
87
+ # Abra http://localhost:8080
88
+ ```
89
+
90
+ ### Opção 2: Claude via tunnel
91
+
92
+ ```bash
93
+ npx cloudflared tunnel --url http://localhost:3001
94
+
95
+ # Adicione a URL gerada como Custom Connector no Claude
96
+ ```
97
+
98
+ ## Uso
99
+
100
+ 1. Cadastre o endpoint MCP no host:
101
+ `http://localhost:3001/mcp`
102
+
103
+ 2. No host, peça algo como:
104
+ ```
105
+ "Crie uma task para adicionar login com Google"
106
+ ```
107
+
108
+ 3. O host chama a tool `create_task` e o formulario aparece dentro do chat.
109
+
110
+ 4. Preencha e clique em `Enviar task`.
111
+
112
+ 5. A tool `submit_task` devolve a resposta estruturada automaticamente para a conversa.
113
+
114
+ ## Configuração opcional
115
+
116
+ ```bash
117
+ # Porta do servidor
118
+ PORT=3001
119
+
120
+ # Origins permitidas para o endpoint MCP
121
+ MCP_ALLOWED_ORIGINS=http://localhost:8080,http://localhost:3000
122
+ ```
123
+
124
+ ## Exemplo de Prompt Gerado
125
+
126
+ ```markdown
127
+ ## 📋 TASK: Adicionar botão de logout no header
128
+
129
+ **Tipo:** Implementar
130
+ **Prioridade:** 🟡 Normal
131
+
132
+ ---
133
+
134
+ ### 🎯 O que preciso
135
+
136
+ Adicionar um botão de logout no canto superior direito do header. O botão deve:
137
+ - Ter ícone de saída
138
+ - Confirmar antes de deslogar
139
+ - Chamar a função signOut() do AuthService
140
+
141
+ ### 📎 Contexto Adicional
142
+
143
+ Arquivo: src/components/Header.tsx
144
+ Já existe o hook useAuth() com signOut()
145
+
146
+ ### 📁 Arquivos Relacionados
147
+
148
+ - `src/components/Header.tsx`
149
+ - `src/hooks/useAuth.ts`
150
+
151
+ ### ⛔ Restrições
152
+
153
+ **O que NÃO fazer:**
154
+
155
+ - Não quebrar testes existentes
156
+ - Manter padrão MUI V7
157
+
158
+ ### ✅ Critérios de Aceite
159
+
160
+ 1. Botão aparece no header quando logado
161
+ 2. Confirmação aparece antes de deslogar
162
+ 3. Usuário é redirecionado para /login após logout
163
+
164
+ ---
165
+
166
+ > Task criada via Task Request Builder MCP App
167
+ ```
168
+
169
+ ## Stack
170
+
171
+ - **Server**: Express + MCP SDK + StreamableHTTPServerTransport
172
+ - **UI**: React 19 + MUI V7 + Vite
173
+ - **SDK**: @modelcontextprotocol/ext-apps
174
+
175
+ ## Fluxo ideal
176
+
177
+ Se o seu objetivo e usar isso como builder de pedido:
178
+
179
+ 1. Publique no npm
180
+ 2. Instale globalmente com `npm install -g @justmpm/task-request`
181
+ 3. Rode `task-request-mcp`
182
+ 4. Cadastre `http://localhost:3001/mcp` no host
183
+ 5. Quando eu precisar estruturar uma task, eu chamo `create_task`
184
+ 6. Voce preenche o formulario e eu recebo o resultado ja pronto na conversa
185
+
186
+ ## Estrutura
187
+
188
+ ```
189
+ task-request/
190
+ ├── src/
191
+ │ ├── server.ts # Servidor MCP com HTTP transport
192
+ │ └── ui/
193
+ │ ├── main.tsx # Entry point React
194
+ │ ├── App.tsx # Componente principal
195
+ │ └── types.ts # Tipos TypeScript
196
+ ├── mcp-app.html # HTML entry point
197
+ ├── vite.config.ts # Configuração Vite
198
+ ├── tsconfig.json # TypeScript config
199
+ └── package.json
200
+ ```
201
+
202
+ ## Licença
203
+
204
+ MIT © Koda AI Studio