agenthub-multiagent-mcp 1.3.0 → 1.4.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.
@@ -469,6 +469,15 @@ export function registerTools() {
469
469
  description: "Filter by priority (optional)",
470
470
  enum: ["lowest", "low", "medium", "high", "highest"],
471
471
  },
472
+ required_type: {
473
+ type: "string",
474
+ description: "Filter by required skill type - matches your agent type",
475
+ enum: ["frontend", "backend", "android", "ios", "ai", "design-specs"],
476
+ },
477
+ match_my_type: {
478
+ type: "boolean",
479
+ description: "If true, only show tasks matching your registered agent type",
480
+ },
472
481
  },
473
482
  },
474
483
  },
@@ -518,6 +527,149 @@ export function registerTools() {
518
527
  required: ["task_id", "description"],
519
528
  },
520
529
  },
530
+ // Ticket creation tools
531
+ {
532
+ name: "create_epic",
533
+ description: "Create an epic (large body of work) in a project",
534
+ inputSchema: {
535
+ type: "object",
536
+ properties: {
537
+ project_id: {
538
+ type: "string",
539
+ description: "Project ID to create epic in",
540
+ },
541
+ title: {
542
+ type: "string",
543
+ description: "Epic title",
544
+ },
545
+ description: {
546
+ type: "string",
547
+ description: "Epic description (supports markdown)",
548
+ },
549
+ source_file: {
550
+ type: "string",
551
+ description: "Optional: path to OpenSpec file this came from",
552
+ },
553
+ },
554
+ required: ["project_id", "title"],
555
+ },
556
+ },
557
+ {
558
+ name: "create_story",
559
+ description: "Create a story under an epic",
560
+ inputSchema: {
561
+ type: "object",
562
+ properties: {
563
+ project_id: {
564
+ type: "string",
565
+ description: "Project ID",
566
+ },
567
+ epic_id: {
568
+ type: "string",
569
+ description: "Epic ID to add story to",
570
+ },
571
+ title: {
572
+ type: "string",
573
+ description: "Story title",
574
+ },
575
+ description: {
576
+ type: "string",
577
+ description: "Story description",
578
+ },
579
+ required_type: {
580
+ type: "string",
581
+ enum: ["frontend", "backend", "android", "ios", "ai", "design-specs"],
582
+ description: "Required skill type for this story",
583
+ },
584
+ labels: {
585
+ type: "array",
586
+ items: { type: "string" },
587
+ description: "Additional labels",
588
+ },
589
+ },
590
+ required: ["project_id", "title"],
591
+ },
592
+ },
593
+ {
594
+ name: "create_task",
595
+ description: "Create a task under a story",
596
+ inputSchema: {
597
+ type: "object",
598
+ properties: {
599
+ project_id: {
600
+ type: "string",
601
+ description: "Project ID",
602
+ },
603
+ story_id: {
604
+ type: "string",
605
+ description: "Story ID to add task to",
606
+ },
607
+ title: {
608
+ type: "string",
609
+ description: "Task title",
610
+ },
611
+ description: {
612
+ type: "string",
613
+ description: "Task description",
614
+ },
615
+ required_type: {
616
+ type: "string",
617
+ enum: ["frontend", "backend", "android", "ios", "ai", "design-specs"],
618
+ description: "Required skill type",
619
+ },
620
+ },
621
+ required: ["project_id", "title"],
622
+ },
623
+ },
624
+ {
625
+ name: "upload_attachment",
626
+ description: "Upload a file (screenshot, log, etc.) as proof of work to a ticket",
627
+ inputSchema: {
628
+ type: "object",
629
+ properties: {
630
+ ticket_id: {
631
+ type: "string",
632
+ description: "Ticket ID to attach file to",
633
+ },
634
+ ticket_type: {
635
+ type: "string",
636
+ enum: ["epic", "story", "task"],
637
+ description: "Type of ticket",
638
+ },
639
+ ticket_key: {
640
+ type: "string",
641
+ description: "Ticket key (e.g., PROJ-T42)",
642
+ },
643
+ file_path: {
644
+ type: "string",
645
+ description: "Local path to file to upload",
646
+ },
647
+ description: {
648
+ type: "string",
649
+ description: "Optional description of the file",
650
+ },
651
+ },
652
+ required: ["ticket_id", "ticket_type", "ticket_key", "file_path"],
653
+ },
654
+ },
655
+ {
656
+ name: "add_comment",
657
+ description: "Add a comment to any ticket (epic, story, task)",
658
+ inputSchema: {
659
+ type: "object",
660
+ properties: {
661
+ ticket_id: {
662
+ type: "string",
663
+ description: "Ticket ID to comment on",
664
+ },
665
+ body: {
666
+ type: "string",
667
+ description: "Comment body (supports markdown)",
668
+ },
669
+ },
670
+ required: ["ticket_id", "body"],
671
+ },
672
+ },
521
673
  ];
522
674
  }
523
675
  export async function handleToolCall(name, args, client, context) {
@@ -543,6 +695,8 @@ export async function handleToolCall(name, args, client, context) {
543
695
  const reconnectName = args.name || existingState.name;
544
696
  const reconnectResult = await client.reconnectAgent(existingState.agent_id, existingState.token, owner, args.model, reconnectName);
545
697
  context.setCurrentAgentId(existingState.agent_id);
698
+ // Set connect token on client for org operations
699
+ client.setConnectToken(existingState.token);
546
700
  // Update state with returned name from server
547
701
  state.saveState(workingDir, {
548
702
  ...existingState,
@@ -601,12 +755,15 @@ export async function handleToolCall(name, args, client, context) {
601
755
  }
602
756
  const agentId = registrationResult.agent_id;
603
757
  context.setCurrentAgentId(agentId);
758
+ // Set connect token on client for org operations
759
+ client.setConnectToken(registrationResult.connect_token);
604
760
  // Save state for future reconnection
605
761
  state.saveState(workingDir, {
606
762
  agent_id: agentId,
607
763
  name: registrationResult.agent_name || agentId,
608
764
  owner,
609
765
  token: registrationResult.connect_token,
766
+ agent_type: registrationResult.agent_type,
610
767
  registered_at: new Date().toISOString(),
611
768
  });
612
769
  return {
@@ -750,10 +907,19 @@ export async function handleToolCall(name, args, client, context) {
750
907
  case "get_available_tasks": {
751
908
  if (!agentId)
752
909
  throw new Error("Not registered. Call agent_register first.");
910
+ let requiredType = args.required_type;
911
+ // If match_my_type is true, get agent's type from state
912
+ if (args.match_my_type === true) {
913
+ const workingDir = context.getWorkingDir();
914
+ const agentState = state.loadState(workingDir);
915
+ // Use stored agent_type if available, otherwise keep the explicit required_type
916
+ requiredType = requiredType || agentState?.agent_type;
917
+ }
753
918
  const result = await client.getAvailableTasks({
754
919
  status: args.status,
755
920
  project_id: args.project_id,
756
921
  priority: args.priority,
922
+ required_type: requiredType,
757
923
  });
758
924
  return wrapWithPendingItems(client, agentId, result, context);
759
925
  }
@@ -775,6 +941,74 @@ export async function handleToolCall(name, args, client, context) {
775
941
  const result = await client.createCheckpoint(args.task_id, agentId, args.description);
776
942
  return wrapWithPendingItems(client, agentId, result, context);
777
943
  }
944
+ // Ticket creation tools
945
+ case "create_epic": {
946
+ const result = await client.createEpic({
947
+ project_id: args.project_id,
948
+ title: args.title,
949
+ description: args.description,
950
+ source_file: args.source_file,
951
+ });
952
+ return {
953
+ ...result,
954
+ message: `Created epic ${result.key}: ${args.title}`,
955
+ };
956
+ }
957
+ case "create_story": {
958
+ const result = await client.createStory({
959
+ project_id: args.project_id,
960
+ epic_id: args.epic_id,
961
+ title: args.title,
962
+ description: args.description,
963
+ required_type: args.required_type,
964
+ labels: args.labels,
965
+ });
966
+ return {
967
+ ...result,
968
+ message: `Created story ${result.key}: ${args.title}`,
969
+ };
970
+ }
971
+ case "create_task": {
972
+ const result = await client.createTask({
973
+ project_id: args.project_id,
974
+ story_id: args.story_id,
975
+ title: args.title,
976
+ description: args.description,
977
+ required_type: args.required_type,
978
+ });
979
+ return {
980
+ ...result,
981
+ message: `Created task ${result.key}: ${args.title}`,
982
+ };
983
+ }
984
+ case "upload_attachment": {
985
+ if (!agentId)
986
+ throw new Error("Not registered. Call agent_register first.");
987
+ const result = await client.uploadAttachment({
988
+ ticket_id: args.ticket_id,
989
+ ticket_type: args.ticket_type,
990
+ ticket_key: args.ticket_key,
991
+ file_path: args.file_path,
992
+ description: args.description,
993
+ agent_id: agentId,
994
+ });
995
+ return {
996
+ ...result,
997
+ message: `Uploaded ${result.filename} to ${args.ticket_key}`,
998
+ };
999
+ }
1000
+ case "add_comment": {
1001
+ if (!agentId)
1002
+ throw new Error("Not registered. Call agent_register first.");
1003
+ const result = await client.addComment({
1004
+ ticket_id: args.ticket_id,
1005
+ body: args.body,
1006
+ });
1007
+ return {
1008
+ ...result,
1009
+ message: `Added comment to ticket`,
1010
+ };
1011
+ }
778
1012
  default:
779
1013
  throw new Error(`Unknown tool: ${name}`);
780
1014
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agenthub-multiagent-mcp",
3
- "version": "1.3.0",
3
+ "version": "1.4.1",
4
4
  "description": "MCP server for AgentHub multi-agent communication",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -39,11 +39,13 @@
39
39
  },
40
40
  "dependencies": {
41
41
  "@modelcontextprotocol/sdk": "^1.0.0",
42
+ "form-data": "^4.0.5",
42
43
  "open": "^11.0.0",
43
44
  "ws": "^8.18.0",
44
45
  "zod": "^3.23.0"
45
46
  },
46
47
  "devDependencies": {
48
+ "@types/form-data": "^2.2.1",
47
49
  "@types/node": "^20.0.0",
48
50
  "@types/ws": "^8.5.13",
49
51
  "tsx": "^4.0.0",
package/src/client.ts CHANGED
@@ -134,12 +134,21 @@ export interface Channel {
134
134
  export class ApiClient {
135
135
  private baseUrl: string;
136
136
  private apiKey: string;
137
+ private connectToken: string | null = null;
137
138
 
138
139
  constructor(baseUrl: string, apiKey: string) {
139
140
  this.baseUrl = baseUrl.replace(/\/$/, "");
140
141
  this.apiKey = apiKey;
141
142
  }
142
143
 
144
+ /**
145
+ * Set the agent connect token for authentication
146
+ * When set, this token will be sent alongside API key for org operations
147
+ */
148
+ setConnectToken(token: string): void {
149
+ this.connectToken = token;
150
+ }
151
+
143
152
  private async request<T>(
144
153
  method: string,
145
154
  path: string,
@@ -147,12 +156,23 @@ export class ApiClient {
147
156
  ): Promise<T> {
148
157
  const url = `${this.baseUrl}${path}`;
149
158
 
159
+ const headers: Record<string, string> = {
160
+ "Content-Type": "application/json",
161
+ };
162
+
163
+ // Send API key if available
164
+ if (this.apiKey) {
165
+ headers["X-API-Key"] = this.apiKey;
166
+ }
167
+
168
+ // Also send connect token if available (for agent auth on org operations)
169
+ if (this.connectToken) {
170
+ headers["X-Connect-Token"] = this.connectToken;
171
+ }
172
+
150
173
  const response = await fetch(url, {
151
174
  method,
152
- headers: {
153
- "Content-Type": "application/json",
154
- "X-API-Key": this.apiKey,
155
- },
175
+ headers,
156
176
  body: body ? JSON.stringify(body) : undefined,
157
177
  });
158
178
 
@@ -379,11 +399,13 @@ export class ApiClient {
379
399
  status?: string;
380
400
  project_id?: string;
381
401
  priority?: string;
402
+ required_type?: string;
382
403
  }): Promise<{ tasks: TicketTask[]; total: number }> {
383
404
  const query = new URLSearchParams();
384
405
  if (params?.status) query.set("status", params.status);
385
406
  if (params?.project_id) query.set("project_id", params.project_id);
386
407
  if (params?.priority) query.set("priority", params.priority);
408
+ if (params?.required_type) query.set("required_type", params.required_type);
387
409
  const queryStr = query.toString() ? `?${query}` : "";
388
410
  return this.request("GET", `/agent-tickets/available${queryStr}`);
389
411
  }
@@ -482,4 +504,137 @@ export class ApiClient {
482
504
  getBaseUrl(): string {
483
505
  return this.baseUrl;
484
506
  }
507
+
508
+ // Ticket creation methods
509
+
510
+ async createEpic(params: {
511
+ project_id: string;
512
+ title: string;
513
+ description?: string;
514
+ source_file?: string;
515
+ }): Promise<{ id: string; key: string }> {
516
+ return this.request("POST", `/projects/${params.project_id}/epics`, {
517
+ title: params.title,
518
+ description: params.description,
519
+ metadata: params.source_file ? JSON.stringify({ source_file: params.source_file }) : undefined,
520
+ });
521
+ }
522
+
523
+ async createStory(params: {
524
+ project_id: string;
525
+ epic_id?: string;
526
+ title: string;
527
+ description?: string;
528
+ required_type?: string;
529
+ labels?: string[];
530
+ order?: number;
531
+ }): Promise<{ id: string; key: string }> {
532
+ return this.request("POST", `/projects/${params.project_id}/stories`, {
533
+ epic_id: params.epic_id,
534
+ title: params.title,
535
+ description: params.description,
536
+ required_type: params.required_type,
537
+ labels: params.labels,
538
+ backlog_order: params.order,
539
+ });
540
+ }
541
+
542
+ async createTask(params: {
543
+ project_id: string;
544
+ story_id?: string;
545
+ epic_id?: string;
546
+ title: string;
547
+ description?: string;
548
+ required_type?: string;
549
+ labels?: string[];
550
+ order?: number;
551
+ }): Promise<{ id: string; key: string }> {
552
+ return this.request("POST", `/projects/${params.project_id}/tasks`, {
553
+ story_id: params.story_id,
554
+ epic_id: params.epic_id,
555
+ title: params.title,
556
+ description: params.description,
557
+ required_type: params.required_type,
558
+ labels: params.labels,
559
+ backlog_order: params.order,
560
+ });
561
+ }
562
+
563
+ async addComment(params: {
564
+ ticket_id: string;
565
+ body: string;
566
+ }): Promise<{ id: string }> {
567
+ return this.request("POST", `/tickets/${params.ticket_id}/comments`, {
568
+ body: params.body,
569
+ });
570
+ }
571
+
572
+ async updateTicketStatus(params: {
573
+ ticket_id: string;
574
+ status: string;
575
+ summary?: string;
576
+ files_changed?: string[];
577
+ }): Promise<{ success: boolean }> {
578
+ return this.request("PATCH", `/tasks/${params.ticket_id}`, {
579
+ status: params.status,
580
+ summary: params.summary,
581
+ files_changed: params.files_changed,
582
+ });
583
+ }
584
+
585
+ async uploadAttachment(params: {
586
+ ticket_id: string;
587
+ ticket_type: string;
588
+ ticket_key: string;
589
+ file_path: string;
590
+ description?: string;
591
+ agent_id?: string;
592
+ }): Promise<{
593
+ id: string;
594
+ url: string;
595
+ filename: string;
596
+ size: number;
597
+ mime_type: string;
598
+ }> {
599
+ const fs = await import("fs");
600
+ const FormData = (await import("form-data")).default;
601
+
602
+ const form = new FormData();
603
+ form.append("ticket_id", params.ticket_id);
604
+ form.append("ticket_type", params.ticket_type);
605
+ form.append("ticket_key", params.ticket_key);
606
+ form.append("file", fs.createReadStream(params.file_path));
607
+ if (params.description) form.append("description", params.description);
608
+ if (params.agent_id) form.append("agent_id", params.agent_id);
609
+
610
+ const headers: Record<string, string> = {
611
+ ...form.getHeaders(),
612
+ };
613
+ if (this.apiKey) {
614
+ headers["X-API-Key"] = this.apiKey;
615
+ }
616
+ if (this.connectToken) {
617
+ headers["X-Connect-Token"] = this.connectToken;
618
+ }
619
+
620
+ const response = await fetch(`${this.baseUrl}/attachments`, {
621
+ method: "POST",
622
+ headers,
623
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
624
+ body: form as any,
625
+ });
626
+
627
+ if (!response.ok) {
628
+ const error = await response.json() as { message?: string };
629
+ throw new Error(error.message || `Upload failed: ${response.status}`);
630
+ }
631
+
632
+ return response.json() as Promise<{
633
+ id: string;
634
+ url: string;
635
+ filename: string;
636
+ size: number;
637
+ mime_type: string;
638
+ }>;
639
+ }
485
640
  }
package/src/index.ts CHANGED
@@ -64,6 +64,8 @@ async function attemptReconnect(): Promise<state.AgentState | null> {
64
64
 
65
65
  if (result.reconnected) {
66
66
  currentAgentId = result.agent_id;
67
+ // Set connect token on client for org operations
68
+ client.setConnectToken(existingState.token);
67
69
  // Update state with any changes
68
70
  state.saveState(workingDir, {
69
71
  ...existingState,
package/src/state.ts CHANGED
@@ -23,6 +23,7 @@ export interface AgentState {
23
23
  name?: string;
24
24
  owner: string;
25
25
  token: string;
26
+ agent_type?: string;
26
27
  last_task?: string;
27
28
  registered_at: string;
28
29
  }