@paca-ai/paca-mcp 0.1.0-rc.6 → 0.1.1
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 +298 -0
- package/{api → build/api}/index.js +0 -0
- package/build/package.json +40 -0
- package/{tools → build/tools}/attachment-tools.js +21 -21
- package/{tools → build/tools}/attachment-tools.js.map +1 -1
- package/{tools → build/tools}/doc-github-tools.js +20 -20
- package/{tools → build/tools}/doc-github-tools.js.map +1 -1
- package/{tools → build/tools}/document-tools.js +10 -10
- package/{tools → build/tools}/document-tools.js.map +1 -1
- package/{tools → build/tools}/index.js +0 -0
- package/{tools → build/tools}/member-tools.js +16 -16
- package/{tools → build/tools}/member-tools.js.map +1 -1
- package/{tools → build/tools}/project-tools.js +3 -3
- package/{tools → build/tools}/project-tools.js.map +1 -1
- package/{tools → build/tools}/sprint-tools.js +10 -10
- package/{tools → build/tools}/sprint-tools.js.map +1 -1
- package/{tools → build/tools}/task-activity-tools.js +24 -24
- package/{tools → build/tools}/task-activity-tools.js.map +1 -1
- package/{tools → build/tools}/task-tools.js +17 -17
- package/{tools → build/tools}/task-tools.js.map +1 -1
- package/{tools → build/tools}/task-type-tools.js +16 -16
- package/{tools → build/tools}/task-type-tools.js.map +1 -1
- package/{types → build/types}/index.js +0 -0
- package/{utils → build/utils}/index.js +0 -0
- package/package.json +20 -2
- /package/{api → build/api}/client.d.ts +0 -0
- /package/{api → build/api}/client.d.ts.map +0 -0
- /package/{api → build/api}/client.js +0 -0
- /package/{api → build/api}/client.js.map +0 -0
- /package/{api → build/api}/doc-client.d.ts +0 -0
- /package/{api → build/api}/doc-client.d.ts.map +0 -0
- /package/{api → build/api}/doc-client.js +0 -0
- /package/{api → build/api}/doc-client.js.map +0 -0
- /package/{api → build/api}/extended-client.d.ts +0 -0
- /package/{api → build/api}/extended-client.d.ts.map +0 -0
- /package/{api → build/api}/extended-client.js +0 -0
- /package/{api → build/api}/extended-client.js.map +0 -0
- /package/{api → build/api}/github-client.d.ts +0 -0
- /package/{api → build/api}/github-client.d.ts.map +0 -0
- /package/{api → build/api}/github-client.js +0 -0
- /package/{api → build/api}/github-client.js.map +0 -0
- /package/{api → build/api}/index.d.ts +0 -0
- /package/{api → build/api}/index.d.ts.map +0 -0
- /package/{api → build/api}/index.js.map +0 -0
- /package/{api → build/api}/task-extended-client.d.ts +0 -0
- /package/{api → build/api}/task-extended-client.d.ts.map +0 -0
- /package/{api → build/api}/task-extended-client.js +0 -0
- /package/{api → build/api}/task-extended-client.js.map +0 -0
- /package/{api → build/api}/views-client.d.ts +0 -0
- /package/{api → build/api}/views-client.d.ts.map +0 -0
- /package/{api → build/api}/views-client.js +0 -0
- /package/{api → build/api}/views-client.js.map +0 -0
- /package/{index.d.ts → build/index.d.ts} +0 -0
- /package/{index.d.ts.map → build/index.d.ts.map} +0 -0
- /package/{index.js → build/index.js} +0 -0
- /package/{index.js.map → build/index.js.map} +0 -0
- /package/{server.d.ts → build/server.d.ts} +0 -0
- /package/{server.d.ts.map → build/server.d.ts.map} +0 -0
- /package/{server.js → build/server.js} +0 -0
- /package/{server.js.map → build/server.js.map} +0 -0
- /package/{tools → build/tools}/attachment-tools.d.ts +0 -0
- /package/{tools → build/tools}/attachment-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/doc-github-tools.d.ts +0 -0
- /package/{tools → build/tools}/doc-github-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/document-tools.d.ts +0 -0
- /package/{tools → build/tools}/document-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/index.d.ts +0 -0
- /package/{tools → build/tools}/index.d.ts.map +0 -0
- /package/{tools → build/tools}/index.js.map +0 -0
- /package/{tools → build/tools}/member-tools.d.ts +0 -0
- /package/{tools → build/tools}/member-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/project-tools.d.ts +0 -0
- /package/{tools → build/tools}/project-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/sprint-tools.d.ts +0 -0
- /package/{tools → build/tools}/sprint-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/task-activity-tools.d.ts +0 -0
- /package/{tools → build/tools}/task-activity-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/task-tools.d.ts +0 -0
- /package/{tools → build/tools}/task-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/task-type-tools.d.ts +0 -0
- /package/{tools → build/tools}/task-type-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/view-tools.d.ts +0 -0
- /package/{tools → build/tools}/view-tools.d.ts.map +0 -0
- /package/{tools → build/tools}/view-tools.js +0 -0
- /package/{tools → build/tools}/view-tools.js.map +0 -0
- /package/{types → build/types}/index.d.ts +0 -0
- /package/{types → build/types}/index.d.ts.map +0 -0
- /package/{types → build/types}/index.js.map +0 -0
- /package/{utils → build/utils}/converters.d.ts +0 -0
- /package/{utils → build/utils}/converters.d.ts.map +0 -0
- /package/{utils → build/utils}/converters.js +0 -0
- /package/{utils → build/utils}/converters.js.map +0 -0
- /package/{utils → build/utils}/formatters.d.ts +0 -0
- /package/{utils → build/utils}/formatters.d.ts.map +0 -0
- /package/{utils → build/utils}/formatters.js +0 -0
- /package/{utils → build/utils}/formatters.js.map +0 -0
- /package/{utils → build/utils}/index.d.ts +0 -0
- /package/{utils → build/utils}/index.d.ts.map +0 -0
- /package/{utils → build/utils}/index.js.map +0 -0
package/README.md
ADDED
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
# Paca MCP Server
|
|
2
|
+
|
|
3
|
+
Model Context Protocol (MCP) server for Paca — an open-source, AI-native project management platform.
|
|
4
|
+
|
|
5
|
+
Connect your AI assistant (Claude, Cursor, VS Code Copilot, etc.) to your Paca workspace and manage projects, tasks, sprints, and documents using natural language.
|
|
6
|
+
|
|
7
|
+
## Getting Started
|
|
8
|
+
|
|
9
|
+
### Prerequisites
|
|
10
|
+
|
|
11
|
+
- Node.js 18+
|
|
12
|
+
- A running Paca instance (local or deployed)
|
|
13
|
+
- A Paca API key (generate one in your Paca user settings)
|
|
14
|
+
|
|
15
|
+
## Setup
|
|
16
|
+
|
|
17
|
+
No installation or build step required. Configure your AI agent client to use the MCP server directly via `npx`.
|
|
18
|
+
|
|
19
|
+
### Environment Variables
|
|
20
|
+
|
|
21
|
+
| Variable | Required | Default | Description |
|
|
22
|
+
|---|---|---|---|
|
|
23
|
+
| `PACA_API_KEY` | ✅ | — | Your Paca API key |
|
|
24
|
+
| `PACA_API_URL` | ❌ | `http://localhost:8080` | URL of your Paca API instance |
|
|
25
|
+
|
|
26
|
+
### Claude Desktop
|
|
27
|
+
|
|
28
|
+
Add the following to your Claude Desktop config file:
|
|
29
|
+
|
|
30
|
+
- **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
31
|
+
- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
|
|
32
|
+
|
|
33
|
+
```json
|
|
34
|
+
{
|
|
35
|
+
"mcpServers": {
|
|
36
|
+
"paca": {
|
|
37
|
+
"command": "npx",
|
|
38
|
+
"args": ["-y", "@paca-ai/paca-mcp"],
|
|
39
|
+
"env": {
|
|
40
|
+
"PACA_API_KEY": "your-api-key-here",
|
|
41
|
+
"PACA_API_URL": "http://localhost:8080"
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Restart Claude Desktop after saving. Claude will automatically have access to all Paca tools.
|
|
49
|
+
|
|
50
|
+
### VS Code (GitHub Copilot)
|
|
51
|
+
|
|
52
|
+
Add to your VS Code `settings.json` or `.vscode/mcp.json`:
|
|
53
|
+
|
|
54
|
+
```json
|
|
55
|
+
{
|
|
56
|
+
"mcp": {
|
|
57
|
+
"servers": {
|
|
58
|
+
"paca": {
|
|
59
|
+
"command": "npx",
|
|
60
|
+
"args": ["-y", "@paca-ai/paca-mcp"],
|
|
61
|
+
"env": {
|
|
62
|
+
"PACA_API_KEY": "your-api-key-here",
|
|
63
|
+
"PACA_API_URL": "http://localhost:8080"
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### Other MCP-Compatible Clients
|
|
72
|
+
|
|
73
|
+
Any MCP-compatible client can use the server with:
|
|
74
|
+
|
|
75
|
+
```json
|
|
76
|
+
{
|
|
77
|
+
"name": "paca",
|
|
78
|
+
"command": "npx",
|
|
79
|
+
"args": ["-y", "@paca-ai/paca-mcp"],
|
|
80
|
+
"env": {
|
|
81
|
+
"PACA_API_KEY": "your-api-key-here",
|
|
82
|
+
"PACA_API_URL": "http://localhost:8080"
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
For a full setup walkthrough, see the [MCP Server Setup Guide](../../docs/guides/mcp-server-setup.md).
|
|
88
|
+
|
|
89
|
+
## Features
|
|
90
|
+
|
|
91
|
+
- **API Key Authentication**: Secure access using Paca API keys
|
|
92
|
+
- **Comprehensive Project Management**: Full project lifecycle with member and role management
|
|
93
|
+
- **Advanced Task Management**: Tasks with types, statuses, custom fields, attachments, and BDD scenarios
|
|
94
|
+
- **Sprint Management**: Complete sprint lifecycle management
|
|
95
|
+
- **Document Management**: Documents with folder hierarchy, version history, and file support
|
|
96
|
+
- **View Management**: Multiple view types (sprint, backlog, timeline) with task positioning
|
|
97
|
+
- **GitHub Integration**: Repository linking, PR management, and branch creation
|
|
98
|
+
- **Collaboration Tools**: Comments, activities, and BDD scenarios for team collaboration
|
|
99
|
+
- **BlockNote Integration**: Automatic conversion between BlockNote JSON and Markdown
|
|
100
|
+
|
|
101
|
+
## Available Tools
|
|
102
|
+
|
|
103
|
+
The MCP server provides **86 tools** across **17 categories** for comprehensive project management.
|
|
104
|
+
|
|
105
|
+
### 📁 Project Management (5 tools)
|
|
106
|
+
- `list_projects` - List all accessible projects
|
|
107
|
+
- `get_project` - Get details of a specific project
|
|
108
|
+
- `create_project` - Create a new project
|
|
109
|
+
- `update_project` - Update an existing project
|
|
110
|
+
- `delete_project` - Delete a project
|
|
111
|
+
|
|
112
|
+
### ✅ Task Management (6 tools)
|
|
113
|
+
- `list_tasks` - List all tasks in a project
|
|
114
|
+
- `get_task` - Get details of a specific task
|
|
115
|
+
- `get_task_by_number` - Get a task by its number
|
|
116
|
+
- `create_task` - Create a new task
|
|
117
|
+
- `update_task` - Update an existing task
|
|
118
|
+
- `delete_task` - Delete a task
|
|
119
|
+
|
|
120
|
+
### 🏃 Sprint Management (6 tools)
|
|
121
|
+
- `list_sprints` - List all sprints in a project
|
|
122
|
+
- `get_sprint` - Get details of a specific sprint
|
|
123
|
+
- `create_sprint` - Create a new sprint
|
|
124
|
+
- `update_sprint` - Update an existing sprint
|
|
125
|
+
- `delete_sprint` - Delete a sprint
|
|
126
|
+
- `complete_sprint` - Mark a sprint as completed
|
|
127
|
+
|
|
128
|
+
### 📄 Document Management (5 tools)
|
|
129
|
+
- `list_documents` - List all documents in a project
|
|
130
|
+
- `get_document` - Get details of a specific document
|
|
131
|
+
- `create_document` - Create a new document
|
|
132
|
+
- `update_document` - Update an existing document
|
|
133
|
+
- `delete_document` - Delete a document
|
|
134
|
+
|
|
135
|
+
### 👥 Project Members (5 tools)
|
|
136
|
+
- `list_project_members` - List all members of a project
|
|
137
|
+
- `add_project_member` - Add a member to a project
|
|
138
|
+
- `get_my_project_permissions` - Get the current user's permissions
|
|
139
|
+
- `update_project_member_role` - Update a member's role
|
|
140
|
+
- `remove_project_member` - Remove a member from a project
|
|
141
|
+
|
|
142
|
+
### 🎭 Project Roles (4 tools)
|
|
143
|
+
- `list_project_roles` - List all roles in a project
|
|
144
|
+
- `create_project_role` - Create a new project role
|
|
145
|
+
- `update_project_role` - Update an existing project role
|
|
146
|
+
- `delete_project_role` - Delete a project role
|
|
147
|
+
|
|
148
|
+
### 🏷️ Task Types (5 tools)
|
|
149
|
+
- `list_task_types` - List all task types in a project
|
|
150
|
+
- `create_task_type` - Create a new task type
|
|
151
|
+
- `update_task_type` - Update an existing task type
|
|
152
|
+
- `delete_task_type` - Delete a task type
|
|
153
|
+
- `set_default_task_type` - Set a task type as default
|
|
154
|
+
|
|
155
|
+
### 📊 Task Statuses (4 tools)
|
|
156
|
+
- `list_task_statuses` - List all task statuses in a project
|
|
157
|
+
- `create_task_status` - Create a new task status
|
|
158
|
+
- `update_task_status` - Update an existing task status
|
|
159
|
+
- `delete_task_status` - Delete a task status
|
|
160
|
+
|
|
161
|
+
### 🎯 Views (9 tools)
|
|
162
|
+
- `list_views` - List all views in a project
|
|
163
|
+
- `create_view` - Create a new view (sprint/backlog/timeline)
|
|
164
|
+
- `reorder_views` - Reorder views in a project
|
|
165
|
+
- `get_view` - Get details of a specific view
|
|
166
|
+
- `update_view` - Update an existing view
|
|
167
|
+
- `delete_view` - Delete a view
|
|
168
|
+
- `list_task_positions` - List task positions in a view
|
|
169
|
+
- `bulk_move_tasks` - Bulk move tasks in a view
|
|
170
|
+
- `move_task` - Move a task within a view
|
|
171
|
+
|
|
172
|
+
### 🔧 Custom Fields (5 tools)
|
|
173
|
+
- `list_custom_fields` - List all custom field definitions
|
|
174
|
+
- `create_custom_field` - Create a new custom field definition
|
|
175
|
+
- `get_custom_field` - Get details of a custom field
|
|
176
|
+
- `update_custom_field` - Update a custom field definition
|
|
177
|
+
- `delete_custom_field` - Delete a custom field definition
|
|
178
|
+
|
|
179
|
+
### 📎 Attachments (3 tools)
|
|
180
|
+
- `list_task_attachments` - List all attachments for a task
|
|
181
|
+
- `get_attachment_download_url` - Get a download URL for an attachment
|
|
182
|
+
- `delete_task_attachment` - Delete an attachment
|
|
183
|
+
|
|
184
|
+
### 🧪 BDD Scenarios (5 tools)
|
|
185
|
+
- `list_bdd_scenarios` - List all BDD scenarios for a task
|
|
186
|
+
- `create_bdd_scenario` - Create a new BDD scenario (Given/When/Then)
|
|
187
|
+
- `get_bdd_scenario` - Get details of a BDD scenario
|
|
188
|
+
- `update_bdd_scenario` - Update an existing BDD scenario
|
|
189
|
+
- `delete_bdd_scenario` - Delete a BDD scenario
|
|
190
|
+
|
|
191
|
+
### 📁 Document Folders (4 tools)
|
|
192
|
+
- `list_doc_folders` - List all folders in a project
|
|
193
|
+
- `create_doc_folder` - Create a new document folder
|
|
194
|
+
- `update_doc_folder` - Update a document folder
|
|
195
|
+
- `delete_doc_folder` - Delete a document folder
|
|
196
|
+
|
|
197
|
+
### 📸 Document Snapshots (2 tools)
|
|
198
|
+
- `list_doc_snapshots` - List all snapshots of a document
|
|
199
|
+
- `get_doc_snapshot` - Get a specific document snapshot
|
|
200
|
+
|
|
201
|
+
### 🔗 GitHub Integration (7 tools)
|
|
202
|
+
- `get_github_integration` - Get GitHub integration status
|
|
203
|
+
- `set_github_token` - Set GitHub token for a project
|
|
204
|
+
- `delete_github_token` - Delete GitHub token
|
|
205
|
+
- `list_github_repositories` - List available GitHub repositories
|
|
206
|
+
- `list_linked_github_repos` - List linked repositories
|
|
207
|
+
- `link_github_repository` - Link a GitHub repository
|
|
208
|
+
- `unlink_github_repository` - Unlink a GitHub repository
|
|
209
|
+
|
|
210
|
+
### 💬 Task Activities (4 tools)
|
|
211
|
+
- `list_task_activities` - List all activities for a task
|
|
212
|
+
- `add_task_comment` - Add a comment to a task
|
|
213
|
+
- `update_task_comment` - Update a task comment
|
|
214
|
+
- `delete_task_comment` - Delete a task comment
|
|
215
|
+
|
|
216
|
+
### 🔀 Task GitHub (5 tools)
|
|
217
|
+
- `list_task_prs` - List pull requests linked to a task
|
|
218
|
+
- `link_pr_to_task` - Link a pull request to a task
|
|
219
|
+
- `unlink_pr_from_task` - Unlink a pull request
|
|
220
|
+
- `create_branch_for_task` - Create a branch for a task
|
|
221
|
+
- `list_task_branches` - List branches for a task
|
|
222
|
+
|
|
223
|
+
For a complete list of all tools with detailed descriptions, see [ALL_TOOLS.md](./ALL_TOOLS.md).
|
|
224
|
+
|
|
225
|
+
## Markdown/BlockNote Conversion
|
|
226
|
+
|
|
227
|
+
The MCP server automatically handles conversion between Markdown and BlockNote JSON format:
|
|
228
|
+
|
|
229
|
+
- **Reading**: Fetches content as BlockNote JSON and converts to Markdown for readability
|
|
230
|
+
- **Writing**: Accepts Markdown input and converts to BlockNote JSON for storage
|
|
231
|
+
|
|
232
|
+
This allows AI assistants to work with familiar Markdown format while the API stores content in BlockNote's rich text format.
|
|
233
|
+
|
|
234
|
+
## API Key Authentication
|
|
235
|
+
|
|
236
|
+
All tools authenticate via the `X-API-Key` header. Generate an API key in your Paca user settings and set it as `PACA_API_KEY` in your MCP client configuration.
|
|
237
|
+
|
|
238
|
+
## Examples
|
|
239
|
+
|
|
240
|
+
### Create a Task with Markdown Description
|
|
241
|
+
|
|
242
|
+
```
|
|
243
|
+
Tool: create_task
|
|
244
|
+
Arguments:
|
|
245
|
+
- projectId: "project-uuid"
|
|
246
|
+
- title: "Implement user authentication"
|
|
247
|
+
- description: "# Implementation Plan\n\n## Steps\n1. Create auth service\n2. Add login endpoint\n3. Implement JWT tokens"
|
|
248
|
+
- statusId: "status-uuid"
|
|
249
|
+
- importance: 5
|
|
250
|
+
- tags: ["auth", "backend"]
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
### Update Document Content
|
|
254
|
+
|
|
255
|
+
```
|
|
256
|
+
Tool: update_document
|
|
257
|
+
Arguments:
|
|
258
|
+
- projectId: "project-uuid"
|
|
259
|
+
- docId: "doc-uuid"
|
|
260
|
+
- content: "# System Design\n\n## Architecture\nThis document describes the..."
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
## Notes
|
|
264
|
+
|
|
265
|
+
- The server requires a running Paca API instance
|
|
266
|
+
- API keys can be created through the Paca web interface under user settings
|
|
267
|
+
- All descriptions and document contents are automatically converted between Markdown and BlockNote format
|
|
268
|
+
- Date fields should be provided in ISO 8601 format (e.g., `2024-01-01T00:00:00Z`)
|
|
269
|
+
|
|
270
|
+
## Contributing
|
|
271
|
+
|
|
272
|
+
Interested in contributing to the MCP server? Clone the repository and follow the steps below:
|
|
273
|
+
|
|
274
|
+
```bash
|
|
275
|
+
git clone https://github.com/paca-ai/paca.git
|
|
276
|
+
cd paca/apps/mcp
|
|
277
|
+
npm install
|
|
278
|
+
npm run build
|
|
279
|
+
```
|
|
280
|
+
|
|
281
|
+
For development with auto-rebuild:
|
|
282
|
+
|
|
283
|
+
```bash
|
|
284
|
+
npm run watch
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
To test with the MCP Inspector:
|
|
288
|
+
|
|
289
|
+
```bash
|
|
290
|
+
npm run inspector
|
|
291
|
+
```
|
|
292
|
+
|
|
293
|
+
For detailed information about the codebase structure, how to add new tools, and code style guidelines, see [DEVELOPMENT.md](./DEVELOPMENT.md).
|
|
294
|
+
|
|
295
|
+
## License
|
|
296
|
+
|
|
297
|
+
Apache License 2.0
|
|
298
|
+
|
|
File without changes
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@paca-ai/paca-mcp",
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "Paca MCP server - Complete API access for AI-powered project management",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"publishConfig": {
|
|
7
|
+
"registry": "https://registry.npmjs.org",
|
|
8
|
+
"access": "public"
|
|
9
|
+
},
|
|
10
|
+
"bin": {
|
|
11
|
+
"paca": "./index.js"
|
|
12
|
+
},
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"@blocknote/core": "^0.48.1",
|
|
15
|
+
"@modelcontextprotocol/sdk": "0.6.0",
|
|
16
|
+
"jsdom": "^29.0.2",
|
|
17
|
+
"rehype-stringify": "^10.0.1",
|
|
18
|
+
"remark-parse": "^11.0.0",
|
|
19
|
+
"remark-rehype": "^11.1.2",
|
|
20
|
+
"unified": "^11.0.5"
|
|
21
|
+
},
|
|
22
|
+
"repository": {
|
|
23
|
+
"type": "git",
|
|
24
|
+
"url": "https://github.com/Paca-AI/paca.git",
|
|
25
|
+
"directory": "apps/mcp"
|
|
26
|
+
},
|
|
27
|
+
"bugs": {
|
|
28
|
+
"url": "https://github.com/Paca-AI/paca/issues"
|
|
29
|
+
},
|
|
30
|
+
"license": "Apache-2.0",
|
|
31
|
+
"keywords": [
|
|
32
|
+
"mcp",
|
|
33
|
+
"model-context-protocol",
|
|
34
|
+
"paca",
|
|
35
|
+
"project-management",
|
|
36
|
+
"ai",
|
|
37
|
+
"scrum",
|
|
38
|
+
"agile"
|
|
39
|
+
]
|
|
40
|
+
}
|
|
@@ -60,11 +60,11 @@ export function getAttachmentTools() {
|
|
|
60
60
|
properties: {
|
|
61
61
|
projectId: {
|
|
62
62
|
type: "string",
|
|
63
|
-
description: "The
|
|
63
|
+
description: "The technical UUID of the project (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_projects to get the project ID. Do NOT use the project name.",
|
|
64
64
|
},
|
|
65
65
|
taskId: {
|
|
66
66
|
type: "string",
|
|
67
|
-
description: "The
|
|
67
|
+
description: "The technical UUID of the task (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_tasks to get the task ID.",
|
|
68
68
|
},
|
|
69
69
|
},
|
|
70
70
|
required: ["projectId", "taskId"],
|
|
@@ -78,15 +78,15 @@ export function getAttachmentTools() {
|
|
|
78
78
|
properties: {
|
|
79
79
|
projectId: {
|
|
80
80
|
type: "string",
|
|
81
|
-
description: "The
|
|
81
|
+
description: "The technical UUID of the project (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_projects to get the project ID. Do NOT use the project name.",
|
|
82
82
|
},
|
|
83
83
|
taskId: {
|
|
84
84
|
type: "string",
|
|
85
|
-
description: "The
|
|
85
|
+
description: "The technical UUID of the task (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_tasks to get the task ID.",
|
|
86
86
|
},
|
|
87
87
|
attachmentId: {
|
|
88
88
|
type: "string",
|
|
89
|
-
description: "The
|
|
89
|
+
description: "The technical UUID of the attachment (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_task_attachments to get the attachment ID.",
|
|
90
90
|
},
|
|
91
91
|
},
|
|
92
92
|
required: ["projectId", "taskId", "attachmentId"],
|
|
@@ -100,15 +100,15 @@ export function getAttachmentTools() {
|
|
|
100
100
|
properties: {
|
|
101
101
|
projectId: {
|
|
102
102
|
type: "string",
|
|
103
|
-
description: "The
|
|
103
|
+
description: "The technical UUID of the project (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_projects to get the project ID. Do NOT use the project name.",
|
|
104
104
|
},
|
|
105
105
|
taskId: {
|
|
106
106
|
type: "string",
|
|
107
|
-
description: "The
|
|
107
|
+
description: "The technical UUID of the task (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_tasks to get the task ID.",
|
|
108
108
|
},
|
|
109
109
|
attachmentId: {
|
|
110
110
|
type: "string",
|
|
111
|
-
description: "The
|
|
111
|
+
description: "The technical UUID of the attachment (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_task_attachments to get the attachment ID.",
|
|
112
112
|
},
|
|
113
113
|
},
|
|
114
114
|
required: ["projectId", "taskId", "attachmentId"],
|
|
@@ -129,11 +129,11 @@ export function getBDDScenarioTools() {
|
|
|
129
129
|
properties: {
|
|
130
130
|
projectId: {
|
|
131
131
|
type: "string",
|
|
132
|
-
description: "The
|
|
132
|
+
description: "The technical UUID of the project (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_projects to get the project ID. Do NOT use the project name.",
|
|
133
133
|
},
|
|
134
134
|
taskId: {
|
|
135
135
|
type: "string",
|
|
136
|
-
description: "The
|
|
136
|
+
description: "The technical UUID of the task (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_tasks to get the task ID.",
|
|
137
137
|
},
|
|
138
138
|
},
|
|
139
139
|
required: ["projectId", "taskId"],
|
|
@@ -147,11 +147,11 @@ export function getBDDScenarioTools() {
|
|
|
147
147
|
properties: {
|
|
148
148
|
projectId: {
|
|
149
149
|
type: "string",
|
|
150
|
-
description: "The
|
|
150
|
+
description: "The technical UUID of the project (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_projects to get the project ID. Do NOT use the project name.",
|
|
151
151
|
},
|
|
152
152
|
taskId: {
|
|
153
153
|
type: "string",
|
|
154
|
-
description: "The
|
|
154
|
+
description: "The technical UUID of the task (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_tasks to get the task ID.",
|
|
155
155
|
},
|
|
156
156
|
title: {
|
|
157
157
|
type: "string",
|
|
@@ -182,15 +182,15 @@ export function getBDDScenarioTools() {
|
|
|
182
182
|
properties: {
|
|
183
183
|
projectId: {
|
|
184
184
|
type: "string",
|
|
185
|
-
description: "The
|
|
185
|
+
description: "The technical UUID of the project (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_projects to get the project ID. Do NOT use the project name.",
|
|
186
186
|
},
|
|
187
187
|
taskId: {
|
|
188
188
|
type: "string",
|
|
189
|
-
description: "The
|
|
189
|
+
description: "The technical UUID of the task (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_tasks to get the task ID.",
|
|
190
190
|
},
|
|
191
191
|
scenarioId: {
|
|
192
192
|
type: "string",
|
|
193
|
-
description: "The
|
|
193
|
+
description: "The technical UUID of the BDD scenario (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_bdd_scenarios to get the scenario ID.",
|
|
194
194
|
},
|
|
195
195
|
},
|
|
196
196
|
required: ["projectId", "taskId", "scenarioId"],
|
|
@@ -204,15 +204,15 @@ export function getBDDScenarioTools() {
|
|
|
204
204
|
properties: {
|
|
205
205
|
projectId: {
|
|
206
206
|
type: "string",
|
|
207
|
-
description: "The
|
|
207
|
+
description: "The technical UUID of the project (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_projects to get the project ID. Do NOT use the project name.",
|
|
208
208
|
},
|
|
209
209
|
taskId: {
|
|
210
210
|
type: "string",
|
|
211
|
-
description: "The
|
|
211
|
+
description: "The technical UUID of the task (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_tasks to get the task ID.",
|
|
212
212
|
},
|
|
213
213
|
scenarioId: {
|
|
214
214
|
type: "string",
|
|
215
|
-
description: "The
|
|
215
|
+
description: "The technical UUID of the BDD scenario (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_bdd_scenarios to get the scenario ID.",
|
|
216
216
|
},
|
|
217
217
|
title: {
|
|
218
218
|
type: "string",
|
|
@@ -243,15 +243,15 @@ export function getBDDScenarioTools() {
|
|
|
243
243
|
properties: {
|
|
244
244
|
projectId: {
|
|
245
245
|
type: "string",
|
|
246
|
-
description: "The
|
|
246
|
+
description: "The technical UUID of the project (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_projects to get the project ID. Do NOT use the project name.",
|
|
247
247
|
},
|
|
248
248
|
taskId: {
|
|
249
249
|
type: "string",
|
|
250
|
-
description: "The
|
|
250
|
+
description: "The technical UUID of the task (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_tasks to get the task ID.",
|
|
251
251
|
},
|
|
252
252
|
scenarioId: {
|
|
253
253
|
type: "string",
|
|
254
|
-
description: "The
|
|
254
|
+
description: "The technical UUID of the BDD scenario (e.g., '550e8400-e29b-41d4-a716-446655440000'). Use list_bdd_scenarios to get the scenario ID.",
|
|
255
255
|
},
|
|
256
256
|
},
|
|
257
257
|
required: ["projectId", "taskId", "scenarioId"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attachment-tools.js","sourceRoot":"","sources":["../../src/tools/attachment-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACxB,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACxB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CAClB,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,8FAA8F;IAC9F,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,8FAA8F;IAC9F,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC3B,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,kBAAkB;IACjC,OAAO;QACN;YACC,IAAI,EAAE,uBAAuB;YAC7B,WAAW,EAAE,iCAAiC;YAC9C,WAAW,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACX,SAAS,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"attachment-tools.js","sourceRoot":"","sources":["../../src/tools/attachment-tools.ts"],"names":[],"mappings":"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"}
|