@damper/mcp 0.3.17 → 0.3.19

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.
Files changed (2) hide show
  1. package/dist/index.js +46 -12
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -240,12 +240,11 @@ server.registerTool('get_task', {
240
240
  // Tool: Update task
241
241
  server.registerTool('update_task', {
242
242
  title: 'Update Task',
243
- description: 'Update task fields like title, description, implementation plan, priority, effort, quarter, labels, or visibility. ' +
244
- 'Useful for refining task details as you learn more about the work. ' +
245
- 'Use title to set a concise task name after planning (especially for CLI-created tasks with placeholder titles).',
243
+ description: 'Update task fields like description, implementation plan, priority, effort, quarter, labels, or visibility. ' +
244
+ 'Useful for refining task details as you learn more about the work.',
246
245
  inputSchema: z.object({
247
246
  taskId: z.string().describe('Task ID'),
248
- title: z.string().optional().describe('Concise task title (e.g., "Fix SSO redirect login flow")'),
247
+ title: z.string().optional().describe('Task title'),
249
248
  description: z.string().optional().describe('Task description'),
250
249
  implementationPlan: z.string().optional().describe('Implementation plan (markdown)'),
251
250
  priority: z.enum(['high', 'medium', 'low']).nullable().optional().describe('Task priority'),
@@ -330,7 +329,8 @@ server.registerTool('create_task', {
330
329
  title: z.string(),
331
330
  description: z.string().optional(),
332
331
  type: z.enum(['bug', 'feature', 'improvement', 'task']).optional().describe('Task type (default: feature)'),
333
- status: z.enum(['planned', 'in_progress']).optional(),
332
+ status: z.enum(['planned', 'in_progress', 'done']).optional(),
333
+ priority: z.enum(['high', 'medium', 'low']).optional().describe('Task priority'),
334
334
  implementationPlan: z.string().optional(),
335
335
  isPublic: z.boolean().optional().describe('Whether task is visible on public roadmap (default: true)'),
336
336
  }),
@@ -1166,6 +1166,40 @@ server.registerTool('get_feedback', {
1166
1166
  structuredContent: f,
1167
1167
  };
1168
1168
  });
1169
+ // Tool: Update feedback
1170
+ server.registerTool('update_feedback', {
1171
+ title: 'Update Feedback',
1172
+ description: 'Update feedback status. Use to triage, close, or mark feedback as done.',
1173
+ inputSchema: z.object({
1174
+ feedbackId: z.string().describe('Feedback ID'),
1175
+ status: z
1176
+ .enum(['new', 'under_review', 'planned', 'in_progress', 'done', 'closed'])
1177
+ .describe('New status'),
1178
+ }),
1179
+ outputSchema: z.object({
1180
+ id: z.string(),
1181
+ title: z.string(),
1182
+ status: z.string(),
1183
+ type: z.string(),
1184
+ }),
1185
+ annotations: {
1186
+ readOnlyHint: false,
1187
+ destructiveHint: false,
1188
+ idempotentHint: true,
1189
+ openWorldHint: false,
1190
+ },
1191
+ }, async ({ feedbackId, status }) => {
1192
+ const result = await api('PATCH', `/api/agent/feedback/${feedbackId}`, { status });
1193
+ return {
1194
+ content: [
1195
+ {
1196
+ type: 'text',
1197
+ text: `Updated feedback "${result.title}" → ${result.status}`,
1198
+ },
1199
+ ],
1200
+ structuredContent: result,
1201
+ };
1202
+ });
1169
1203
  // ==================== Issue Reporting ====================
1170
1204
  // Tool: Report issue
1171
1205
  server.registerTool('report_issue', {
@@ -1664,16 +1698,16 @@ server.registerTool('update_changelog', {
1664
1698
  structuredContent: result,
1665
1699
  };
1666
1700
  });
1667
- // Tool: Add roadmap items to changelog
1701
+ // Tool: Add tasks to changelog
1668
1702
  server.registerTool('add_to_changelog', {
1669
1703
  title: 'Add to Changelog',
1670
- description: 'Add completed roadmap items to a changelog. Links the items and appends formatted entries to content.\n\n' +
1704
+ description: 'Add completed tasks to a changelog. Links the tasks and appends formatted entries to content.\n\n' +
1671
1705
  '**When to use:**\n' +
1672
- '- After completing multiple items that should be in one release\n' +
1673
- '- To manually add items to a draft changelog',
1706
+ '- After completing multiple tasks that should be in one release\n' +
1707
+ '- To manually add tasks to a draft changelog',
1674
1708
  inputSchema: z.object({
1675
1709
  changelogId: z.string().describe('Changelog ID'),
1676
- roadmapItemIds: z.array(z.string()).describe('Roadmap item IDs to add'),
1710
+ taskIds: z.array(z.string()).describe('Task IDs to add'),
1677
1711
  }),
1678
1712
  outputSchema: z.object({
1679
1713
  id: z.string(),
@@ -1690,8 +1724,8 @@ server.registerTool('add_to_changelog', {
1690
1724
  idempotentHint: true,
1691
1725
  openWorldHint: false,
1692
1726
  },
1693
- }, async ({ changelogId, roadmapItemIds }) => {
1694
- const result = await api('POST', `/api/agent/changelogs/${changelogId}/items`, { roadmapItemIds });
1727
+ }, async ({ changelogId, taskIds }) => {
1728
+ const result = await api('POST', `/api/agent/changelogs/${changelogId}/items`, { roadmapItemIds: taskIds });
1695
1729
  const addedTitles = result.addedItems.map((i) => i.title).join(', ');
1696
1730
  return {
1697
1731
  content: [{ type: 'text', text: `📋 Added ${result.addedItems.length} items to "${result.title}": ${addedTitles}` }],
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@damper/mcp",
3
- "version": "0.3.17",
3
+ "version": "0.3.19",
4
4
  "description": "MCP server for Damper task management",
5
5
  "author": "Damper <hello@usedamper.com>",
6
6
  "repository": {