@agentworkforce/mcp-workforce 0.0.0 → 3.0.2

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 (49) hide show
  1. package/dist/bin.d.ts +3 -0
  2. package/dist/bin.d.ts.map +1 -0
  3. package/dist/bin.js +7 -0
  4. package/dist/bin.js.map +1 -0
  5. package/dist/config.d.ts +42 -0
  6. package/dist/config.d.ts.map +1 -0
  7. package/dist/config.js +39 -0
  8. package/dist/config.js.map +1 -0
  9. package/dist/config.test.d.ts +2 -0
  10. package/dist/config.test.d.ts.map +1 -0
  11. package/dist/config.test.js +47 -0
  12. package/dist/config.test.js.map +1 -0
  13. package/dist/index.d.ts +6 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/dist/index.js +6 -0
  16. package/dist/index.js.map +1 -0
  17. package/dist/server.d.ts +32 -0
  18. package/dist/server.d.ts.map +1 -0
  19. package/dist/server.js +167 -0
  20. package/dist/server.js.map +1 -0
  21. package/dist/server.test.d.ts +2 -0
  22. package/dist/server.test.d.ts.map +1 -0
  23. package/dist/server.test.js +48 -0
  24. package/dist/server.test.js.map +1 -0
  25. package/dist/tools/integrations.d.ts +30 -0
  26. package/dist/tools/integrations.d.ts.map +1 -0
  27. package/dist/tools/integrations.js +133 -0
  28. package/dist/tools/integrations.js.map +1 -0
  29. package/dist/tools/integrations.test.d.ts +2 -0
  30. package/dist/tools/integrations.test.d.ts.map +1 -0
  31. package/dist/tools/integrations.test.js +77 -0
  32. package/dist/tools/integrations.test.js.map +1 -0
  33. package/dist/tools/memory.d.ts +36 -0
  34. package/dist/tools/memory.d.ts.map +1 -0
  35. package/dist/tools/memory.js +129 -0
  36. package/dist/tools/memory.js.map +1 -0
  37. package/dist/tools/memory.test.d.ts +2 -0
  38. package/dist/tools/memory.test.d.ts.map +1 -0
  39. package/dist/tools/memory.test.js +100 -0
  40. package/dist/tools/memory.test.js.map +1 -0
  41. package/dist/tools/workflow.d.ts +31 -0
  42. package/dist/tools/workflow.d.ts.map +1 -0
  43. package/dist/tools/workflow.js +58 -0
  44. package/dist/tools/workflow.js.map +1 -0
  45. package/dist/tools/workflow.test.d.ts +2 -0
  46. package/dist/tools/workflow.test.d.ts.map +1 -0
  47. package/dist/tools/workflow.test.js +74 -0
  48. package/dist/tools/workflow.test.js.map +1 -0
  49. package/package.json +8 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow.test.d.ts","sourceRoot":"","sources":["../../src/tools/workflow.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,74 @@
1
+ import test from 'node:test';
2
+ import assert from 'node:assert/strict';
3
+ import { workflowRun, workflowStatus } from './workflow.js';
4
+ function fakeFetch(handlers) {
5
+ const calls = [];
6
+ let i = 0;
7
+ const impl = (async (input, init) => {
8
+ const url = typeof input === 'string' ? input : input.toString();
9
+ const headers = {};
10
+ if (init?.headers) {
11
+ const entries = init.headers instanceof Headers
12
+ ? Array.from(init.headers.entries())
13
+ : Array.isArray(init.headers)
14
+ ? init.headers
15
+ : Object.entries(init.headers);
16
+ for (const [k, v] of entries)
17
+ headers[k.toLowerCase()] = String(v);
18
+ }
19
+ const body = init?.body ? JSON.parse(init.body.toString()) : undefined;
20
+ const call = { url, method: init?.method ?? 'GET', headers, ...(body !== undefined ? { body } : {}) };
21
+ calls.push(call);
22
+ const handler = handlers[i];
23
+ if (!handler)
24
+ throw new Error(`fakeFetch: no handler at call index ${i}`);
25
+ i += 1;
26
+ return handler(call);
27
+ });
28
+ return { fetch: impl, calls };
29
+ }
30
+ function config(over = {}) {
31
+ return {
32
+ workspaceId: 'ws-demo',
33
+ cloudUrl: 'https://cloud.example.com',
34
+ runtimeToken: 'tok-secret',
35
+ writebackTimeoutMs: 0,
36
+ ...over
37
+ };
38
+ }
39
+ test('workflow.run POSTs to /workflows/run with the workspace token', async () => {
40
+ const { fetch: impl, calls } = fakeFetch([
41
+ () => new Response(JSON.stringify({ runId: 'run-1', status: 'pending' }), { status: 202 })
42
+ ]);
43
+ const result = await workflowRun({ name: 'pr-review', args: { prNumber: 5 } }, { config: config(), fetchImpl: impl });
44
+ assert.equal(result.runId, 'run-1');
45
+ assert.equal(result.status, 'pending');
46
+ assert.equal(calls[0].url, 'https://cloud.example.com/api/v1/workspaces/ws-demo/workflows/run');
47
+ assert.equal(calls[0].method, 'POST');
48
+ assert.equal(calls[0].headers.authorization, 'Bearer tok-secret');
49
+ assert.deepEqual(calls[0].body, { name: 'pr-review', args: { prNumber: 5 } });
50
+ });
51
+ test('workflow.run rejects when name is empty', async () => {
52
+ await assert.rejects(() => workflowRun({ name: '' }, { config: config() }), /"name" is required/);
53
+ });
54
+ test('workflow.run surfaces non-2xx with the status + excerpt in the message', async () => {
55
+ const { fetch: impl } = fakeFetch([
56
+ () => new Response('rate limited', { status: 429, statusText: 'Too Many Requests' })
57
+ ]);
58
+ await assert.rejects(() => workflowRun({ name: 'pr-review' }, { config: config(), fetchImpl: impl }), /workflow\.run\("pr-review"\): 429 Too Many Requests/);
59
+ });
60
+ test('workflow.status GETs /workflows/runs/:id and forwards the response', async () => {
61
+ const { fetch: impl, calls } = fakeFetch([
62
+ () => new Response(JSON.stringify({ status: 'success', output: { ok: true } }), { status: 200 })
63
+ ]);
64
+ const result = await workflowStatus({ runId: 'run-7' }, { config: config(), fetchImpl: impl });
65
+ assert.equal(result.status, 'success');
66
+ assert.deepEqual(result.output, { ok: true });
67
+ assert.equal(calls[0].method, 'GET');
68
+ assert.equal(calls[0].url, 'https://cloud.example.com/api/v1/workspaces/ws-demo/workflows/runs/run-7');
69
+ });
70
+ test('workflow tools require WORKFORCE_RUNTIME_TOKEN', async () => {
71
+ const { fetch: impl } = fakeFetch([]);
72
+ await assert.rejects(() => workflowRun({ name: 'x' }, { config: config({ runtimeToken: undefined }), fetchImpl: impl }), /WORKFORCE_RUNTIME_TOKEN/);
73
+ });
74
+ //# sourceMappingURL=workflow.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow.test.js","sourceRoot":"","sources":["../../src/tools/workflow.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentworkforce/mcp-workforce",
3
- "version": "0.0.0",
3
+ "version": "3.0.2",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -28,17 +28,17 @@
28
28
  "publishConfig": {
29
29
  "access": "public"
30
30
  },
31
+ "dependencies": {
32
+ "@modelcontextprotocol/sdk": "^1.21.0",
33
+ "zod": "^3.23.8",
34
+ "@agentworkforce/persona-kit": "3.0.2",
35
+ "@agentworkforce/runtime": "3.0.2"
36
+ },
31
37
  "scripts": {
32
38
  "build": "tsc -p tsconfig.json && chmod +x dist/bin.js",
33
39
  "dev": "tsc -p tsconfig.json --watch --preserveWatchOutput",
34
40
  "typecheck": "tsc -p tsconfig.json --noEmit",
35
41
  "test": "tsc -p tsconfig.json && node --test dist/**/*.test.js dist/*.test.js",
36
42
  "lint": "tsc -p tsconfig.json --noEmit"
37
- },
38
- "dependencies": {
39
- "@agentworkforce/persona-kit": "workspace:*",
40
- "@agentworkforce/runtime": "workspace:*",
41
- "@modelcontextprotocol/sdk": "^1.21.0",
42
- "zod": "^3.23.8"
43
43
  }
44
- }
44
+ }