@brxce/mcp-server 1.1.4 → 1.1.6

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 (43) hide show
  1. package/dist/config/bot-tool-scope.d.ts +15 -0
  2. package/dist/config/bot-tool-scope.d.ts.map +1 -0
  3. package/dist/config/bot-tool-scope.js +74 -0
  4. package/dist/config/bot-tool-scope.js.map +1 -0
  5. package/dist/config/environment.d.ts +2 -0
  6. package/dist/config/environment.d.ts.map +1 -1
  7. package/dist/config/environment.js +3 -1
  8. package/dist/config/environment.js.map +1 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +88 -63
  11. package/dist/index.js.map +1 -1
  12. package/dist/tools/bot-tool.d.ts +8 -0
  13. package/dist/tools/bot-tool.d.ts.map +1 -0
  14. package/dist/tools/bot-tool.js +191 -0
  15. package/dist/tools/bot-tool.js.map +1 -0
  16. package/dist/tools/worknode-detail-tool.d.ts +8 -0
  17. package/dist/tools/worknode-detail-tool.d.ts.map +1 -0
  18. package/dist/tools/worknode-detail-tool.js +227 -0
  19. package/dist/tools/worknode-detail-tool.js.map +1 -0
  20. package/dist/tools/worknode-subtree-tool.d.ts.map +1 -1
  21. package/dist/tools/worknode-subtree-tool.js +34 -12
  22. package/dist/tools/worknode-subtree-tool.js.map +1 -1
  23. package/dist/utils/bot-scoped-server.d.ts +13 -0
  24. package/dist/utils/bot-scoped-server.d.ts.map +1 -0
  25. package/dist/utils/bot-scoped-server.js +30 -0
  26. package/dist/utils/bot-scoped-server.js.map +1 -0
  27. package/dist/utils/index.d.ts +1 -0
  28. package/dist/utils/index.d.ts.map +1 -1
  29. package/dist/utils/index.js +1 -0
  30. package/dist/utils/index.js.map +1 -1
  31. package/dist/utils/param-parser.d.ts +47 -0
  32. package/dist/utils/param-parser.d.ts.map +1 -0
  33. package/dist/utils/param-parser.js +124 -0
  34. package/dist/utils/param-parser.js.map +1 -0
  35. package/package.json +12 -11
  36. package/dist/prompts/worknode-prompts.d.ts +0 -7
  37. package/dist/prompts/worknode-prompts.d.ts.map +0 -1
  38. package/dist/prompts/worknode-prompts.js +0 -398
  39. package/dist/prompts/worknode-prompts.js.map +0 -1
  40. package/dist/prompts/workspace-context-prompt.d.ts +0 -4
  41. package/dist/prompts/workspace-context-prompt.d.ts.map +0 -1
  42. package/dist/prompts/workspace-context-prompt.js +0 -102
  43. package/dist/prompts/workspace-context-prompt.js.map +0 -1
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Bot Tool Scope Configuration
3
+ *
4
+ * Defines which MCP tools are accessible to bot users.
5
+ * Bots can use tools for their assigned worknodes and
6
+ * read-only workspace/progress tools.
7
+ *
8
+ * Admin-only tools (member management, invitations, destructive ops) are blocked.
9
+ */
10
+ export declare const BOT_ALLOWED_TOOLS: ReadonlySet<string>;
11
+ /**
12
+ * Check if a tool is allowed for bot sessions.
13
+ */
14
+ export declare function isBotAllowedTool(toolName: string): boolean;
15
+ //# sourceMappingURL=bot-tool-scope.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-tool-scope.d.ts","sourceRoot":"","sources":["../../src/config/bot-tool-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,eAAO,MAAM,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAiEhD,CAAA;AAEF;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE1D"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Bot Tool Scope Configuration
3
+ *
4
+ * Defines which MCP tools are accessible to bot users.
5
+ * Bots can use tools for their assigned worknodes and
6
+ * read-only workspace/progress tools.
7
+ *
8
+ * Admin-only tools (member management, invitations, destructive ops) are blocked.
9
+ */
10
+ export const BOT_ALLOWED_TOOLS = new Set([
11
+ // ─── Workspace (read-only) ─────────────────────────────
12
+ 'brxce_list_workspaces',
13
+ 'brxce_workspace_statistics',
14
+ 'brxce_workspace_overview',
15
+ 'brxce_global_overview',
16
+ 'brxce_list_workspace_members',
17
+ 'brxce_workspace_ascii_export',
18
+ 'brxce_workspace_inbox',
19
+ // ─── WorkNode read ─────────────────────────────────────
20
+ 'brxce_read_worknodes',
21
+ 'brxce_worknode_subtree',
22
+ 'brxce_worknode_detail',
23
+ 'brxce_worknode_history',
24
+ 'brxce_worknodes_by_member',
25
+ 'brxce_my_work',
26
+ // ─── WorkNode write (for assigned tasks) ───────────────
27
+ 'brxce_update_worknodes',
28
+ 'brxce_complete_worknode',
29
+ 'brxce_create_worknodes',
30
+ 'brxce_archive_worknode',
31
+ // ─── Comments ──────────────────────────────────────────
32
+ 'brxce_create_comment',
33
+ 'brxce_list_comments',
34
+ 'brxce_update_comment',
35
+ // ─── Tags (full CRUD) ───────────────────────────────────
36
+ 'brxce_list_tag_categories',
37
+ 'brxce_create_tag_category',
38
+ 'brxce_update_tag_category',
39
+ 'brxce_delete_tag_category',
40
+ 'brxce_list_tags',
41
+ 'brxce_create_tag',
42
+ 'brxce_create_tags_batch',
43
+ 'brxce_update_tag',
44
+ 'brxce_delete_tag',
45
+ 'brxce_search_tags',
46
+ 'brxce_get_tag_stats',
47
+ 'brxce_find_worknodes_by_tags',
48
+ 'brxce_get_worknode_tags',
49
+ 'brxce_worknode_tag_relations',
50
+ 'brxce_tag_changes',
51
+ 'brxce_add_tags_to_worknode',
52
+ 'brxce_remove_tag_from_worknode',
53
+ 'brxce_batch_assign_tags',
54
+ // ─── Bot (self-management) ─────────────────────────────
55
+ 'brxce_update_bot',
56
+ 'brxce_upload_bot_avatar',
57
+ 'brxce_delete_bot_avatar',
58
+ // ─── User search ──────────────────────────────────────
59
+ 'brxce_search_users',
60
+ // ─── Notifications (own) ──────────────────────────────
61
+ 'brxce_list_notifications',
62
+ 'brxce_mark_notification_read',
63
+ 'brxce_mark_all_notifications_read',
64
+ 'brxce_get_unread_counts',
65
+ // ─── Criteria (read + check) ──────────────────────────
66
+ 'brxce_list_criteria',
67
+ ]);
68
+ /**
69
+ * Check if a tool is allowed for bot sessions.
70
+ */
71
+ export function isBotAllowedTool(toolName) {
72
+ return BOT_ALLOWED_TOOLS.has(toolName);
73
+ }
74
+ //# sourceMappingURL=bot-tool-scope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-tool-scope.js","sourceRoot":"","sources":["../../src/config/bot-tool-scope.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAwB,IAAI,GAAG,CAAC;IAC5D,0DAA0D;IAC1D,uBAAuB;IACvB,4BAA4B;IAC5B,0BAA0B;IAC1B,uBAAuB;IACvB,8BAA8B;IAC9B,8BAA8B;IAC9B,uBAAuB;IAEvB,0DAA0D;IAC1D,sBAAsB;IACtB,wBAAwB;IACxB,uBAAuB;IACvB,wBAAwB;IACxB,2BAA2B;IAC3B,eAAe;IAEf,0DAA0D;IAC1D,wBAAwB;IACxB,yBAAyB;IACzB,wBAAwB;IACxB,wBAAwB;IAExB,0DAA0D;IAC1D,sBAAsB;IACtB,qBAAqB;IACrB,sBAAsB;IAEtB,2DAA2D;IAC3D,2BAA2B;IAC3B,2BAA2B;IAC3B,2BAA2B;IAC3B,2BAA2B;IAC3B,iBAAiB;IACjB,kBAAkB;IAClB,yBAAyB;IACzB,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,qBAAqB;IACrB,8BAA8B;IAC9B,yBAAyB;IACzB,8BAA8B;IAC9B,mBAAmB;IACnB,4BAA4B;IAC5B,gCAAgC;IAChC,yBAAyB;IAEzB,0DAA0D;IAC1D,kBAAkB;IAClB,yBAAyB;IACzB,yBAAyB;IAEzB,yDAAyD;IACzD,oBAAoB;IAEpB,yDAAyD;IACzD,0BAA0B;IAC1B,8BAA8B;IAC9B,mCAAmC;IACnC,yBAAyB;IAEzB,yDAAyD;IACzD,qBAAqB;CACtB,CAAC,CAAA;AAEF;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAgB;IAC/C,OAAO,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;AACxC,CAAC"}
@@ -7,6 +7,8 @@ export interface EnvironmentConfig {
7
7
  authToken?: string;
8
8
  refreshToken?: string;
9
9
  debug: boolean;
10
+ /** True when AUTH_TOKEN is a bot_ prefixed API key */
11
+ isBotToken: boolean;
10
12
  }
11
13
  export declare function loadEnvironment(): EnvironmentConfig;
12
14
  //# sourceMappingURL=environment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/config/environment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;CAChB;AA8BD,wBAAgB,eAAe,IAAI,iBAAiB,CASnD"}
1
+ {"version":3,"file":"environment.d.ts","sourceRoot":"","sources":["../../src/config/environment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,sDAAsD;IACtD,UAAU,EAAE,OAAO,CAAC;CACrB;AA8BD,wBAAgB,eAAe,IAAI,iBAAiB,CAWnD"}
@@ -33,11 +33,13 @@ function resolveApiUrl() {
33
33
  }
34
34
  export function loadEnvironment() {
35
35
  const backendUrl = resolveApiUrl();
36
+ const authToken = process.env.AUTH_TOKEN;
36
37
  return {
37
38
  backendUrl,
38
- authToken: process.env.AUTH_TOKEN,
39
+ authToken,
39
40
  refreshToken: process.env.REFRESH_TOKEN,
40
41
  debug: process.env.DEBUG === 'true' || process.env.MCP_DEBUG === 'true',
42
+ isBotToken: authToken?.startsWith('bot_') ?? false,
41
43
  };
42
44
  }
43
45
  //# sourceMappingURL=environment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/config/environment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc;AACd,MAAM,QAAQ,GAAG;IACf,KAAK,EAAE,8BAA8B;IACrC,IAAI,EAAE,+EAA+E;CAC7E,CAAC;AASX;;;;;;GAMG;AACH,SAAS,aAAa;IACpB,wBAAwB;IACxB,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACnC,CAAC;IAED,uBAAuB;IACvB,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IACjC,CAAC;IAED,wBAAwB;IACxB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IAClC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED,iCAAiC;IACjC,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IAEnC,OAAO;QACL,UAAU;QACV,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,UAAU;QACjC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;QACvC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,MAAM;KACxE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"environment.js","sourceRoot":"","sources":["../../src/config/environment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc;AACd,MAAM,QAAQ,GAAG;IACf,KAAK,EAAE,8BAA8B;IACrC,IAAI,EAAE,+EAA+E;CAC7E,CAAC;AAWX;;;;;;GAMG;AACH,SAAS,aAAa;IACpB,wBAAwB;IACxB,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACnC,CAAC;IAED,uBAAuB;IACvB,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC;IACjC,CAAC;IAED,wBAAwB;IACxB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;IAClC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,OAAO,QAAQ,CAAC,KAAK,CAAC;IACxB,CAAC;IAED,iCAAiC;IACjC,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IAEnC,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;IACzC,OAAO;QACL,UAAU;QACV,SAAS;QACT,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;QACvC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,MAAM;QACvE,UAAU,EAAE,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK;KACnD,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAqEA,wBAAsB,SAAS,kBA6M9B;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,OAAO,iBAG/C;AAED,eAAO,MAAM,gBAAgB,eAAiC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAsEA,wBAAsB,SAAS,kBAqO9B;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,OAAO,iBAG/C;AAED,eAAO,MAAM,gBAAgB,eAAiC,CAAC"}
package/dist/index.js CHANGED
@@ -8,13 +8,13 @@ import { getErrorMessage } from './utils/error-utils.js';
8
8
  import { registerUserResource } from './resources/user-resource.js';
9
9
  import { registerWorkspaceResource } from './resources/workspace-resource.js';
10
10
  import { registerWorkspaceMembersResource } from './resources/workspace-members-resource.js';
11
+ import { createBotScopedServer } from './utils/bot-scoped-server.js';
11
12
  import { registerWorkspaceTreeTool } from './tools/workspace-tree-tool.js';
12
13
  import { registerWorknodeSubtreeTool } from './tools/worknode-subtree-tool.js';
14
+ import { registerWorknodeDetailTool } from './tools/worknode-detail-tool.js';
13
15
  import { registerWorknodeCreateTool } from './tools/worknode-create-tool.js';
14
16
  import { registerWorknodeUpdateTool } from './tools/worknode-update-tool.js';
15
17
  import { registerWorknodeReadTool } from './tools/worknode-read-tool.js';
16
- import { registerWorknodePrompts } from './prompts/worknode-prompts.js';
17
- import { registerWorkspaceContextPrompt } from './prompts/workspace-context-prompt.js';
18
18
  import { registerTagCategoryTools } from './tools/tag-category-tool.js';
19
19
  import { registerTagTools } from './tools/tag-tool.js';
20
20
  import { registerWorknodeTagTools } from './tools/worknode-tag-tool.js';
@@ -51,6 +51,7 @@ import { registerWorknodeByMemberTool } from './tools/worknode-by-member-tool.js
51
51
  import { registerWorknodeBatchTool } from './tools/worknode-batch-tool.js';
52
52
  import { registerMyWorkTool } from './tools/my-work-tool.js';
53
53
  import { registerGlobalOverviewTool } from './tools/global-overview-tool.js';
54
+ import { registerBotTools } from './tools/bot-tool.js';
54
55
  export async function bootstrap() {
55
56
  // Always log environment variables for debugging
56
57
  console.error('[MCP] Environment variables:');
@@ -67,7 +68,32 @@ export async function bootstrap() {
67
68
  });
68
69
  // Extract user information from auth token
69
70
  let currentUserId;
70
- if (config.authToken) {
71
+ if (config.authToken && config.isBotToken) {
72
+ // Bot token (bot_ prefix): resolve identity by calling backend /users/me
73
+ console.error('[MCP] Bot API key detected, resolving identity via backend...');
74
+ try {
75
+ const res = await fetch(`${config.backendUrl}/users/me`, {
76
+ headers: { Authorization: `Bearer ${config.authToken}` },
77
+ });
78
+ if (!res.ok) {
79
+ throw new Error(`Bot authentication failed: HTTP ${res.status}`);
80
+ }
81
+ const body = await res.json();
82
+ if (body.data?.id) {
83
+ currentUserId = body.data.id;
84
+ console.error(`[MCP] Bot authenticated: userId=${currentUserId}, userType=${body.data.userType}`);
85
+ }
86
+ else {
87
+ throw new Error('Bot authentication failed: no user ID in response');
88
+ }
89
+ }
90
+ catch (error) {
91
+ console.error('[MCP] Failed to resolve bot identity:', getErrorMessage(error));
92
+ throw error;
93
+ }
94
+ }
95
+ else if (config.authToken) {
96
+ // JWT token: decode locally
71
97
  try {
72
98
  const decoded = jwt.decode(config.authToken);
73
99
  const maybeUserId = decoded?.['userId'];
@@ -98,77 +124,81 @@ export async function bootstrap() {
98
124
  listChanged: true,
99
125
  },
100
126
  tools: {},
101
- prompts: {}, // Prompts capability enabled
102
127
  },
103
128
  });
129
+ // For bot sessions, wrap server to filter tool registration by scope
130
+ const toolServer = config.isBotToken ? createBotScopedServer(server) : server;
131
+ if (config.isBotToken) {
132
+ console.error('[MCP] Bot session: tool scope filtering enabled');
133
+ }
104
134
  // Register resources
105
135
  registerUserResource(server, apiClient);
106
136
  registerWorkspaceResource(server, apiClient);
107
137
  registerWorkspaceMembersResource(server, apiClient);
108
- // Register tools
138
+ // Register tools (toolServer filters for bot sessions)
109
139
  // Workspace tools
110
- registerWorkspaceListTool(server, apiClient);
111
- registerWorkspaceMembersListTool(server, apiClient);
112
- registerWorkspaceStatisticsTool(server, apiClient);
113
- registerWorkspaceTreeTool(server, apiClient);
114
- registerWorkspaceInboxTool(server, apiClient);
115
- registerWorkspaceAsciiExportTool(server, apiClient);
116
- registerGlobalOverviewTool(server, apiClient);
140
+ registerWorkspaceListTool(toolServer, apiClient);
141
+ registerWorkspaceMembersListTool(toolServer, apiClient);
142
+ registerWorkspaceStatisticsTool(toolServer, apiClient);
143
+ registerWorkspaceTreeTool(toolServer, apiClient);
144
+ registerWorkspaceInboxTool(toolServer, apiClient);
145
+ registerWorkspaceAsciiExportTool(toolServer, apiClient);
146
+ registerGlobalOverviewTool(toolServer, apiClient);
117
147
  // WorkNode tools
118
- registerWorknodeSubtreeTool(server, apiClient);
119
- registerWorknodeCreateTool(server, apiClient);
120
- registerWorknodeUpdateTool(server, apiClient);
121
- registerWorknodeReadTool(server, apiClient);
122
- registerWorknodeArchiveTools(server, apiClient);
123
- registerWorknodePlanOrganizeTool(server, apiClient);
124
- registerWorknodeCompleteTool(server, apiClient);
125
- registerWorknodeMoveTool(server, apiClient);
126
- registerWorknodeDeleteTool(server, apiClient);
127
- registerWorknodePermanentDeleteTool(server, apiClient);
128
- registerWorknodeHistoryTool(server, apiClient);
129
- registerWorknodeByMemberTool(server, apiClient);
130
- registerWorknodeBatchTool(server, apiClient);
131
- registerMyWorkTool(server, apiClient);
148
+ registerWorknodeSubtreeTool(toolServer, apiClient);
149
+ registerWorknodeDetailTool(toolServer, apiClient);
150
+ registerWorknodeCreateTool(toolServer, apiClient);
151
+ registerWorknodeUpdateTool(toolServer, apiClient);
152
+ registerWorknodeReadTool(toolServer, apiClient);
153
+ registerWorknodeArchiveTools(toolServer, apiClient);
154
+ registerWorknodePlanOrganizeTool(toolServer, apiClient);
155
+ registerWorknodeCompleteTool(toolServer, apiClient);
156
+ registerWorknodeMoveTool(toolServer, apiClient);
157
+ registerWorknodeDeleteTool(toolServer, apiClient);
158
+ registerWorknodePermanentDeleteTool(toolServer, apiClient);
159
+ registerWorknodeHistoryTool(toolServer, apiClient);
160
+ registerWorknodeByMemberTool(toolServer, apiClient);
161
+ registerWorknodeBatchTool(toolServer, apiClient);
162
+ registerMyWorkTool(toolServer, apiClient);
132
163
  // Tag tools
133
- registerTagCategoryTools(server, apiClient);
134
- registerTagTools(server, apiClient);
135
- registerWorknodeTagTools(server, apiClient);
136
- registerWorknodeTagRelationsTool(server, apiClient);
137
- registerTagSearchTools(server, apiClient);
138
- registerTagChangesTool(server, apiClient);
164
+ registerTagCategoryTools(toolServer, apiClient);
165
+ registerTagTools(toolServer, apiClient);
166
+ registerWorknodeTagTools(toolServer, apiClient);
167
+ registerWorknodeTagRelationsTool(toolServer, apiClient);
168
+ registerTagSearchTools(toolServer, apiClient);
169
+ registerTagChangesTool(toolServer, apiClient);
139
170
  // Meeting tools
140
- registerMeetingCreateTool(server, apiClient);
141
- registerMeetingListTools(server, apiClient);
142
- registerMeetingUpdateTool(server, apiClient);
143
- registerMeetingDeleteTool(server, apiClient);
144
- registerMeetingNotesTools(server, apiClient);
145
- registerMeetingDecisionsTools(server, apiClient);
146
- registerMeetingAgendaTools(server, apiClient);
147
- registerMeetingAgendaNotesTools(server, apiClient);
171
+ registerMeetingCreateTool(toolServer, apiClient);
172
+ registerMeetingListTools(toolServer, apiClient);
173
+ registerMeetingUpdateTool(toolServer, apiClient);
174
+ registerMeetingDeleteTool(toolServer, apiClient);
175
+ registerMeetingNotesTools(toolServer, apiClient);
176
+ registerMeetingDecisionsTools(toolServer, apiClient);
177
+ registerMeetingAgendaTools(toolServer, apiClient);
178
+ registerMeetingAgendaNotesTools(toolServer, apiClient);
148
179
  // Comment tools
149
- registerCommentTools(server, apiClient);
180
+ registerCommentTools(toolServer, apiClient);
150
181
  // Criteria tools
151
- registerCriteriaTools(server, apiClient);
182
+ registerCriteriaTools(toolServer, apiClient);
152
183
  // Notification tools
153
- registerNotificationListTool(server, apiClient);
154
- registerNotificationMarkReadTool(server, apiClient);
155
- registerGetUnreadCountsTool(server, apiClient);
156
- registerMarkAllNotificationsReadTool(server, apiClient);
157
- registerDeleteNotificationTool(server, apiClient);
184
+ registerNotificationListTool(toolServer, apiClient);
185
+ registerNotificationMarkReadTool(toolServer, apiClient);
186
+ registerGetUnreadCountsTool(toolServer, apiClient);
187
+ registerMarkAllNotificationsReadTool(toolServer, apiClient);
188
+ registerDeleteNotificationTool(toolServer, apiClient);
158
189
  // Invitation tools
159
- registerCreateInvitationTool(server, apiClient);
160
- registerListInvitationsTool(server, apiClient);
161
- registerAcceptInvitationTool(server, apiClient);
162
- registerDeclineInvitationTool(server, apiClient);
190
+ registerCreateInvitationTool(toolServer, apiClient);
191
+ registerListInvitationsTool(toolServer, apiClient);
192
+ registerAcceptInvitationTool(toolServer, apiClient);
193
+ registerDeclineInvitationTool(toolServer, apiClient);
163
194
  // Workspace member tools
164
- registerAddWorkspaceMemberTool(server, apiClient);
165
- registerUpdateMemberRoleTool(server, apiClient);
166
- registerRemoveWorkspaceMemberTool(server, apiClient);
195
+ registerAddWorkspaceMemberTool(toolServer, apiClient);
196
+ registerUpdateMemberRoleTool(toolServer, apiClient);
197
+ registerRemoveWorkspaceMemberTool(toolServer, apiClient);
198
+ // Bot management tools
199
+ registerBotTools(toolServer, apiClient);
167
200
  // User search tools
168
- registerUserSearchTool(server, apiClient);
169
- // Register prompts
170
- registerWorknodePrompts(server, apiClient);
171
- registerWorkspaceContextPrompt(server, apiClient);
201
+ registerUserSearchTool(toolServer, apiClient);
172
202
  if (config.debug) {
173
203
  console.error('[MCP] Resources registered:');
174
204
  console.error(' - user://me (user + workspaces + members)');
@@ -226,11 +256,6 @@ export async function bootstrap() {
226
256
  console.error(' - brxce_batch_actions');
227
257
  console.error(' - brxce_my_work');
228
258
  console.error(' - brxce_permanent_delete_worknode');
229
- console.error('[MCP] Prompts registered:');
230
- console.error(' - /my-active-work');
231
- console.error(' - /my-completed-work');
232
- console.error(' - /my-urgent-tasks');
233
- console.error(' - /my-inbox');
234
259
  }
235
260
  const transport = new StdioServerTransport();
236
261
  await server.connect(transport);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import type { ApiClient } from '../services/api-client.js';
3
+ /**
4
+ * Register Bot management tools.
5
+ * These are admin-only (human) tools — blocked for bot sessions via bot-tool-scope.
6
+ */
7
+ export declare function registerBotTools(server: McpServer, apiClient: ApiClient): void;
8
+ //# sourceMappingURL=bot-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-tool.d.ts","sourceRoot":"","sources":["../../src/tools/bot-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAiB3D;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,QAqNvE"}
@@ -0,0 +1,191 @@
1
+ import { z } from 'zod';
2
+ import { getErrorMessage } from '../utils/error-utils.js';
3
+ function errorContent(message, detail) {
4
+ return {
5
+ content: [{ type: 'text', text: JSON.stringify({ error: message, ...(detail && { detail }) }) }],
6
+ isError: true,
7
+ };
8
+ }
9
+ function successContent(data) {
10
+ return {
11
+ content: [{ type: 'text', text: JSON.stringify(data, null, 2) }],
12
+ };
13
+ }
14
+ /**
15
+ * Register Bot management tools.
16
+ * These are admin-only (human) tools — blocked for bot sessions via bot-tool-scope.
17
+ */
18
+ export function registerBotTools(server, apiClient) {
19
+ // ─── List Bots ──────────────────────────────────────────────────────
20
+ server.registerTool('brxce_list_bots', {
21
+ description: `List all bots in a workspace.
22
+
23
+ Returns: bots[{id, name, username, description, createdByUserId, createdAt}].`,
24
+ inputSchema: {
25
+ workspaceId: z.string().uuid().describe('Workspace ID'),
26
+ },
27
+ }, async (args) => {
28
+ try {
29
+ const response = await apiClient.post('/mcp/bots/list', {
30
+ workspaceId: args.workspaceId,
31
+ });
32
+ if (!response.success) {
33
+ return errorContent('Failed to list bots', response.message);
34
+ }
35
+ return successContent({ bots: response.data });
36
+ }
37
+ catch (error) {
38
+ return errorContent('Failed to list bots', getErrorMessage(error));
39
+ }
40
+ });
41
+ // ─── Create Bot ─────────────────────────────────────────────────────
42
+ server.registerTool('brxce_create_bot', {
43
+ description: `Create a new bot user in a workspace. Requires admin or owner role.
44
+
45
+ Returns the bot info and a one-time API key (bot_ prefix). Store it securely — it cannot be retrieved again.`,
46
+ inputSchema: {
47
+ workspaceId: z.string().uuid().describe('Workspace ID'),
48
+ name: z.string().min(1).max(255).describe('Bot display name'),
49
+ description: z.string().max(1000).optional().describe('Bot description'),
50
+ },
51
+ }, async (args) => {
52
+ try {
53
+ const response = await apiClient.post('/mcp/bots/create', {
54
+ workspaceId: args.workspaceId,
55
+ name: args.name,
56
+ description: args.description,
57
+ });
58
+ if (!response.success) {
59
+ return errorContent('Failed to create bot', response.message);
60
+ }
61
+ return successContent(response.data);
62
+ }
63
+ catch (error) {
64
+ return errorContent('Failed to create bot', getErrorMessage(error));
65
+ }
66
+ });
67
+ // ─── Update Bot ─────────────────────────────────────────────────────
68
+ server.registerTool('brxce_update_bot', {
69
+ description: `Update a bot's name or description. Only the bot creator can update.`,
70
+ inputSchema: {
71
+ workspaceId: z.string().uuid().describe('Workspace ID'),
72
+ botId: z.string().uuid().describe('Bot user ID'),
73
+ name: z.string().min(1).max(255).optional().describe('New bot name'),
74
+ description: z.string().max(1000).optional().describe('New bot description'),
75
+ },
76
+ }, async (args) => {
77
+ try {
78
+ const response = await apiClient.post('/mcp/bots/update', {
79
+ workspaceId: args.workspaceId,
80
+ botId: args.botId,
81
+ name: args.name,
82
+ description: args.description,
83
+ });
84
+ if (!response.success) {
85
+ return errorContent('Failed to update bot', response.message);
86
+ }
87
+ return successContent(response.data);
88
+ }
89
+ catch (error) {
90
+ return errorContent('Failed to update bot', getErrorMessage(error));
91
+ }
92
+ });
93
+ // ─── Delete Bot ─────────────────────────────────────────────────────
94
+ server.registerTool('brxce_delete_bot', {
95
+ description: `Delete (soft-delete) a bot. Revokes API keys and removes from workspace. Only the bot creator can delete.`,
96
+ inputSchema: {
97
+ workspaceId: z.string().uuid().describe('Workspace ID'),
98
+ botId: z.string().uuid().describe('Bot user ID to delete'),
99
+ },
100
+ }, async (args) => {
101
+ try {
102
+ const response = await apiClient.post('/mcp/bots/delete', {
103
+ workspaceId: args.workspaceId,
104
+ botId: args.botId,
105
+ });
106
+ if (!response.success) {
107
+ return errorContent('Failed to delete bot', response.message);
108
+ }
109
+ return successContent({ deleted: true, botId: args.botId });
110
+ }
111
+ catch (error) {
112
+ return errorContent('Failed to delete bot', getErrorMessage(error));
113
+ }
114
+ });
115
+ // ─── Regenerate Bot API Key ─────────────────────────────────────────
116
+ server.registerTool('brxce_regenerate_bot_key', {
117
+ description: `Regenerate a bot's API key. The old key is immediately revoked. Only the bot creator can regenerate.
118
+
119
+ Returns the new API key. Store it securely — it cannot be retrieved again.`,
120
+ inputSchema: {
121
+ workspaceId: z.string().uuid().describe('Workspace ID'),
122
+ botId: z.string().uuid().describe('Bot user ID'),
123
+ },
124
+ }, async (args) => {
125
+ try {
126
+ const response = await apiClient.post('/mcp/bots/regenerate-key', {
127
+ workspaceId: args.workspaceId,
128
+ botId: args.botId,
129
+ });
130
+ if (!response.success) {
131
+ return errorContent('Failed to regenerate bot API key', response.message);
132
+ }
133
+ return successContent(response.data);
134
+ }
135
+ catch (error) {
136
+ return errorContent('Failed to regenerate bot API key', getErrorMessage(error));
137
+ }
138
+ });
139
+ // ─── Upload Bot Avatar ──────────────────────────────────────────────
140
+ server.registerTool('brxce_upload_bot_avatar', {
141
+ description: `Upload or replace a bot's avatar image (base64). The bot creator or the bot itself can upload.
142
+
143
+ Max 5MB. Supported: image/jpeg, image/png.
144
+ Returns: { avatarUrl } (signed URL).`,
145
+ inputSchema: {
146
+ workspaceId: z.string().uuid().describe('Workspace ID'),
147
+ botId: z.string().uuid().describe('Bot user ID'),
148
+ imageBase64: z.string().describe('Base64 encoded image data (no data: prefix)'),
149
+ mimeType: z.enum(['image/jpeg', 'image/png', 'image/jpg']).describe('Image MIME type'),
150
+ },
151
+ }, async (args) => {
152
+ try {
153
+ const response = await apiClient.post('/mcp/bots/upload-avatar', {
154
+ workspaceId: args.workspaceId,
155
+ botId: args.botId,
156
+ imageBase64: args.imageBase64,
157
+ mimeType: args.mimeType,
158
+ });
159
+ if (!response.success) {
160
+ return errorContent('Failed to upload bot avatar', response.message);
161
+ }
162
+ return successContent(response.data);
163
+ }
164
+ catch (error) {
165
+ return errorContent('Failed to upload bot avatar', getErrorMessage(error));
166
+ }
167
+ });
168
+ // ─── Delete Bot Avatar ──────────────────────────────────────────────
169
+ server.registerTool('brxce_delete_bot_avatar', {
170
+ description: `Delete a bot's avatar image. The bot creator or the bot itself can delete.`,
171
+ inputSchema: {
172
+ workspaceId: z.string().uuid().describe('Workspace ID'),
173
+ botId: z.string().uuid().describe('Bot user ID'),
174
+ },
175
+ }, async (args) => {
176
+ try {
177
+ const response = await apiClient.post('/mcp/bots/delete-avatar', {
178
+ workspaceId: args.workspaceId,
179
+ botId: args.botId,
180
+ });
181
+ if (!response.success) {
182
+ return errorContent('Failed to delete bot avatar', response.message);
183
+ }
184
+ return successContent({ deleted: true, botId: args.botId });
185
+ }
186
+ catch (error) {
187
+ return errorContent('Failed to delete bot avatar', getErrorMessage(error));
188
+ }
189
+ });
190
+ }
191
+ //# sourceMappingURL=bot-tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bot-tool.js","sourceRoot":"","sources":["../../src/tools/bot-tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import type { ApiClient } from '../services/api-client.js';
3
+ /**
4
+ * Register WorkNode Detail tool
5
+ * Provides detailed view of a worknode including description and direct children summary
6
+ */
7
+ export declare function registerWorknodeDetailTool(server: McpServer, apiClient: ApiClient): void;
8
+ //# sourceMappingURL=worknode-detail-tool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worknode-detail-tool.d.ts","sourceRoot":"","sources":["../../src/tools/worknode-detail-tool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAwD3D;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,QAmOjF"}