@alacrity-ai/kbrelaymcp 0.2.0 → 0.3.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/dist/server.js CHANGED
@@ -1,6 +1,11 @@
1
+ import { createRequire } from 'node:module';
1
2
  import { Server } from '@modelcontextprotocol/sdk/server/index.js';
2
3
  import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';
3
4
  import { allTools } from './tools/index.js';
5
+ // Single source of truth for the advertised version: the package's own
6
+ // package.json (resolved at runtime — dist/server.js sits one dir under the
7
+ // package root). Avoids the hardcoded string drifting from the npm version.
8
+ const { version } = createRequire(import.meta.url)('../package.json');
4
9
  /**
5
10
  * The low-level MCP server: advertises `allTools` for ListTools, and for
6
11
  * CallTool finds the tool by name, validates+runs it (zod validation happens
@@ -8,7 +13,7 @@ import { allTools } from './tools/index.js';
8
13
  * (`isError: true` on failure).
9
14
  */
10
15
  export function createServer(opts) {
11
- const server = new Server({ name: 'kbrelaymcp', version: '0.1.0' }, { capabilities: { tools: {} } });
16
+ const server = new Server({ name: 'kbrelaymcp', version }, { capabilities: { tools: {} } });
12
17
  server.setRequestHandler(ListToolsRequestSchema, () => ({
13
18
  tools: allTools.map((t) => ({
14
19
  name: t.name,
@@ -29,7 +29,7 @@ export const allTools = [
29
29
  // ── Projects ──
30
30
  defineTool({
31
31
  name: 'list_projects',
32
- description: 'List projects you can access (admins: all). Each has a code (e.g. OBL) that prefixes ticket keys, plus a description (the project\'s purpose/context) and color.',
32
+ description: 'List projects you can access (admins: all). Each has a code (e.g. OBL) that prefixes ticket keys, a description (the project\'s purpose/context), a color, and cardCount (total tickets in the project).',
33
33
  inputSchema: z.object({ status: z.enum(['active', 'archived']).optional() }),
34
34
  handler: (a, c) => c.request('GET', `/v1/projects${qs({ status: a.status })}`),
35
35
  }),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alacrity-ai/kbrelaymcp",
3
- "version": "0.2.0",
3
+ "version": "0.3.1",
4
4
  "description": "MCP server for kbRelay — give an agent kanban powers (projects, cards, timeline, mentions) over the kbRelay API.",
5
5
  "type": "module",
6
6
  "license": "MIT",