@rolexjs/mcp-server 0.12.0-dev-20260228075317 → 0.12.0-dev-20260302040425
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/index.js +14 -69
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -10,21 +10,6 @@ import { z } from "zod";
|
|
|
10
10
|
import { world } from "rolexjs";
|
|
11
11
|
var instructions = Object.values(world).join("\n\n");
|
|
12
12
|
|
|
13
|
-
// src/render.ts
|
|
14
|
-
import { describe, hint, renderState } from "rolexjs";
|
|
15
|
-
function render(opts) {
|
|
16
|
-
const { process, name, result, cognitiveHint, fold } = opts;
|
|
17
|
-
const lines = [];
|
|
18
|
-
lines.push(describe(process, name, result.state));
|
|
19
|
-
lines.push(hint(process));
|
|
20
|
-
if (cognitiveHint) {
|
|
21
|
-
lines.push(`I \u2192 ${cognitiveHint}`);
|
|
22
|
-
}
|
|
23
|
-
lines.push("");
|
|
24
|
-
lines.push(renderState(result.state, 1, fold ? { fold } : void 0));
|
|
25
|
-
return lines.join("\n");
|
|
26
|
-
}
|
|
27
|
-
|
|
28
13
|
// src/state.ts
|
|
29
14
|
var McpState = class {
|
|
30
15
|
role = null;
|
|
@@ -47,14 +32,6 @@ var server = new FastMCP({
|
|
|
47
32
|
version: "0.12.0",
|
|
48
33
|
instructions
|
|
49
34
|
});
|
|
50
|
-
function fmt(process, label, result) {
|
|
51
|
-
return render({
|
|
52
|
-
process,
|
|
53
|
-
name: label,
|
|
54
|
-
result,
|
|
55
|
-
cognitiveHint: result.hint ?? null
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
35
|
server.addTool({
|
|
59
36
|
name: "activate",
|
|
60
37
|
description: detail("activate"),
|
|
@@ -65,15 +42,7 @@ server.addTool({
|
|
|
65
42
|
try {
|
|
66
43
|
const role = await rolex.activate(roleId);
|
|
67
44
|
state.role = role;
|
|
68
|
-
|
|
69
|
-
const focusedGoalId = role.ctx.focusedGoalId;
|
|
70
|
-
return render({
|
|
71
|
-
process: "activate",
|
|
72
|
-
name: roleId,
|
|
73
|
-
result,
|
|
74
|
-
cognitiveHint: result.hint ?? null,
|
|
75
|
-
fold: (node) => node.name === "goal" && node.id !== focusedGoalId
|
|
76
|
-
});
|
|
45
|
+
return role.project();
|
|
77
46
|
} catch {
|
|
78
47
|
const census = await rolex.direct("!census.list");
|
|
79
48
|
throw new Error(
|
|
@@ -93,9 +62,7 @@ server.addTool({
|
|
|
93
62
|
id: z.string().optional().describe("Goal id to switch to. Omit to view current.")
|
|
94
63
|
}),
|
|
95
64
|
execute: async ({ id }) => {
|
|
96
|
-
|
|
97
|
-
const result = role.focus(id);
|
|
98
|
-
return fmt("focus", id ?? "current goal", result);
|
|
65
|
+
return state.requireRole().focus(id);
|
|
99
66
|
}
|
|
100
67
|
});
|
|
101
68
|
server.addTool({
|
|
@@ -106,9 +73,7 @@ server.addTool({
|
|
|
106
73
|
goal: z.string().describe("Gherkin Feature source describing the goal")
|
|
107
74
|
}),
|
|
108
75
|
execute: async ({ id, goal }) => {
|
|
109
|
-
|
|
110
|
-
const result = role.want(goal, id);
|
|
111
|
-
return fmt("want", id, result);
|
|
76
|
+
return state.requireRole().want(goal, id);
|
|
112
77
|
}
|
|
113
78
|
});
|
|
114
79
|
server.addTool({
|
|
@@ -121,9 +86,7 @@ server.addTool({
|
|
|
121
86
|
fallback: z.string().optional().describe("Plan id this plan is a backup for (alternative/strategy relationship)")
|
|
122
87
|
}),
|
|
123
88
|
execute: async ({ id, plan, after, fallback }) => {
|
|
124
|
-
|
|
125
|
-
const result = role.plan(plan, id, after, fallback);
|
|
126
|
-
return fmt("plan", id, result);
|
|
89
|
+
return state.requireRole().plan(plan, id, after, fallback);
|
|
127
90
|
}
|
|
128
91
|
});
|
|
129
92
|
server.addTool({
|
|
@@ -134,9 +97,7 @@ server.addTool({
|
|
|
134
97
|
task: z.string().describe("Gherkin Feature source describing the task")
|
|
135
98
|
}),
|
|
136
99
|
execute: async ({ id, task }) => {
|
|
137
|
-
|
|
138
|
-
const result = role.todo(task, id);
|
|
139
|
-
return fmt("todo", id, result);
|
|
100
|
+
return state.requireRole().todo(task, id);
|
|
140
101
|
}
|
|
141
102
|
});
|
|
142
103
|
server.addTool({
|
|
@@ -147,9 +108,7 @@ server.addTool({
|
|
|
147
108
|
encounter: z.string().optional().describe("Optional Gherkin Feature describing what happened")
|
|
148
109
|
}),
|
|
149
110
|
execute: async ({ id, encounter }) => {
|
|
150
|
-
|
|
151
|
-
const result = role.finish(id, encounter);
|
|
152
|
-
return fmt("finish", id, result);
|
|
111
|
+
return state.requireRole().finish(id, encounter);
|
|
153
112
|
}
|
|
154
113
|
});
|
|
155
114
|
server.addTool({
|
|
@@ -160,9 +119,7 @@ server.addTool({
|
|
|
160
119
|
encounter: z.string().optional().describe("Optional Gherkin Feature describing what happened")
|
|
161
120
|
}),
|
|
162
121
|
execute: async ({ id, encounter }) => {
|
|
163
|
-
|
|
164
|
-
const result = role.complete(id, encounter);
|
|
165
|
-
return fmt("complete", id ?? "focused plan", result);
|
|
122
|
+
return state.requireRole().complete(id, encounter);
|
|
166
123
|
}
|
|
167
124
|
});
|
|
168
125
|
server.addTool({
|
|
@@ -173,9 +130,7 @@ server.addTool({
|
|
|
173
130
|
encounter: z.string().optional().describe("Optional Gherkin Feature describing what happened")
|
|
174
131
|
}),
|
|
175
132
|
execute: async ({ id, encounter }) => {
|
|
176
|
-
|
|
177
|
-
const result = role.abandon(id, encounter);
|
|
178
|
-
return fmt("abandon", id ?? "focused plan", result);
|
|
133
|
+
return state.requireRole().abandon(id, encounter);
|
|
179
134
|
}
|
|
180
135
|
});
|
|
181
136
|
server.addTool({
|
|
@@ -187,9 +142,7 @@ server.addTool({
|
|
|
187
142
|
experience: z.string().optional().describe("Gherkin Feature source for the experience")
|
|
188
143
|
}),
|
|
189
144
|
execute: async ({ ids, id, experience }) => {
|
|
190
|
-
|
|
191
|
-
const result = role.reflect(ids[0] ?? void 0, experience, id);
|
|
192
|
-
return fmt("reflect", id, result);
|
|
145
|
+
return state.requireRole().reflect(ids[0] ?? void 0, experience, id);
|
|
193
146
|
}
|
|
194
147
|
});
|
|
195
148
|
server.addTool({
|
|
@@ -201,9 +154,7 @@ server.addTool({
|
|
|
201
154
|
principle: z.string().optional().describe("Gherkin Feature source for the principle")
|
|
202
155
|
}),
|
|
203
156
|
execute: async ({ ids, id, principle }) => {
|
|
204
|
-
|
|
205
|
-
const result = role.realize(ids[0] ?? void 0, principle, id);
|
|
206
|
-
return fmt("realize", id, result);
|
|
157
|
+
return state.requireRole().realize(ids[0] ?? void 0, principle, id);
|
|
207
158
|
}
|
|
208
159
|
});
|
|
209
160
|
server.addTool({
|
|
@@ -215,9 +166,7 @@ server.addTool({
|
|
|
215
166
|
procedure: z.string().describe("Gherkin Feature source for the procedure")
|
|
216
167
|
}),
|
|
217
168
|
execute: async ({ ids, id, procedure }) => {
|
|
218
|
-
|
|
219
|
-
const result = role.master(procedure, id, ids?.[0]);
|
|
220
|
-
return fmt("master", id, result);
|
|
169
|
+
return state.requireRole().master(procedure, id, ids?.[0]);
|
|
221
170
|
}
|
|
222
171
|
});
|
|
223
172
|
server.addTool({
|
|
@@ -227,9 +176,7 @@ server.addTool({
|
|
|
227
176
|
id: z.string().describe("Id of the node to remove (principle, procedure, experience, encounter, etc.)")
|
|
228
177
|
}),
|
|
229
178
|
execute: async ({ id }) => {
|
|
230
|
-
|
|
231
|
-
const result = role.forget(id);
|
|
232
|
-
return fmt("forget", id, result);
|
|
179
|
+
return state.requireRole().forget(id);
|
|
233
180
|
}
|
|
234
181
|
});
|
|
235
182
|
server.addTool({
|
|
@@ -239,8 +186,7 @@ server.addTool({
|
|
|
239
186
|
locator: z.string().describe("ResourceX locator for the skill (e.g. deepractice/role-management)")
|
|
240
187
|
}),
|
|
241
188
|
execute: async ({ locator }) => {
|
|
242
|
-
|
|
243
|
-
return role.skill(locator);
|
|
189
|
+
return state.requireRole().skill(locator);
|
|
244
190
|
}
|
|
245
191
|
});
|
|
246
192
|
server.addTool({
|
|
@@ -253,8 +199,7 @@ server.addTool({
|
|
|
253
199
|
args: z.record(z.unknown()).optional().describe("Named arguments for the command or resource")
|
|
254
200
|
}),
|
|
255
201
|
execute: async ({ locator, args }) => {
|
|
256
|
-
const
|
|
257
|
-
const result = await role.use(locator, args);
|
|
202
|
+
const result = await state.requireRole().use(locator, args);
|
|
258
203
|
if (result == null) return `${locator} done.`;
|
|
259
204
|
if (typeof result === "string") return result;
|
|
260
205
|
return JSON.stringify(result, null, 2);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/instructions.ts","../src/render.ts","../src/state.ts"],"sourcesContent":["/**\n * @rolexjs/mcp-server — individual-level MCP tools.\n *\n * Thin wrapper around the Rolex API. All business logic (state tracking,\n * cognitive hints, encounter/experience registries) lives in Role + RoleContext.\n * MCP only translates protocol calls to API calls.\n */\n\nimport { localPlatform } from \"@rolexjs/local-platform\";\nimport { FastMCP } from \"fastmcp\";\nimport { createRoleX, detail } from \"rolexjs\";\n\nimport { z } from \"zod\";\nimport { instructions } from \"./instructions.js\";\nimport { render } from \"./render.js\";\nimport { McpState } from \"./state.js\";\n\n// ========== Setup ==========\n\nconst rolex = createRoleX(\n localPlatform({\n bootstrap: [\"npm:@rolexjs/genesis\"],\n })\n);\nawait rolex.genesis();\nconst state = new McpState();\n\n// ========== Server ==========\n\nconst server = new FastMCP({\n name: \"rolex\",\n version: \"0.12.0\",\n instructions,\n});\n\n// ========== Helpers ==========\n\nfunction fmt(\n process: string,\n label: string,\n result: { state: any; process: string; hint?: string }\n) {\n return render({\n process,\n name: label,\n result,\n cognitiveHint: result.hint ?? null,\n });\n}\n\n// ========== Tools: Role ==========\n\nserver.addTool({\n name: \"activate\",\n description: detail(\"activate\"),\n parameters: z.object({\n roleId: z.string().describe(\"Role name to activate\"),\n }),\n execute: async ({ roleId }) => {\n try {\n const role = await rolex.activate(roleId);\n state.role = role;\n const result = role.project();\n const focusedGoalId = role.ctx.focusedGoalId;\n return render({\n process: \"activate\",\n name: roleId,\n result,\n cognitiveHint: result.hint ?? null,\n fold: (node) => node.name === \"goal\" && node.id !== focusedGoalId,\n });\n } catch {\n const census = await rolex.direct<string>(\"!census.list\");\n throw new Error(\n `\"${roleId}\" not found. Available:\\n\\n${census}\\n\\nTry again with the correct id or alias.`\n );\n }\n },\n});\n\nserver.addTool({\n name: \"focus\",\n description: detail(\"focus\"),\n parameters: z.object({\n id: z.string().optional().describe(\"Goal id to switch to. Omit to view current.\"),\n }),\n execute: async ({ id }) => {\n const role = state.requireRole();\n const result = role.focus(id);\n return fmt(\"focus\", id ?? \"current goal\", result);\n },\n});\n\n// ========== Tools: Execution ==========\n\nserver.addTool({\n name: \"want\",\n description: detail(\"want\"),\n parameters: z.object({\n id: z.string().describe(\"Goal id (used for focus/reference)\"),\n goal: z.string().describe(\"Gherkin Feature source describing the goal\"),\n }),\n execute: async ({ id, goal }) => {\n const role = state.requireRole();\n const result = role.want(goal, id);\n return fmt(\"want\", id, result);\n },\n});\n\nserver.addTool({\n name: \"plan\",\n description: detail(\"plan\"),\n parameters: z.object({\n id: z.string().describe(\"Plan id — keywords from the plan content joined by hyphens\"),\n plan: z.string().describe(\"Gherkin Feature source describing the plan\"),\n after: z\n .string()\n .optional()\n .describe(\"Plan id this plan follows (sequential/phase relationship)\"),\n fallback: z\n .string()\n .optional()\n .describe(\"Plan id this plan is a backup for (alternative/strategy relationship)\"),\n }),\n execute: async ({ id, plan, after, fallback }) => {\n const role = state.requireRole();\n const result = role.plan(plan, id, after, fallback);\n return fmt(\"plan\", id, result);\n },\n});\n\nserver.addTool({\n name: \"todo\",\n description: detail(\"todo\"),\n parameters: z.object({\n id: z.string().describe(\"Task id (used for finish/reference)\"),\n task: z.string().describe(\"Gherkin Feature source describing the task\"),\n }),\n execute: async ({ id, task }) => {\n const role = state.requireRole();\n const result = role.todo(task, id);\n return fmt(\"todo\", id, result);\n },\n});\n\nserver.addTool({\n name: \"finish\",\n description: detail(\"finish\"),\n parameters: z.object({\n id: z.string().describe(\"Task id to finish\"),\n encounter: z.string().optional().describe(\"Optional Gherkin Feature describing what happened\"),\n }),\n execute: async ({ id, encounter }) => {\n const role = state.requireRole();\n const result = role.finish(id, encounter);\n return fmt(\"finish\", id, result);\n },\n});\n\nserver.addTool({\n name: \"complete\",\n description: detail(\"complete\"),\n parameters: z.object({\n id: z.string().optional().describe(\"Plan id to complete (defaults to focused plan)\"),\n encounter: z.string().optional().describe(\"Optional Gherkin Feature describing what happened\"),\n }),\n execute: async ({ id, encounter }) => {\n const role = state.requireRole();\n const result = role.complete(id, encounter);\n return fmt(\"complete\", id ?? \"focused plan\", result);\n },\n});\n\nserver.addTool({\n name: \"abandon\",\n description: detail(\"abandon\"),\n parameters: z.object({\n id: z.string().optional().describe(\"Plan id to abandon (defaults to focused plan)\"),\n encounter: z.string().optional().describe(\"Optional Gherkin Feature describing what happened\"),\n }),\n execute: async ({ id, encounter }) => {\n const role = state.requireRole();\n const result = role.abandon(id, encounter);\n return fmt(\"abandon\", id ?? \"focused plan\", result);\n },\n});\n\n// ========== Tools: Cognition ==========\n\nserver.addTool({\n name: \"reflect\",\n description: detail(\"reflect\"),\n parameters: z.object({\n ids: z.array(z.string()).describe(\"Encounter ids to reflect on (selective consumption)\"),\n id: z\n .string()\n .describe(\"Experience id — keywords from the experience content joined by hyphens\"),\n experience: z.string().optional().describe(\"Gherkin Feature source for the experience\"),\n }),\n execute: async ({ ids, id, experience }) => {\n const role = state.requireRole();\n const result = role.reflect(ids[0] ?? undefined, experience, id);\n return fmt(\"reflect\", id, result);\n },\n});\n\nserver.addTool({\n name: \"realize\",\n description: detail(\"realize\"),\n parameters: z.object({\n ids: z.array(z.string()).describe(\"Experience ids to distill into a principle\"),\n id: z.string().describe(\"Principle id — keywords from the principle content joined by hyphens\"),\n principle: z.string().optional().describe(\"Gherkin Feature source for the principle\"),\n }),\n execute: async ({ ids, id, principle }) => {\n const role = state.requireRole();\n const result = role.realize(ids[0] ?? undefined, principle, id);\n return fmt(\"realize\", id, result);\n },\n});\n\nserver.addTool({\n name: \"master\",\n description: detail(\"master\"),\n parameters: z.object({\n ids: z.array(z.string()).optional().describe(\"Experience ids to distill into a procedure\"),\n id: z.string().describe(\"Procedure id — keywords from the procedure content joined by hyphens\"),\n procedure: z.string().describe(\"Gherkin Feature source for the procedure\"),\n }),\n execute: async ({ ids, id, procedure }) => {\n const role = state.requireRole();\n const result = role.master(procedure, id, ids?.[0]);\n return fmt(\"master\", id, result);\n },\n});\n\n// ========== Tools: Knowledge management ==========\n\nserver.addTool({\n name: \"forget\",\n description: detail(\"forget\"),\n parameters: z.object({\n id: z\n .string()\n .describe(\"Id of the node to remove (principle, procedure, experience, encounter, etc.)\"),\n }),\n execute: async ({ id }) => {\n const role = state.requireRole();\n const result = role.forget(id);\n return fmt(\"forget\", id, result);\n },\n});\n\n// ========== Tools: Skill loading ==========\n\nserver.addTool({\n name: \"skill\",\n description: detail(\"skill\"),\n parameters: z.object({\n locator: z\n .string()\n .describe(\"ResourceX locator for the skill (e.g. deepractice/role-management)\"),\n }),\n execute: async ({ locator }) => {\n const role = state.requireRole();\n return role.skill(locator);\n },\n});\n\n// ========== Tools: Use ==========\n\nserver.addTool({\n name: \"use\",\n description: detail(\"use\"),\n parameters: z.object({\n locator: z\n .string()\n .describe(\n \"Locator string. !namespace.method for RoleX commands, or a ResourceX locator for resources\"\n ),\n args: z.record(z.unknown()).optional().describe(\"Named arguments for the command or resource\"),\n }),\n execute: async ({ locator, args }) => {\n const role = state.requireRole();\n const result = await role.use(locator, args);\n if (result == null) return `${locator} done.`;\n if (typeof result === \"string\") return result;\n return JSON.stringify(result, null, 2);\n },\n});\n\n// ========== Tools: Direct ==========\n\nserver.addTool({\n name: \"direct\",\n description: detail(\"direct\"),\n parameters: z.object({\n locator: z\n .string()\n .describe(\n \"Locator string. !namespace.method for RoleX commands, or a ResourceX locator for resources\"\n ),\n args: z.record(z.unknown()).optional().describe(\"Named arguments for the command or resource\"),\n }),\n execute: async ({ locator, args }) => {\n const result = await rolex.direct(locator, args);\n if (result == null) return `${locator} done.`;\n if (typeof result === \"string\") return result;\n return JSON.stringify(result, null, 2);\n },\n});\n\n// ========== Start ==========\n\nserver.start({\n transportType: \"stdio\",\n});\n","/**\n * MCP server instructions — the cognitive framework for AI roles.\n *\n * Assembled from world .feature files in rolexjs descriptions.\n * Each feature describes one independent concern of the RoleX framework.\n */\nimport { world } from \"rolexjs\";\n\nexport const instructions = Object.values(world).join(\"\\n\\n\");\n","/**\n * Render — 3-layer output for MCP tool results.\n *\n * Layer 1: Status — what just happened (describe)\n * Layer 2: Hint — what to do next (hint)\n * Layer 3: Projection — full state tree as markdown (renderState)\n *\n * MCP and CLI share describe() + hint() + renderState() from rolexjs.\n * Relations are rendered per-node via bidirectional links — no separate layer needed.\n */\nimport type { RenderStateOptions, RolexResult } from \"rolexjs\";\nimport { describe, hint, renderState } from \"rolexjs\";\n\n// ================================================================\n// Public API\n// ================================================================\n\nexport interface RenderOptions {\n /** The process that was executed. */\n process: string;\n /** Display name for the primary node. */\n name: string;\n /** Result from the Rolex API. */\n result: RolexResult;\n /** AI cognitive hint — first-person, state-aware self-direction cue. */\n cognitiveHint?: string | null;\n /** Fold predicate — folded nodes render heading only. */\n fold?: RenderStateOptions[\"fold\"];\n}\n\n/** Render a full 3-layer output string. */\nexport function render(opts: RenderOptions): string {\n const { process, name, result, cognitiveHint, fold } = opts;\n const lines: string[] = [];\n\n // Layer 1: Status\n lines.push(describe(process, name, result.state));\n\n // Layer 2: Hint (static) + Cognitive hint (state-aware)\n lines.push(hint(process));\n if (cognitiveHint) {\n lines.push(`I → ${cognitiveHint}`);\n }\n\n // Layer 3: Projection — generic markdown rendering of the full state tree\n lines.push(\"\");\n lines.push(renderState(result.state, 1, fold ? { fold } : undefined));\n\n return lines.join(\"\\n\");\n}\n","/**\n * McpState — thin session holder for the MCP server.\n *\n * Holds the active Role handle. All business logic (state tracking,\n * cognitive hints, encounter/experience registries) lives in Role + RoleContext.\n */\nimport type { Role } from \"rolexjs\";\n\nexport class McpState {\n role: Role | null = null;\n\n requireRole(): Role {\n if (!this.role) throw new Error(\"No active role. Call activate first.\");\n return this.role;\n }\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/instructions.ts","../src/state.ts"],"sourcesContent":["/**\n * @rolexjs/mcp-server — individual-level MCP tools.\n *\n * Pure pass-through: all rendering happens in rolexjs.\n * MCP only translates protocol calls to API calls.\n */\n\nimport { localPlatform } from \"@rolexjs/local-platform\";\nimport { FastMCP } from \"fastmcp\";\nimport { createRoleX, detail } from \"rolexjs\";\n\nimport { z } from \"zod\";\nimport { instructions } from \"./instructions.js\";\nimport { McpState } from \"./state.js\";\n\n// ========== Setup ==========\n\nconst rolex = createRoleX(\n localPlatform({\n bootstrap: [\"npm:@rolexjs/genesis\"],\n })\n);\nawait rolex.genesis();\nconst state = new McpState();\n\n// ========== Server ==========\n\nconst server = new FastMCP({\n name: \"rolex\",\n version: \"0.12.0\",\n instructions,\n});\n\n// ========== Tools: Role ==========\n\nserver.addTool({\n name: \"activate\",\n description: detail(\"activate\"),\n parameters: z.object({\n roleId: z.string().describe(\"Role name to activate\"),\n }),\n execute: async ({ roleId }) => {\n try {\n const role = await rolex.activate(roleId);\n state.role = role;\n return role.project();\n } catch {\n const census = await rolex.direct<string>(\"!census.list\");\n throw new Error(\n `\"${roleId}\" not found. Available:\\n\\n${census}\\n\\nTry again with the correct id or alias.`\n );\n }\n },\n});\n\nserver.addTool({\n name: \"focus\",\n description: detail(\"focus\"),\n parameters: z.object({\n id: z.string().optional().describe(\"Goal id to switch to. Omit to view current.\"),\n }),\n execute: async ({ id }) => {\n return state.requireRole().focus(id);\n },\n});\n\n// ========== Tools: Execution ==========\n\nserver.addTool({\n name: \"want\",\n description: detail(\"want\"),\n parameters: z.object({\n id: z.string().describe(\"Goal id (used for focus/reference)\"),\n goal: z.string().describe(\"Gherkin Feature source describing the goal\"),\n }),\n execute: async ({ id, goal }) => {\n return state.requireRole().want(goal, id);\n },\n});\n\nserver.addTool({\n name: \"plan\",\n description: detail(\"plan\"),\n parameters: z.object({\n id: z.string().describe(\"Plan id — keywords from the plan content joined by hyphens\"),\n plan: z.string().describe(\"Gherkin Feature source describing the plan\"),\n after: z\n .string()\n .optional()\n .describe(\"Plan id this plan follows (sequential/phase relationship)\"),\n fallback: z\n .string()\n .optional()\n .describe(\"Plan id this plan is a backup for (alternative/strategy relationship)\"),\n }),\n execute: async ({ id, plan, after, fallback }) => {\n return state.requireRole().plan(plan, id, after, fallback);\n },\n});\n\nserver.addTool({\n name: \"todo\",\n description: detail(\"todo\"),\n parameters: z.object({\n id: z.string().describe(\"Task id (used for finish/reference)\"),\n task: z.string().describe(\"Gherkin Feature source describing the task\"),\n }),\n execute: async ({ id, task }) => {\n return state.requireRole().todo(task, id);\n },\n});\n\nserver.addTool({\n name: \"finish\",\n description: detail(\"finish\"),\n parameters: z.object({\n id: z.string().describe(\"Task id to finish\"),\n encounter: z.string().optional().describe(\"Optional Gherkin Feature describing what happened\"),\n }),\n execute: async ({ id, encounter }) => {\n return state.requireRole().finish(id, encounter);\n },\n});\n\nserver.addTool({\n name: \"complete\",\n description: detail(\"complete\"),\n parameters: z.object({\n id: z.string().optional().describe(\"Plan id to complete (defaults to focused plan)\"),\n encounter: z.string().optional().describe(\"Optional Gherkin Feature describing what happened\"),\n }),\n execute: async ({ id, encounter }) => {\n return state.requireRole().complete(id, encounter);\n },\n});\n\nserver.addTool({\n name: \"abandon\",\n description: detail(\"abandon\"),\n parameters: z.object({\n id: z.string().optional().describe(\"Plan id to abandon (defaults to focused plan)\"),\n encounter: z.string().optional().describe(\"Optional Gherkin Feature describing what happened\"),\n }),\n execute: async ({ id, encounter }) => {\n return state.requireRole().abandon(id, encounter);\n },\n});\n\n// ========== Tools: Cognition ==========\n\nserver.addTool({\n name: \"reflect\",\n description: detail(\"reflect\"),\n parameters: z.object({\n ids: z.array(z.string()).describe(\"Encounter ids to reflect on (selective consumption)\"),\n id: z\n .string()\n .describe(\"Experience id — keywords from the experience content joined by hyphens\"),\n experience: z.string().optional().describe(\"Gherkin Feature source for the experience\"),\n }),\n execute: async ({ ids, id, experience }) => {\n return state.requireRole().reflect(ids[0] ?? undefined, experience, id);\n },\n});\n\nserver.addTool({\n name: \"realize\",\n description: detail(\"realize\"),\n parameters: z.object({\n ids: z.array(z.string()).describe(\"Experience ids to distill into a principle\"),\n id: z.string().describe(\"Principle id — keywords from the principle content joined by hyphens\"),\n principle: z.string().optional().describe(\"Gherkin Feature source for the principle\"),\n }),\n execute: async ({ ids, id, principle }) => {\n return state.requireRole().realize(ids[0] ?? undefined, principle, id);\n },\n});\n\nserver.addTool({\n name: \"master\",\n description: detail(\"master\"),\n parameters: z.object({\n ids: z.array(z.string()).optional().describe(\"Experience ids to distill into a procedure\"),\n id: z.string().describe(\"Procedure id — keywords from the procedure content joined by hyphens\"),\n procedure: z.string().describe(\"Gherkin Feature source for the procedure\"),\n }),\n execute: async ({ ids, id, procedure }) => {\n return state.requireRole().master(procedure, id, ids?.[0]);\n },\n});\n\n// ========== Tools: Knowledge management ==========\n\nserver.addTool({\n name: \"forget\",\n description: detail(\"forget\"),\n parameters: z.object({\n id: z\n .string()\n .describe(\"Id of the node to remove (principle, procedure, experience, encounter, etc.)\"),\n }),\n execute: async ({ id }) => {\n return state.requireRole().forget(id);\n },\n});\n\n// ========== Tools: Skill loading ==========\n\nserver.addTool({\n name: \"skill\",\n description: detail(\"skill\"),\n parameters: z.object({\n locator: z\n .string()\n .describe(\"ResourceX locator for the skill (e.g. deepractice/role-management)\"),\n }),\n execute: async ({ locator }) => {\n return state.requireRole().skill(locator);\n },\n});\n\n// ========== Tools: Use ==========\n\nserver.addTool({\n name: \"use\",\n description: detail(\"use\"),\n parameters: z.object({\n locator: z\n .string()\n .describe(\n \"Locator string. !namespace.method for RoleX commands, or a ResourceX locator for resources\"\n ),\n args: z.record(z.unknown()).optional().describe(\"Named arguments for the command or resource\"),\n }),\n execute: async ({ locator, args }) => {\n const result = await state.requireRole().use(locator, args);\n if (result == null) return `${locator} done.`;\n if (typeof result === \"string\") return result;\n return JSON.stringify(result, null, 2);\n },\n});\n\n// ========== Tools: Direct ==========\n\nserver.addTool({\n name: \"direct\",\n description: detail(\"direct\"),\n parameters: z.object({\n locator: z\n .string()\n .describe(\n \"Locator string. !namespace.method for RoleX commands, or a ResourceX locator for resources\"\n ),\n args: z.record(z.unknown()).optional().describe(\"Named arguments for the command or resource\"),\n }),\n execute: async ({ locator, args }) => {\n const result = await rolex.direct(locator, args);\n if (result == null) return `${locator} done.`;\n if (typeof result === \"string\") return result;\n return JSON.stringify(result, null, 2);\n },\n});\n\n// ========== Start ==========\n\nserver.start({\n transportType: \"stdio\",\n});\n","/**\n * MCP server instructions — the cognitive framework for AI roles.\n *\n * Assembled from world .feature files in rolexjs descriptions.\n * Each feature describes one independent concern of the RoleX framework.\n */\nimport { world } from \"rolexjs\";\n\nexport const instructions = Object.values(world).join(\"\\n\\n\");\n","/**\n * McpState — thin session holder for the MCP server.\n *\n * Holds the active Role handle. All business logic (state tracking,\n * cognitive hints, encounter/experience registries) lives in Role + RoleContext.\n */\nimport type { Role } from \"rolexjs\";\n\nexport class McpState {\n role: Role | null = null;\n\n requireRole(): Role {\n if (!this.role) throw new Error(\"No active role. Call activate first.\");\n return this.role;\n }\n}\n"],"mappings":"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","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rolexjs/mcp-server",
|
|
3
|
-
"version": "0.12.0-dev-
|
|
3
|
+
"version": "0.12.0-dev-20260302040425",
|
|
4
4
|
"description": "MCP server for Rolex — expose RDD role management as MCP tools",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"rolex",
|
|
@@ -41,9 +41,9 @@
|
|
|
41
41
|
"clean": "rm -rf dist"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"rolexjs": "0.12.0-dev-
|
|
45
|
-
"@rolexjs/local-platform": "0.12.0-dev-
|
|
46
|
-
"@rolexjs/genesis": "0.12.0-dev-
|
|
44
|
+
"rolexjs": "0.12.0-dev-20260302040425",
|
|
45
|
+
"@rolexjs/local-platform": "0.12.0-dev-20260302040425",
|
|
46
|
+
"@rolexjs/genesis": "0.12.0-dev-20260302040425",
|
|
47
47
|
"fastmcp": "^3.0.0",
|
|
48
48
|
"zod": "^3.25.0"
|
|
49
49
|
},
|