@agllama/mcp 0.1.0 → 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 +161 -162
- package/dist/api-client.d.ts +45 -2
- package/dist/api-client.d.ts.map +1 -1
- package/dist/api-client.js +108 -2
- package/dist/api-client.js.map +1 -1
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +140 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/backlog.d.ts +13 -7
- package/dist/tools/backlog.d.ts.map +1 -1
- package/dist/tools/backlog.js +59 -9
- package/dist/tools/backlog.js.map +1 -1
- package/dist/tools/boardConfig.d.ts +65 -0
- package/dist/tools/boardConfig.d.ts.map +1 -0
- package/dist/tools/boardConfig.js +150 -0
- package/dist/tools/boardConfig.js.map +1 -0
- package/dist/tools/boardTemplates.d.ts +47 -0
- package/dist/tools/boardTemplates.d.ts.map +1 -0
- package/dist/tools/boardTemplates.js +119 -0
- package/dist/tools/boardTemplates.js.map +1 -0
- package/dist/tools/boards.d.ts +20 -20
- package/dist/tools/boards.d.ts.map +1 -1
- package/dist/tools/boards.js +121 -19
- package/dist/tools/boards.js.map +1 -1
- package/dist/tools/comments.d.ts +24 -24
- package/dist/tools/comments.d.ts.map +1 -1
- package/dist/tools/comments.js +136 -23
- package/dist/tools/comments.js.map +1 -1
- package/dist/tools/connect.d.ts.map +1 -1
- package/dist/tools/connect.js +7 -18
- package/dist/tools/connect.js.map +1 -1
- package/dist/tools/context.d.ts +10 -7
- package/dist/tools/context.d.ts.map +1 -1
- package/dist/tools/context.js +57 -7
- package/dist/tools/context.js.map +1 -1
- package/dist/tools/documents.d.ts +99 -0
- package/dist/tools/documents.d.ts.map +1 -0
- package/dist/tools/documents.js +252 -0
- package/dist/tools/documents.js.map +1 -0
- package/dist/tools/help.d.ts.map +1 -1
- package/dist/tools/help.js +70 -6
- package/dist/tools/help.js.map +1 -1
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/issueLinks.d.ts +12 -12
- package/dist/tools/issueLinks.d.ts.map +1 -1
- package/dist/tools/issueLinks.js +69 -12
- package/dist/tools/issueLinks.js.map +1 -1
- package/dist/tools/issues.d.ts +208 -28
- package/dist/tools/issues.d.ts.map +1 -1
- package/dist/tools/issues.js +483 -35
- package/dist/tools/issues.js.map +1 -1
- package/dist/tools/labels.d.ts +18 -18
- package/dist/tools/labels.d.ts.map +1 -1
- package/dist/tools/labels.js +102 -17
- package/dist/tools/labels.js.map +1 -1
- package/dist/tools/members.d.ts.map +1 -1
- package/dist/tools/members.js +2 -2
- package/dist/tools/members.js.map +1 -1
- package/dist/tools/organizations.d.ts.map +1 -1
- package/dist/tools/organizations.js +8 -8
- package/dist/tools/organizations.js.map +1 -1
- package/dist/tools/projects.d.ts.map +1 -1
- package/dist/tools/projects.js +11 -11
- package/dist/tools/projects.js.map +1 -1
- package/dist/tools/search.d.ts +4 -4
- package/dist/tools/search.d.ts.map +1 -1
- package/dist/tools/search.js +28 -5
- package/dist/tools/search.js.map +1 -1
- package/dist/tools/session.d.ts +38 -0
- package/dist/tools/session.d.ts.map +1 -0
- package/dist/tools/session.js +158 -0
- package/dist/tools/session.js.map +1 -0
- package/dist/tools/sprints.d.ts +18 -18
- package/dist/tools/sprints.d.ts.map +1 -1
- package/dist/tools/sprints.js +115 -30
- package/dist/tools/sprints.js.map +1 -1
- package/dist/tools/status.d.ts +6 -6
- package/dist/tools/status.d.ts.map +1 -1
- package/dist/tools/status.js +45 -8
- package/dist/tools/status.js.map +1 -1
- package/dist/tools/workflows.d.ts.map +1 -1
- package/dist/tools/workflows.js +19 -19
- package/dist/tools/workflows.js.map +1 -1
- package/dist/types.d.ts +123 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/column-instructions.d.ts +21 -0
- package/dist/utils/column-instructions.d.ts.map +1 -0
- package/dist/utils/column-instructions.js +54 -0
- package/dist/utils/column-instructions.js.map +1 -0
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -1,19 +1,45 @@
|
|
|
1
1
|
# @agllama/mcp
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
[](https://www.npmjs.com/package/@agllama/mcp)
|
|
4
|
+
[](https://opensource.org/licenses/MIT)
|
|
5
|
+
[](https://nodejs.org)
|
|
6
|
+
|
|
7
|
+
Connect Claude AI to [AG-Llama](https://agllama.onrender.com) project management using the Model Context Protocol (MCP). Manage issues, sprints, and boards directly from your AI assistant.
|
|
8
|
+
|
|
9
|
+
## What is AG-Llama?
|
|
10
|
+
|
|
11
|
+
AG-Llama is a modern, lightweight Jira alternative for agile teams. This MCP server lets Claude AI interact with your projects, create issues, manage sprints, and automate workflows without leaving your conversation.
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
No installation required! Run directly with `npx`:
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
npx @agllama/mcp
|
|
19
|
+
```
|
|
4
20
|
|
|
5
21
|
## Quick Start
|
|
6
22
|
|
|
7
23
|
### 1. Get Your API Key
|
|
8
24
|
|
|
9
|
-
1. Sign up at [agllama
|
|
10
|
-
2.
|
|
11
|
-
3. Click "Generate API Key"
|
|
12
|
-
4. Copy the key (
|
|
25
|
+
1. Sign up at **[agllama.onrender.com](https://agllama.onrender.com)**
|
|
26
|
+
2. Navigate to **Settings > API Keys**
|
|
27
|
+
3. Click **"Generate API Key"**
|
|
28
|
+
4. Copy the key (shown only once)
|
|
29
|
+
|
|
30
|
+
### 2. Configure Claude Desktop
|
|
31
|
+
|
|
32
|
+
Add the MCP server to your Claude Desktop configuration:
|
|
33
|
+
|
|
34
|
+
#### For Claude Desktop App
|
|
13
35
|
|
|
14
|
-
|
|
36
|
+
Edit your Claude Desktop config file:
|
|
15
37
|
|
|
16
|
-
|
|
38
|
+
- **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
|
|
39
|
+
- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
|
|
40
|
+
- **Linux**: `~/.config/Claude/claude_desktop_config.json`
|
|
41
|
+
|
|
42
|
+
Add this configuration:
|
|
17
43
|
|
|
18
44
|
```json
|
|
19
45
|
{
|
|
@@ -23,7 +49,28 @@ Add to your project's `.mcp.json` or `~/.claude.json`:
|
|
|
23
49
|
"args": ["-y", "@agllama/mcp"],
|
|
24
50
|
"env": {
|
|
25
51
|
"LLAMA_API_URL": "https://agllama-api.onrender.com",
|
|
26
|
-
"LLAMA_API_KEY": "
|
|
52
|
+
"LLAMA_API_KEY": "llm_xxxxxxxx"
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Replace `llm_xxxxxxxx` with your actual API key.
|
|
60
|
+
|
|
61
|
+
#### For Claude Code (CLI)
|
|
62
|
+
|
|
63
|
+
If you're using Claude Code, add to your project's `.mcp.json`:
|
|
64
|
+
|
|
65
|
+
```json
|
|
66
|
+
{
|
|
67
|
+
"mcpServers": {
|
|
68
|
+
"llama": {
|
|
69
|
+
"command": "npx",
|
|
70
|
+
"args": ["-y", "@agllama/mcp"],
|
|
71
|
+
"env": {
|
|
72
|
+
"LLAMA_API_URL": "https://agllama-api.onrender.com",
|
|
73
|
+
"LLAMA_API_KEY": "llm_xxxxxxxx"
|
|
27
74
|
}
|
|
28
75
|
}
|
|
29
76
|
}
|
|
@@ -36,214 +83,166 @@ Or use the Claude CLI:
|
|
|
36
83
|
claude mcp add llama -- npx -y @agllama/mcp
|
|
37
84
|
```
|
|
38
85
|
|
|
39
|
-
Then set
|
|
86
|
+
Then set environment variables:
|
|
40
87
|
|
|
41
88
|
```bash
|
|
42
89
|
export LLAMA_API_URL=https://agllama-api.onrender.com
|
|
43
90
|
export LLAMA_API_KEY=llm_xxxxxxxx
|
|
44
91
|
```
|
|
45
92
|
|
|
46
|
-
### 3.
|
|
47
|
-
|
|
48
|
-
In Claude Code, try:
|
|
93
|
+
### 3. Restart Claude
|
|
49
94
|
|
|
50
|
-
|
|
51
|
-
Use llama to test the connection
|
|
52
|
-
```
|
|
95
|
+
Restart Claude Desktop or Claude Code to load the MCP server.
|
|
53
96
|
|
|
54
|
-
|
|
97
|
+
### 4. Test the Connection
|
|
55
98
|
|
|
56
|
-
|
|
99
|
+
In Claude, try:
|
|
57
100
|
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
"mcpServers": {
|
|
61
|
-
"llama": {
|
|
62
|
-
"command": "npx",
|
|
63
|
-
"args": ["-y", "@agllama/mcp"],
|
|
64
|
-
"env": {
|
|
65
|
-
"LLAMA_API_URL": "http://localhost:3001",
|
|
66
|
-
"LLAMA_API_KEY": "your-api-key-here"
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
101
|
+
```
|
|
102
|
+
Use llama to test the connection
|
|
71
103
|
```
|
|
72
104
|
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
### Connection & Context
|
|
76
|
-
|
|
77
|
-
| Tool | Description |
|
|
78
|
-
|------|-------------|
|
|
79
|
-
| `llama_connect` | Test connection and get user info |
|
|
80
|
-
| `llama_context` | Get project snapshot (sprint, backlog, statuses, members) |
|
|
81
|
-
| `llama_help` | Get help on available tools |
|
|
82
|
-
|
|
83
|
-
### Organizations
|
|
84
|
-
|
|
85
|
-
| Tool | Description |
|
|
86
|
-
|------|-------------|
|
|
87
|
-
| `llama_list_organizations` | List all organizations you have access to |
|
|
88
|
-
| `llama_get_organization` | Get organization details by slug |
|
|
89
|
-
| `llama_create_organization` | Create a new organization |
|
|
90
|
-
|
|
91
|
-
### Projects
|
|
92
|
-
|
|
93
|
-
| Tool | Description |
|
|
94
|
-
|------|-------------|
|
|
95
|
-
| `llama_list_projects` | List all projects in an organization |
|
|
96
|
-
| `llama_get_project` | Get project details by key |
|
|
97
|
-
| `llama_create_project` | Create a new project |
|
|
98
|
-
| `llama_update_project` | Update project name/description |
|
|
99
|
-
|
|
100
|
-
### Issues
|
|
101
|
-
|
|
102
|
-
| Tool | Description |
|
|
103
|
-
|------|-------------|
|
|
104
|
-
| `llama_get_issue` | Get full issue details by key |
|
|
105
|
-
| `llama_create_issue` | Create a new issue (EPIC, STORY, TASK, BUG, SUBTASK) |
|
|
106
|
-
| `llama_update_issue` | Update issue fields |
|
|
107
|
-
| `llama_delete_issue` | Soft-delete an issue |
|
|
108
|
-
| `llama_update_status` | Move issue to different status |
|
|
109
|
-
|
|
110
|
-
### Issue Links
|
|
111
|
-
|
|
112
|
-
| Tool | Description |
|
|
113
|
-
|------|-------------|
|
|
114
|
-
| `llama_create_issue_link` | Link issues (BLOCKS, RELATES_TO, DUPLICATES, etc.) |
|
|
115
|
-
| `llama_delete_issue_link` | Remove an issue link |
|
|
116
|
-
|
|
117
|
-
### Boards
|
|
118
|
-
|
|
119
|
-
| Tool | Description |
|
|
120
|
-
|------|-------------|
|
|
121
|
-
| `llama_list_boards` | List all boards in a project |
|
|
122
|
-
| `llama_get_board` | Get board with columns and issues |
|
|
123
|
-
| `llama_move_issue_on_board` | Move issue between columns |
|
|
124
|
-
|
|
125
|
-
### Backlog & Sprints
|
|
126
|
-
|
|
127
|
-
| Tool | Description |
|
|
128
|
-
|------|-------------|
|
|
129
|
-
| `llama_get_backlog` | Get all issues not in a sprint |
|
|
130
|
-
| `llama_list_sprints` | List all sprints |
|
|
131
|
-
| `llama_get_sprint` | Get sprint details |
|
|
132
|
-
| `llama_create_sprint` | Create a new sprint |
|
|
133
|
-
| `llama_start_sprint` | Start a planned sprint |
|
|
134
|
-
| `llama_complete_sprint` | Complete an active sprint |
|
|
135
|
-
| `llama_update_sprint` | Update sprint name/goal/dates |
|
|
136
|
-
| `llama_delete_sprint` | Delete a sprint |
|
|
137
|
-
| `llama_add_to_sprint` | Move issues to/from sprint |
|
|
138
|
-
|
|
139
|
-
### Comments
|
|
140
|
-
|
|
141
|
-
| Tool | Description |
|
|
142
|
-
|------|-------------|
|
|
143
|
-
| `llama_list_comments` | List comments on an issue |
|
|
144
|
-
| `llama_add_comment` | Add a comment to an issue |
|
|
145
|
-
| `llama_update_comment` | Update a comment |
|
|
146
|
-
| `llama_delete_comment` | Delete a comment |
|
|
147
|
-
|
|
148
|
-
### Labels
|
|
149
|
-
|
|
150
|
-
| Tool | Description |
|
|
151
|
-
|------|-------------|
|
|
152
|
-
| `llama_list_labels` | List all labels in a project |
|
|
153
|
-
| `llama_create_label` | Create a new label |
|
|
154
|
-
| `llama_delete_label` | Delete a label |
|
|
155
|
-
|
|
156
|
-
### Members
|
|
157
|
-
|
|
158
|
-
| Tool | Description |
|
|
159
|
-
|------|-------------|
|
|
160
|
-
| `llama_list_members` | List organization members |
|
|
161
|
-
|
|
162
|
-
### Workflows
|
|
163
|
-
|
|
164
|
-
| Tool | Description |
|
|
165
|
-
|------|-------------|
|
|
166
|
-
| `llama_list_workflows` | List available Claude workflows |
|
|
167
|
-
| `llama_get_workflow` | Get workflow details |
|
|
168
|
-
| `llama_create_workflow` | Create a reusable workflow |
|
|
169
|
-
| `llama_update_workflow` | Update a workflow |
|
|
170
|
-
| `llama_run_workflow` | Execute a workflow |
|
|
171
|
-
| `llama_suggest_workflow` | Find workflows matching an intent |
|
|
172
|
-
|
|
173
|
-
### Search
|
|
174
|
-
|
|
175
|
-
| Tool | Description |
|
|
176
|
-
|------|-------------|
|
|
177
|
-
| `llama_search` | Search issues with filters |
|
|
105
|
+
You should see your user info and available organizations.
|
|
178
106
|
|
|
179
107
|
## Usage Examples
|
|
180
108
|
|
|
181
109
|
### Get Project Overview
|
|
182
110
|
|
|
183
111
|
```
|
|
184
|
-
Use llama to get the context for
|
|
112
|
+
Use llama to get the context for my-team/PROJ
|
|
185
113
|
```
|
|
186
114
|
|
|
187
|
-
|
|
115
|
+
Claude will show you the active sprint, backlog, workflow statuses, and team members.
|
|
116
|
+
|
|
117
|
+
### Create Issues
|
|
188
118
|
|
|
189
119
|
```
|
|
190
|
-
Use llama to create a
|
|
120
|
+
Use llama to create a high-priority story in my-team/PROJ:
|
|
191
121
|
- Summary: "Add user authentication"
|
|
192
|
-
- Priority: HIGH
|
|
193
122
|
- Description: "Implement JWT-based auth with refresh tokens"
|
|
194
123
|
```
|
|
195
124
|
|
|
196
125
|
### Manage Sprints
|
|
197
126
|
|
|
198
127
|
```
|
|
199
|
-
Use llama to
|
|
128
|
+
Use llama to:
|
|
129
|
+
1. Show me the backlog for my-team/PROJ
|
|
130
|
+
2. Create a new sprint called "Sprint 5"
|
|
131
|
+
3. Add the top 3 highest-priority issues to it
|
|
132
|
+
4. Start the sprint
|
|
200
133
|
```
|
|
201
134
|
|
|
202
135
|
### Search Issues
|
|
203
136
|
|
|
204
137
|
```
|
|
205
|
-
Use llama to find all
|
|
138
|
+
Use llama to find all critical bugs assigned to me in my-team
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
### Board Operations
|
|
142
|
+
|
|
143
|
+
```
|
|
144
|
+
Use llama to show me the board for my-team/PROJ
|
|
206
145
|
```
|
|
207
146
|
|
|
208
|
-
###
|
|
147
|
+
### Automate Workflows
|
|
209
148
|
|
|
210
149
|
```
|
|
211
150
|
Use llama to suggest a workflow for "sprint planning"
|
|
212
151
|
```
|
|
213
152
|
|
|
153
|
+
Claude will find and execute saved workflows from your organization.
|
|
154
|
+
|
|
155
|
+
## Available Tools
|
|
156
|
+
|
|
157
|
+
The MCP server provides 40+ tools organized into categories:
|
|
158
|
+
|
|
159
|
+
### Core Operations
|
|
160
|
+
- **Context & Connection**: Test connection, get project snapshots
|
|
161
|
+
- **Organizations**: List, create, and manage orgs
|
|
162
|
+
- **Projects**: Create and configure projects
|
|
163
|
+
- **Issues**: Full CRUD operations, status transitions, assignments
|
|
164
|
+
- **Sprints**: Create, start, complete sprints, manage sprint backlog
|
|
165
|
+
- **Boards**: View kanban boards, move issues between columns
|
|
166
|
+
|
|
167
|
+
### Collaboration
|
|
168
|
+
- **Comments**: Add, update, delete comments on issues
|
|
169
|
+
- **Issue Links**: Create relationships (blocks, relates to, duplicates)
|
|
170
|
+
- **Labels**: Create and manage issue labels
|
|
171
|
+
- **Members**: List team members
|
|
172
|
+
|
|
173
|
+
### Automation
|
|
174
|
+
- **Search**: Find issues with filters
|
|
175
|
+
- **Workflows**: Create and run reusable Claude workflows
|
|
176
|
+
- **Help**: Built-in documentation (`llama_help`)
|
|
177
|
+
|
|
178
|
+
See the [full tool reference](https://github.com/willsmanley/JiraKiller/blob/master/packages/mcp-server/MCP_TOOLS.md) for detailed documentation.
|
|
179
|
+
|
|
214
180
|
## Environment Variables
|
|
215
181
|
|
|
216
182
|
| Variable | Required | Description |
|
|
217
183
|
|----------|----------|-------------|
|
|
218
|
-
| `LLAMA_API_URL` | Yes |
|
|
219
|
-
| `LLAMA_API_KEY` | Yes | Your API key from Settings |
|
|
184
|
+
| `LLAMA_API_URL` | Yes | API endpoint (production: `https://agllama-api.onrender.com`) |
|
|
185
|
+
| `LLAMA_API_KEY` | Yes | Your API key from [AG-Llama Settings](https://agllama.onrender.com/settings/api-keys) |
|
|
186
|
+
|
|
187
|
+
## Self-Hosted Setup
|
|
220
188
|
|
|
221
|
-
|
|
189
|
+
Running your own AG-Llama instance? Configure the MCP server with your local or custom API URL:
|
|
222
190
|
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
191
|
+
```json
|
|
192
|
+
{
|
|
193
|
+
"mcpServers": {
|
|
194
|
+
"llama": {
|
|
195
|
+
"command": "npx",
|
|
196
|
+
"args": ["-y", "@agllama/mcp"],
|
|
197
|
+
"env": {
|
|
198
|
+
"LLAMA_API_URL": "http://localhost:3001",
|
|
199
|
+
"LLAMA_API_KEY": "your-api-key-here"
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
```
|
|
227
205
|
|
|
228
|
-
|
|
229
|
-
pnpm install
|
|
206
|
+
## Troubleshooting
|
|
230
207
|
|
|
231
|
-
|
|
232
|
-
|
|
208
|
+
### "Connection failed" error
|
|
209
|
+
- Verify your API key is correct
|
|
210
|
+
- Check that `LLAMA_API_URL` is set to `https://agllama-api.onrender.com`
|
|
211
|
+
- Ensure you've restarted Claude after configuration changes
|
|
233
212
|
|
|
234
|
-
|
|
235
|
-
|
|
213
|
+
### "Invalid API key" error
|
|
214
|
+
- Generate a new API key at [agllama.onrender.com/settings/api-keys](https://agllama.onrender.com/settings/api-keys)
|
|
215
|
+
- Make sure the key starts with `llm_`
|
|
236
216
|
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
217
|
+
### Tools not showing up
|
|
218
|
+
- Confirm the MCP server is configured correctly in Claude Desktop config
|
|
219
|
+
- Check Claude's MCP server logs for errors
|
|
220
|
+
- Try running `npx @agllama/mcp` directly to test
|
|
221
|
+
|
|
222
|
+
### Rate limiting
|
|
223
|
+
The production API has rate limits. If you're hitting limits, consider:
|
|
224
|
+
- Batching operations
|
|
225
|
+
- Using project context (`llama_context`) to cache information
|
|
226
|
+
- Self-hosting AG-Llama for unlimited access
|
|
240
227
|
|
|
241
228
|
## Links
|
|
242
229
|
|
|
243
|
-
-
|
|
244
|
-
- [
|
|
245
|
-
- [
|
|
230
|
+
- **Web App**: [agllama.onrender.com](https://agllama.onrender.com)
|
|
231
|
+
- **API Documentation**: [agllama-api.onrender.com](https://agllama-api.onrender.com)
|
|
232
|
+
- **GitHub Repository**: [github.com/willsmanley/JiraKiller](https://github.com/willsmanley/JiraKiller)
|
|
233
|
+
- **Issue Tracker**: [github.com/willsmanley/JiraKiller/issues](https://github.com/willsmanley/JiraKiller/issues)
|
|
234
|
+
- **Full Tool Reference**: [MCP_TOOLS.md](https://github.com/willsmanley/JiraKiller/blob/master/packages/mcp-server/MCP_TOOLS.md)
|
|
246
235
|
|
|
247
236
|
## License
|
|
248
237
|
|
|
249
|
-
MIT
|
|
238
|
+
MIT License - see [LICENSE](LICENSE) file for details.
|
|
239
|
+
|
|
240
|
+
## Support
|
|
241
|
+
|
|
242
|
+
- **Bug Reports**: [GitHub Issues](https://github.com/willsmanley/JiraKiller/issues)
|
|
243
|
+
- **Feature Requests**: [GitHub Issues](https://github.com/willsmanley/JiraKiller/issues)
|
|
244
|
+
- **Questions**: Use the `llama_help` tool in Claude for built-in documentation
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
Built with the [Model Context Protocol](https://modelcontextprotocol.io) by Anthropic.
|
package/dist/api-client.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { MCPContextResponse, MCPUserInfo, MCPIssueDetail, MCPIssueSummary, MCPSprintDetail, CreateIssueInput, UpdateIssueInput, CreateSprintInput, SearchFilters, SearchResult, MCPOrganization, CreateOrganizationInput, MCPProject, CreateProjectInput, UpdateProjectInput, MCPBoard, MoveIssueInput, MCPComment, CreateCommentInput, MCPLabel, CreateLabelInput, MCPMember, MCPIssueLink, CreateIssueLinkInput, StartSprintInput, CompleteSprintInput, MCPWorkflowSummary, MCPWorkflowDetail, MCPSuggestedWorkflow, MCPWorkflowExecution, CreateClaudeWorkflowInput, UpdateClaudeWorkflowInput } from './types.js';
|
|
1
|
+
import { MCPContextResponse, MCPUserInfo, MCPIssueDetail, MCPIssueSummary, MCPSprintDetail, CreateIssueInput, UpdateIssueInput, BatchCreateIssueInput, BatchUpdateIssueInput, BatchResult, CreateSprintInput, SearchFilters, SearchResult, MCPOrganization, CreateOrganizationInput, MCPProject, CreateProjectInput, UpdateProjectInput, MCPBoard, MoveIssueInput, MCPComment, CreateCommentInput, MCPLabel, CreateLabelInput, MCPMember, MCPIssueLink, CreateIssueLinkInput, StartSprintInput, CompleteSprintInput, MCPWorkflowSummary, MCPWorkflowDetail, MCPSuggestedWorkflow, MCPWorkflowExecution, CreateClaudeWorkflowInput, UpdateClaudeWorkflowInput, MCPDocumentSummary, MCPDocumentDetail, CreateDocumentInput, UpdateDocumentInput, ListDocumentsFilters, MCPColumnConfiguration, UpdateColumnConfigInput, McpSessionResponse, SetSessionInput } from './types.js';
|
|
2
2
|
export declare class LlamaApiError extends Error {
|
|
3
3
|
statusCode: number;
|
|
4
4
|
constructor(statusCode: number, message: string);
|
|
@@ -24,6 +24,18 @@ export declare class LlamaApiClient {
|
|
|
24
24
|
createIssue(orgSlug: string, projectKey: string, input: CreateIssueInput): Promise<MCPIssueDetail>;
|
|
25
25
|
updateIssue(orgSlug: string, projectKey: string, issueKey: string, input: UpdateIssueInput): Promise<MCPIssueDetail>;
|
|
26
26
|
deleteIssue(orgSlug: string, projectKey: string, issueKey: string): Promise<void>;
|
|
27
|
+
batchCreateIssues(orgSlug: string, projectKey: string, issues: BatchCreateIssueInput[]): Promise<BatchResult<{
|
|
28
|
+
key: string;
|
|
29
|
+
summary: string;
|
|
30
|
+
}>>;
|
|
31
|
+
batchUpdateStatus(orgSlug: string, projectKey: string, issueKeys: string[], statusId: string): Promise<BatchResult<{
|
|
32
|
+
key: string;
|
|
33
|
+
status: string;
|
|
34
|
+
}>>;
|
|
35
|
+
batchUpdateIssues(orgSlug: string, projectKey: string, updates: BatchUpdateIssueInput[]): Promise<BatchResult<{
|
|
36
|
+
key: string;
|
|
37
|
+
changes: string[];
|
|
38
|
+
}>>;
|
|
27
39
|
listSprints(orgSlug: string, projectKey: string): Promise<MCPSprintDetail[]>;
|
|
28
40
|
createSprint(orgSlug: string, projectKey: string, input: CreateSprintInput): Promise<MCPSprintDetail>;
|
|
29
41
|
addIssuesToSprint(orgSlug: string, projectKey: string, issueKeys: string[], sprintId: string | null): Promise<MCPIssueSummary[]>;
|
|
@@ -38,7 +50,7 @@ export declare class LlamaApiClient {
|
|
|
38
50
|
listBoards(orgSlug: string, projectKey: string): Promise<MCPBoard[]>;
|
|
39
51
|
getBoard(orgSlug: string, projectKey: string, boardId: string): Promise<MCPBoard>;
|
|
40
52
|
moveIssueOnBoard(orgSlug: string, projectKey: string, boardId: string, input: MoveIssueInput): Promise<void>;
|
|
41
|
-
getBacklog(orgSlug: string, projectKey: string): Promise<{
|
|
53
|
+
getBacklog(orgSlug: string, projectKey: string, limit?: number, offset?: number): Promise<{
|
|
42
54
|
issues: MCPIssueSummary[];
|
|
43
55
|
total: number;
|
|
44
56
|
}>;
|
|
@@ -65,6 +77,37 @@ export declare class LlamaApiClient {
|
|
|
65
77
|
deleteClaudeWorkflow(orgSlug: string, projectKey: string, workflowId: string): Promise<void>;
|
|
66
78
|
suggestClaudeWorkflows(orgSlug: string, projectKey: string, intent: string): Promise<MCPSuggestedWorkflow[]>;
|
|
67
79
|
runClaudeWorkflow(orgSlug: string, projectKey: string, workflowId: string, parameters: Record<string, string>): Promise<MCPWorkflowExecution>;
|
|
80
|
+
listOrgDocuments(orgSlug: string, filters?: ListDocumentsFilters): Promise<MCPDocumentSummary[]>;
|
|
81
|
+
listProjectDocuments(orgSlug: string, projectKey: string, filters?: ListDocumentsFilters): Promise<MCPDocumentSummary[]>;
|
|
82
|
+
getDocument(documentId: string): Promise<MCPDocumentDetail>;
|
|
83
|
+
createOrgDocument(orgSlug: string, input: CreateDocumentInput): Promise<MCPDocumentDetail>;
|
|
84
|
+
createProjectDocument(orgSlug: string, projectKey: string, input: CreateDocumentInput): Promise<MCPDocumentDetail>;
|
|
85
|
+
updateDocument(documentId: string, input: UpdateDocumentInput): Promise<MCPDocumentDetail>;
|
|
86
|
+
deleteDocument(documentId: string): Promise<void>;
|
|
87
|
+
listBoardTemplates(orgSlug: string): Promise<{
|
|
88
|
+
id: string;
|
|
89
|
+
name: string;
|
|
90
|
+
description: string | null;
|
|
91
|
+
isDefault: boolean;
|
|
92
|
+
columnCount: number;
|
|
93
|
+
}[]>;
|
|
94
|
+
applyBoardTemplate(orgSlug: string, templateId: string, projectKey: string): Promise<{
|
|
95
|
+
message: string;
|
|
96
|
+
templateName: string;
|
|
97
|
+
projectKey: string;
|
|
98
|
+
columnsUpdated: number;
|
|
99
|
+
}>;
|
|
100
|
+
cloneBoardConfiguration(orgSlug: string, sourceProjectKey: string, targetProjectKey: string): Promise<{
|
|
101
|
+
message: string;
|
|
102
|
+
columnsUpdated: number;
|
|
103
|
+
}>;
|
|
104
|
+
getBoardConfiguration(orgSlug: string, projectKey: string): Promise<MCPBoard>;
|
|
105
|
+
updateColumnConfiguration(boardId: string, columnId: string, input: UpdateColumnConfigInput): Promise<MCPColumnConfiguration>;
|
|
106
|
+
getColumnConfiguration(boardId: string, columnId: string): Promise<MCPColumnConfiguration | null>;
|
|
107
|
+
getSession(): Promise<McpSessionResponse | null>;
|
|
108
|
+
setSession(input: SetSessionInput): Promise<McpSessionResponse>;
|
|
109
|
+
clearSession(): Promise<void>;
|
|
110
|
+
recordToolCall(toolName: string, params: object): Promise<void>;
|
|
68
111
|
}
|
|
69
112
|
export declare function getApiClient(): LlamaApiClient;
|
|
70
113
|
export declare function resetApiClient(): void;
|
package/dist/api-client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,YAAY,EACZ,eAAe,EACf,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,kBAAkB,EAClB,QAAQ,EACR,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,QAAQ,EACR,gBAAgB,EAChB,SAAS,EACT,YAAY,EACZ,oBAAoB,EAEpB,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,
|
|
1
|
+
{"version":3,"file":"api-client.d.ts","sourceRoot":"","sources":["../src/api-client.ts"],"names":[],"mappings":"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"}
|
package/dist/api-client.js
CHANGED
|
@@ -68,6 +68,18 @@ export class LlamaApiClient {
|
|
|
68
68
|
await this.request('DELETE', `/api/organizations/${orgSlug}/projects/${projectKey}/issues/${issueKey}`);
|
|
69
69
|
}
|
|
70
70
|
// ============================================
|
|
71
|
+
// Batch Operations
|
|
72
|
+
// ============================================
|
|
73
|
+
async batchCreateIssues(orgSlug, projectKey, issues) {
|
|
74
|
+
return this.request('POST', `/api/organizations/${orgSlug}/projects/${projectKey}/issues/batch/create`, { issues });
|
|
75
|
+
}
|
|
76
|
+
async batchUpdateStatus(orgSlug, projectKey, issueKeys, statusId) {
|
|
77
|
+
return this.request('POST', `/api/organizations/${orgSlug}/projects/${projectKey}/issues/batch/status`, { issueKeys, statusId });
|
|
78
|
+
}
|
|
79
|
+
async batchUpdateIssues(orgSlug, projectKey, updates) {
|
|
80
|
+
return this.request('POST', `/api/organizations/${orgSlug}/projects/${projectKey}/issues/batch/update`, { updates });
|
|
81
|
+
}
|
|
82
|
+
// ============================================
|
|
71
83
|
// Sprints
|
|
72
84
|
// ============================================
|
|
73
85
|
async listSprints(orgSlug, projectKey) {
|
|
@@ -186,9 +198,12 @@ export class LlamaApiClient {
|
|
|
186
198
|
// ============================================
|
|
187
199
|
// Backlog
|
|
188
200
|
// ============================================
|
|
189
|
-
async getBacklog(orgSlug, projectKey) {
|
|
201
|
+
async getBacklog(orgSlug, projectKey, limit = 20, offset = 0) {
|
|
190
202
|
// Make raw request to handle paginated response format
|
|
191
|
-
const
|
|
203
|
+
const params = new URLSearchParams();
|
|
204
|
+
params.set('limit', limit.toString());
|
|
205
|
+
params.set('offset', offset.toString());
|
|
206
|
+
const url = `${this.baseUrl}/api/organizations/${orgSlug}/projects/${projectKey}/backlog?${params.toString()}`;
|
|
192
207
|
const headers = {
|
|
193
208
|
'X-API-Key': this.apiKey,
|
|
194
209
|
'Content-Type': 'application/json',
|
|
@@ -296,6 +311,97 @@ export class LlamaApiClient {
|
|
|
296
311
|
async runClaudeWorkflow(orgSlug, projectKey, workflowId, parameters) {
|
|
297
312
|
return this.request('POST', `/api/organizations/${orgSlug}/projects/${projectKey}/claude-workflows/${workflowId}/run`, { parameters });
|
|
298
313
|
}
|
|
314
|
+
// ============================================
|
|
315
|
+
// Documents
|
|
316
|
+
// ============================================
|
|
317
|
+
async listOrgDocuments(orgSlug, filters) {
|
|
318
|
+
const params = new URLSearchParams();
|
|
319
|
+
if (filters?.type)
|
|
320
|
+
params.set('type', filters.type);
|
|
321
|
+
if (filters?.status)
|
|
322
|
+
params.set('status', filters.status);
|
|
323
|
+
if (filters?.search)
|
|
324
|
+
params.set('search', filters.search);
|
|
325
|
+
const queryString = params.toString();
|
|
326
|
+
return this.request('GET', `/api/organizations/${orgSlug}/documents${queryString ? `?${queryString}` : ''}`);
|
|
327
|
+
}
|
|
328
|
+
async listProjectDocuments(orgSlug, projectKey, filters) {
|
|
329
|
+
const params = new URLSearchParams();
|
|
330
|
+
if (filters?.type)
|
|
331
|
+
params.set('type', filters.type);
|
|
332
|
+
if (filters?.status)
|
|
333
|
+
params.set('status', filters.status);
|
|
334
|
+
if (filters?.search)
|
|
335
|
+
params.set('search', filters.search);
|
|
336
|
+
const queryString = params.toString();
|
|
337
|
+
return this.request('GET', `/api/organizations/${orgSlug}/projects/${projectKey}/documents${queryString ? `?${queryString}` : ''}`);
|
|
338
|
+
}
|
|
339
|
+
async getDocument(documentId) {
|
|
340
|
+
return this.request('GET', `/api/documents/${documentId}`);
|
|
341
|
+
}
|
|
342
|
+
async createOrgDocument(orgSlug, input) {
|
|
343
|
+
return this.request('POST', `/api/organizations/${orgSlug}/documents`, input);
|
|
344
|
+
}
|
|
345
|
+
async createProjectDocument(orgSlug, projectKey, input) {
|
|
346
|
+
return this.request('POST', `/api/organizations/${orgSlug}/projects/${projectKey}/documents`, input);
|
|
347
|
+
}
|
|
348
|
+
async updateDocument(documentId, input) {
|
|
349
|
+
return this.request('PATCH', `/api/documents/${documentId}`, input);
|
|
350
|
+
}
|
|
351
|
+
async deleteDocument(documentId) {
|
|
352
|
+
await this.request('DELETE', `/api/documents/${documentId}`);
|
|
353
|
+
}
|
|
354
|
+
// ============================================
|
|
355
|
+
// Board Templates
|
|
356
|
+
// ============================================
|
|
357
|
+
async listBoardTemplates(orgSlug) {
|
|
358
|
+
return this.request('GET', `/api/organizations/${orgSlug}/board-templates`);
|
|
359
|
+
}
|
|
360
|
+
async applyBoardTemplate(orgSlug, templateId, projectKey) {
|
|
361
|
+
return this.request('POST', `/api/organizations/${orgSlug}/board-templates/${templateId}/apply`, { templateId, projectKey });
|
|
362
|
+
}
|
|
363
|
+
async cloneBoardConfiguration(orgSlug, sourceProjectKey, targetProjectKey) {
|
|
364
|
+
return this.request('POST', `/api/organizations/${orgSlug}/projects/${sourceProjectKey}/board/clone`, { targetProjectKey });
|
|
365
|
+
}
|
|
366
|
+
// ============================================
|
|
367
|
+
// Board Configuration
|
|
368
|
+
// ============================================
|
|
369
|
+
async getBoardConfiguration(orgSlug, projectKey) {
|
|
370
|
+
return this.request('GET', `/api/organizations/${orgSlug}/projects/${projectKey}/board/configuration`);
|
|
371
|
+
}
|
|
372
|
+
async updateColumnConfiguration(boardId, columnId, input) {
|
|
373
|
+
return this.request('PUT', `/api/boards/${boardId}/columns/${columnId}/config`, input);
|
|
374
|
+
}
|
|
375
|
+
async getColumnConfiguration(boardId, columnId) {
|
|
376
|
+
try {
|
|
377
|
+
return await this.request('GET', `/api/boards/${boardId}/columns/${columnId}/config`);
|
|
378
|
+
}
|
|
379
|
+
catch (error) {
|
|
380
|
+
// Return null if configuration doesn't exist (404)
|
|
381
|
+
if (error instanceof LlamaApiError && error.statusCode === 404) {
|
|
382
|
+
return null;
|
|
383
|
+
}
|
|
384
|
+
throw error;
|
|
385
|
+
}
|
|
386
|
+
}
|
|
387
|
+
// ============================================
|
|
388
|
+
// MCP Session
|
|
389
|
+
// ============================================
|
|
390
|
+
async getSession() {
|
|
391
|
+
return this.request('GET', '/api/mcp/session');
|
|
392
|
+
}
|
|
393
|
+
async setSession(input) {
|
|
394
|
+
return this.request('POST', '/api/mcp/session', input);
|
|
395
|
+
}
|
|
396
|
+
async clearSession() {
|
|
397
|
+
await this.request('DELETE', '/api/mcp/session');
|
|
398
|
+
}
|
|
399
|
+
async recordToolCall(toolName, params) {
|
|
400
|
+
await this.request('POST', '/api/mcp/session/tool-call', {
|
|
401
|
+
toolName,
|
|
402
|
+
params,
|
|
403
|
+
});
|
|
404
|
+
}
|
|
299
405
|
}
|
|
300
406
|
let clientInstance = null;
|
|
301
407
|
export function getApiClient() {
|