@aionis/mcp 0.1.0

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/README.md ADDED
@@ -0,0 +1,68 @@
1
+ # @aionis/mcp
2
+
3
+ MCP stdio bridge for Aionis execution memory.
4
+
5
+ Use this package when you want Claude Code, Cursor, or another MCP client to
6
+ try Aionis without rewriting the host Agent loop first.
7
+
8
+ ```bash
9
+ npx @aionis/mcp@latest --base-url http://127.0.0.1:3001 --scope my-project
10
+ ```
11
+
12
+ Environment form:
13
+
14
+ ```bash
15
+ AIONIS_BASE_URL=http://127.0.0.1:3001 \
16
+ AIONIS_TENANT_ID=default \
17
+ AIONIS_SCOPE=my-project \
18
+ npx @aionis/mcp@latest
19
+ ```
20
+
21
+ ## Tools
22
+
23
+ The server exposes stable product tools, not internal Runtime packets:
24
+
25
+ | Tool | Purpose |
26
+ |---|---|
27
+ | `aionis_context` | Compile governed Agent context for the current run. Optionally records a lightweight observation first. |
28
+ | `aionis_record_step` | Record a planner/worker/verifier/reviewer step. Feedback attribution is optional. |
29
+ | `aionis_handoff` | Record branch-aware multi-agent handoff state. |
30
+ | `aionis_remember` | Store ordinary project memory through the governed observe path. |
31
+ | `aionis_measure` | Measure whether guided memory changed the run. |
32
+ | `aionis_snapshot` | Return read-only operator/audit state. |
33
+ | `aionis_health` | Check Runtime reachability. |
34
+
35
+ ## Claude Code / Cursor Config
36
+
37
+ Use the MCP client's command/args configuration:
38
+
39
+ ```json
40
+ {
41
+ "mcpServers": {
42
+ "aionis": {
43
+ "command": "npx",
44
+ "args": [
45
+ "-y",
46
+ "@aionis/mcp@latest",
47
+ "--base-url",
48
+ "http://127.0.0.1:3001",
49
+ "--scope",
50
+ "my-project"
51
+ ],
52
+ "env": {
53
+ "AIONIS_TENANT_ID": "default"
54
+ }
55
+ }
56
+ }
57
+ }
58
+ ```
59
+
60
+ Start a local Runtime first:
61
+
62
+ ```bash
63
+ cd Aionis
64
+ npm run -s lite:start
65
+ ```
66
+
67
+ For deeper host integration, use `@aionis/sdk`. The MCP bridge is the
68
+ drop-in path; the SDK is the full application integration path.
@@ -0,0 +1,13 @@
1
+ import type { AionisClientOptions, AionisGuideMode } from "@aionis/sdk";
2
+ export type AionisMcpConfig = {
3
+ baseUrl: string;
4
+ apiKey?: string;
5
+ tenant_id?: string;
6
+ scope?: string;
7
+ default_guide_mode?: AionisGuideMode | null;
8
+ };
9
+ export declare const DEFAULT_AIONIS_BASE_URL = "http://127.0.0.1:3001";
10
+ export declare function aionisMcpUsage(): string;
11
+ export declare function parseAionisMcpConfig(argv?: string[], env?: NodeJS.ProcessEnv): AionisMcpConfig;
12
+ export declare function clientOptionsFromMcpConfig(config: AionisMcpConfig): AionisClientOptions;
13
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAExE,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kBAAkB,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;CAC7C,CAAC;AAEF,eAAO,MAAM,uBAAuB,0BAA0B,CAAC;AAc/D,wBAAgB,cAAc,IAAI,MAAM,CAgBvC;AAED,wBAAgB,oBAAoB,CAClC,IAAI,GAAE,MAAM,EAA0B,EACtC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,eAAe,CAgDjB;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,eAAe,GAAG,mBAAmB,CAQvF"}
package/dist/config.js ADDED
@@ -0,0 +1,88 @@
1
+ export const DEFAULT_AIONIS_BASE_URL = "http://127.0.0.1:3001";
2
+ function readFlagValue(argv, index, flag) {
3
+ const value = argv[index + 1];
4
+ if (!value || value.startsWith("-"))
5
+ throw new Error(`${flag} requires a value`);
6
+ return value;
7
+ }
8
+ function parseGuideMode(value) {
9
+ if (value === "full_power" || value === "standard")
10
+ return value;
11
+ if (value === "none" || value === "off")
12
+ return null;
13
+ throw new Error(`Unsupported guide mode "${value}". Use full_power, standard, or none.`);
14
+ }
15
+ export function aionisMcpUsage() {
16
+ return `Usage:
17
+ npx @aionis/mcp [options]
18
+
19
+ Options:
20
+ --base-url <url> Aionis Runtime URL. Defaults to AIONIS_BASE_URL or ${DEFAULT_AIONIS_BASE_URL}
21
+ --api-key <key> Runtime bearer token. Prefer AIONIS_API_KEY for shell history safety.
22
+ --tenant <id> Default tenant id. Defaults to AIONIS_TENANT_ID.
23
+ --scope <scope> Default memory scope. Defaults to AIONIS_SCOPE.
24
+ --mode <name> full_power, standard, or none. Defaults to AIONIS_GUIDE_MODE or full_power.
25
+ -h, --help Show help.
26
+
27
+ Examples:
28
+ npx @aionis/mcp --base-url http://127.0.0.1:3001 --tenant local --scope my-project
29
+ AIONIS_BASE_URL=http://127.0.0.1:3001 AIONIS_SCOPE=my-project npx @aionis/mcp
30
+ `;
31
+ }
32
+ export function parseAionisMcpConfig(argv = process.argv.slice(2), env = process.env) {
33
+ let baseUrl = env.AIONIS_BASE_URL?.trim() || env.AIONIS_PRODUCT_E2E_BASE_URL?.trim() || DEFAULT_AIONIS_BASE_URL;
34
+ let apiKey = env.AIONIS_API_KEY?.trim() || undefined;
35
+ let tenantId = env.AIONIS_TENANT_ID?.trim() || env.AIONIS_TENANT?.trim() || undefined;
36
+ let scope = env.AIONIS_SCOPE?.trim() || undefined;
37
+ let defaultGuideMode = parseGuideMode(env.AIONIS_GUIDE_MODE?.trim() || "full_power");
38
+ for (let i = 0; i < argv.length; i += 1) {
39
+ const arg = argv[i];
40
+ if (arg === "-h" || arg === "--help") {
41
+ process.stdout.write(aionisMcpUsage());
42
+ process.exit(0);
43
+ }
44
+ if (arg === "--base-url") {
45
+ baseUrl = readFlagValue(argv, i, arg);
46
+ i += 1;
47
+ continue;
48
+ }
49
+ if (arg === "--api-key") {
50
+ apiKey = readFlagValue(argv, i, arg);
51
+ i += 1;
52
+ continue;
53
+ }
54
+ if (arg === "--tenant") {
55
+ tenantId = readFlagValue(argv, i, arg);
56
+ i += 1;
57
+ continue;
58
+ }
59
+ if (arg === "--scope") {
60
+ scope = readFlagValue(argv, i, arg);
61
+ i += 1;
62
+ continue;
63
+ }
64
+ if (arg === "--mode") {
65
+ defaultGuideMode = parseGuideMode(readFlagValue(argv, i, arg));
66
+ i += 1;
67
+ continue;
68
+ }
69
+ throw new Error(`Unknown option "${arg}"`);
70
+ }
71
+ return {
72
+ baseUrl,
73
+ apiKey,
74
+ tenant_id: tenantId,
75
+ scope,
76
+ default_guide_mode: defaultGuideMode,
77
+ };
78
+ }
79
+ export function clientOptionsFromMcpConfig(config) {
80
+ return {
81
+ baseUrl: config.baseUrl,
82
+ apiKey: config.apiKey,
83
+ tenant_id: config.tenant_id,
84
+ scope: config.scope,
85
+ default_guide_mode: config.default_guide_mode,
86
+ };
87
+ }
88
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env node
2
+ export { aionisMcpUsage, clientOptionsFromMcpConfig, parseAionisMcpConfig } from "./config.js";
3
+ export { createAionisMcpServer } from "./server.js";
4
+ export { AIONIS_MCP_TOOL_NAMES, createAionisMcpClient, handleAionisMcpTool } from "./tools.js";
5
+ export declare function main(argv?: string[]): Promise<void>;
6
+ export declare function isCliEntrypoint(argvEntry: string | undefined, moduleUrl?: string): boolean;
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AASA,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE/F,wBAAsB,IAAI,CAAC,IAAI,WAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAKtE;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,SAAkB,GAAG,OAAO,CAQnG"}
package/dist/index.js ADDED
@@ -0,0 +1,35 @@
1
+ #!/usr/bin/env node
2
+ import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
3
+ import fs from "node:fs";
4
+ import path from "node:path";
5
+ import { fileURLToPath } from "node:url";
6
+ import { parseAionisMcpConfig } from "./config.js";
7
+ import { createAionisMcpServer } from "./server.js";
8
+ import { createAionisMcpClient } from "./tools.js";
9
+ export { aionisMcpUsage, clientOptionsFromMcpConfig, parseAionisMcpConfig } from "./config.js";
10
+ export { createAionisMcpServer } from "./server.js";
11
+ export { AIONIS_MCP_TOOL_NAMES, createAionisMcpClient, handleAionisMcpTool } from "./tools.js";
12
+ export async function main(argv = process.argv.slice(2)) {
13
+ const config = parseAionisMcpConfig(argv);
14
+ const client = createAionisMcpClient(config);
15
+ const server = createAionisMcpServer(client);
16
+ await server.connect(new StdioServerTransport());
17
+ }
18
+ export function isCliEntrypoint(argvEntry, moduleUrl = import.meta.url) {
19
+ if (!argvEntry)
20
+ return false;
21
+ const modulePath = fileURLToPath(moduleUrl);
22
+ try {
23
+ return fs.realpathSync(argvEntry) === fs.realpathSync(modulePath);
24
+ }
25
+ catch {
26
+ return path.resolve(argvEntry) === path.resolve(modulePath);
27
+ }
28
+ }
29
+ if (isCliEntrypoint(process.argv[1])) {
30
+ main().catch((err) => {
31
+ process.stderr.write(`Aionis MCP failed: ${err instanceof Error ? err.message : String(err)}\n`);
32
+ process.exitCode = 1;
33
+ });
34
+ }
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAEnD,OAAO,EAAE,cAAc,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC/F,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAE/F,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,SAA6B,EAAE,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG;IACxF,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IAC7B,MAAM,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IAC5C,IAAI,CAAC;QACH,OAAO,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACpE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC;AAED,IAAI,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjG,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import { type AionisMcpClient } from "./tools.js";
3
+ export declare function createAionisMcpServer(client: AionisMcpClient): McpServer;
4
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEpE,OAAO,EAAuB,KAAK,eAAe,EAA0B,MAAM,YAAY,CAAC;AAwD/F,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,CAsIxE"}
package/dist/server.js ADDED
@@ -0,0 +1,170 @@
1
+ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
2
+ import { z } from "zod/v3";
3
+ import { handleAionisMcpTool } from "./tools.js";
4
+ const role = z.enum(["agent", "planner", "worker", "verifier", "reviewer"]).optional();
5
+ const outcome = z.enum(["succeeded", "failed", "blocked", "interrupted", "unknown"]).optional();
6
+ const guideMode = z.enum(["standard", "full_power"]).optional();
7
+ const memoryLane = z.enum(["private", "shared"]).optional();
8
+ const stringArray = z.array(z.string()).optional();
9
+ const jsonObject = z.record(z.unknown()).optional();
10
+ const guideValue = z.unknown().optional();
11
+ const runShape = {
12
+ run_id: z.string().describe("Stable run/session id."),
13
+ task_id: z.string().optional(),
14
+ task_signature: z.string().describe("Stable task or workflow signature."),
15
+ task_family: z.string().optional(),
16
+ workflow_signature: z.string().optional(),
17
+ agent_id: z.string().optional(),
18
+ team_id: z.string().optional(),
19
+ role,
20
+ tenant_id: z.string().optional(),
21
+ scope: z.string().optional(),
22
+ };
23
+ const stepShape = {
24
+ ...runShape,
25
+ memory_lane: memoryLane,
26
+ title: z.string(),
27
+ summary: z.string(),
28
+ outcome,
29
+ target_files: stringArray,
30
+ workflow_steps: stringArray,
31
+ tool_set: stringArray,
32
+ acceptance_checks: stringArray,
33
+ continuation_hint: z.string().optional(),
34
+ resume_hint: z.string().optional(),
35
+ reuse_hint: z.string().optional(),
36
+ confidence: z.number().optional(),
37
+ raw_ref: z.string().optional(),
38
+ evidence_ref: z.string().optional(),
39
+ };
40
+ function register(server, client, name, config) {
41
+ server.registerTool(name, config, async (args) => handleAionisMcpTool(client, name, args));
42
+ }
43
+ export function createAionisMcpServer(client) {
44
+ const server = new McpServer({
45
+ name: "aionis-mcp",
46
+ version: "0.1.0",
47
+ });
48
+ register(server, client, "aionis_context", {
49
+ title: "Get Aionis Agent Context",
50
+ description: "Compile governed Aionis execution memory for the current agent turn. Feedback is optional.",
51
+ inputSchema: {
52
+ ...runShape,
53
+ query_text: z.string(),
54
+ memory_lane: memoryLane,
55
+ title: z.string().optional().describe("Optional current observation title to record before guidance."),
56
+ summary: z.string().optional().describe("Optional current observation summary to record before guidance."),
57
+ outcome,
58
+ target_files: stringArray,
59
+ tool_candidates: stringArray,
60
+ context: jsonObject,
61
+ guide: jsonObject,
62
+ limit: z.number().int().positive().optional(),
63
+ mode: guideMode,
64
+ context_char_budget: z.number().int().positive().optional(),
65
+ context_token_budget: z.number().int().positive().optional(),
66
+ context_compaction_profile: z.enum(["balanced", "aggressive"]).optional(),
67
+ context_optimization_profile: z.enum(["balanced", "aggressive"]).optional(),
68
+ },
69
+ });
70
+ register(server, client, "aionis_record_step", {
71
+ title: "Record Aionis Execution Step",
72
+ description: "Record a planner/worker/verifier/reviewer execution step and optionally attribute feedback.",
73
+ inputSchema: {
74
+ ...stepShape,
75
+ guide: guideValue,
76
+ guide_trace_id: z.string().optional(),
77
+ used_memory_ids: stringArray,
78
+ feedback: z.boolean().optional(),
79
+ feedback_outcome: z.enum(["positive", "negative", "neutral"]).optional(),
80
+ used_surface: z.enum(["use_now", "inspect_before_use", "do_not_use", "explicit_host_assertion"]).optional(),
81
+ tool_status: z.enum(["succeeded", "failed", "not_run", "unknown"]).optional(),
82
+ feedback_reason: z.string().optional(),
83
+ },
84
+ });
85
+ register(server, client, "aionis_handoff", {
86
+ title: "Record Aionis Handoff",
87
+ description: "Record a branch-aware multi-agent handoff for cross-session continuation.",
88
+ inputSchema: {
89
+ ...stepShape,
90
+ handoff_kind: z.enum(["patch_handoff", "review_handoff", "task_handoff"]).optional(),
91
+ anchor: z.string().optional(),
92
+ handoff_text: z.string().optional(),
93
+ risk: z.string().optional(),
94
+ tags: stringArray,
95
+ next_action: z.string().optional(),
96
+ must_change: stringArray,
97
+ must_remove: stringArray,
98
+ must_keep: stringArray,
99
+ },
100
+ });
101
+ register(server, client, "aionis_remember", {
102
+ title: "Remember In Aionis",
103
+ description: "Store ordinary project memory through the Aionis governed observe path.",
104
+ inputSchema: {
105
+ text: z.string(),
106
+ kind: z.enum(["fact", "preference", "project_context", "procedure", "event", "evidence"]).optional(),
107
+ title: z.string().optional(),
108
+ client_id: z.string().optional(),
109
+ memory_lane: memoryLane,
110
+ producer_agent_id: z.string().optional(),
111
+ owner_agent_id: z.string().optional(),
112
+ owner_team_id: z.string().optional(),
113
+ lifecycle_state: z.enum(["active", "candidate", "contested", "suppressed", "demoted", "archived"]).optional(),
114
+ tier: z.enum(["hot", "warm", "cold", "archive"]).optional(),
115
+ confidence: z.number().optional(),
116
+ salience: z.number().optional(),
117
+ importance: z.number().optional(),
118
+ auto_embed: z.boolean().optional(),
119
+ raw_ref: z.string().optional(),
120
+ evidence_ref: z.string().optional(),
121
+ target_files: stringArray,
122
+ slots: jsonObject,
123
+ tenant_id: z.string().optional(),
124
+ scope: z.string().optional(),
125
+ },
126
+ });
127
+ register(server, client, "aionis_measure", {
128
+ title: "Measure Aionis Run",
129
+ description: "Measure guide and feedback impact for a run.",
130
+ inputSchema: {
131
+ run_id: z.string(),
132
+ task_signature: z.string(),
133
+ task_id: z.string().optional(),
134
+ task_family: z.string().optional(),
135
+ workflow_signature: z.string().optional(),
136
+ tenant_id: z.string().optional(),
137
+ scope: z.string().optional(),
138
+ before_guide: guideValue,
139
+ after_guide: z.unknown(),
140
+ feedback_result: guideValue,
141
+ sufficient_evidence: z.boolean().optional(),
142
+ evidence_ids: stringArray,
143
+ product_trace: jsonObject,
144
+ },
145
+ });
146
+ register(server, client, "aionis_snapshot", {
147
+ title: "Get Aionis Operator Snapshot",
148
+ description: "Return an auditable operator snapshot. If guide and measure_result are supplied, uses the run snapshot helper.",
149
+ inputSchema: {
150
+ run_id: z.string(),
151
+ task_signature: z.string().optional(),
152
+ task_id: z.string().optional(),
153
+ task_family: z.string().optional(),
154
+ workflow_signature: z.string().optional(),
155
+ tenant_id: z.string().optional(),
156
+ scope: z.string().optional(),
157
+ guide: guideValue,
158
+ measure_result: guideValue,
159
+ include_markdown: z.boolean().optional(),
160
+ extra: jsonObject,
161
+ },
162
+ });
163
+ register(server, client, "aionis_health", {
164
+ title: "Check Aionis Runtime Health",
165
+ description: "Check whether the configured Aionis Runtime is reachable.",
166
+ inputSchema: {},
167
+ });
168
+ return server;
169
+ }
170
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAgD,MAAM,YAAY,CAAC;AAE/F,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AACvF,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAChG,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAChE,MAAM,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAC5D,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;AACnD,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;AACpD,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC;AAQ1C,MAAM,QAAQ,GAAG;IACf,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACrD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;IACzE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACzC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC/B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,IAAI;IACJ,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC7B,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,GAAG,QAAQ;IACX,WAAW,EAAE,UAAU;IACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,OAAO;IACP,YAAY,EAAE,WAAW;IACzB,cAAc,EAAE,WAAW;IAC3B,QAAQ,EAAE,WAAW;IACrB,iBAAiB,EAAE,WAAW;IAC9B,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACxC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAClC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACpC,CAAC;AAEF,SAAS,QAAQ,CACf,MAAiB,EACjB,MAAuB,EACvB,IAAuB,EACvB,MAAkB;IAElB,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAuB;IAC3D,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;KACjB,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE;QACzC,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,4FAA4F;QACzG,WAAW,EAAE;YACX,GAAG,QAAQ;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;YACtB,WAAW,EAAE,UAAU;YACvB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;YACtG,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iEAAiE,CAAC;YAC1G,OAAO;YACP,YAAY,EAAE,WAAW;YACzB,eAAe,EAAE,WAAW;YAC5B,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,UAAU;YACjB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAC7C,IAAI,EAAE,SAAS;YACf,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAC3D,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;YAC5D,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE;YACzE,4BAA4B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC5E;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAC7C,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,6FAA6F;QAC1G,WAAW,EAAE;YACX,GAAG,SAAS;YACZ,KAAK,EAAE,UAAU;YACjB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACrC,eAAe,EAAE,WAAW;YAC5B,QAAQ,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAChC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;YACxE,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,oBAAoB,EAAE,YAAY,EAAE,yBAAyB,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC3G,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC7E,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SACvC;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE;QACzC,KAAK,EAAE,uBAAuB;QAC9B,WAAW,EAAE,2EAA2E;QACxF,WAAW,EAAE;YACX,GAAG,SAAS;YACZ,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,gBAAgB,EAAE,cAAc,CAAC,CAAC,CAAC,QAAQ,EAAE;YACpF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC7B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAClC,WAAW,EAAE,WAAW;YACxB,WAAW,EAAE,WAAW;YACxB,SAAS,EAAE,WAAW;SACvB;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE;QAC1C,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,yEAAyE;QACtF,WAAW,EAAE;YACX,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;YAChB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE;YACpG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC5B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAChC,WAAW,EAAE,UAAU;YACvB,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACxC,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACrC,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACpC,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC7G,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC3D,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACjC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC/B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACjC,UAAU,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAClC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC9B,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACnC,YAAY,EAAE,WAAW;YACzB,KAAK,EAAE,UAAU;YACjB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC7B;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE;QACzC,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,8CAA8C;QAC3D,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;YAClB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;YAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC9B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAClC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC5B,YAAY,EAAE,UAAU;YACxB,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;YACxB,eAAe,EAAE,UAAU;YAC3B,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YAC3C,YAAY,EAAE,WAAW;YACzB,aAAa,EAAE,UAAU;SAC1B;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE;QAC1C,KAAK,EAAE,8BAA8B;QACrC,WAAW,EAAE,gHAAgH;QAC7H,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;YAClB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACrC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC9B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAClC,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YACzC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAChC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC5B,KAAK,EAAE,UAAU;YACjB,cAAc,EAAE,UAAU;YAC1B,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;YACxC,KAAK,EAAE,UAAU;SAClB;KACF,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE;QACxC,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,2DAA2D;QACxE,WAAW,EAAE,EAAE;KAChB,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,141 @@
1
+ import { type AionisClient, type AionisExecutionAgentRole, type AionisExecutionOutcomeStatus, type AionisFeedbackOutcome, type AionisFeedbackUsedSurface, type AionisGuideMode, type AionisHandoffKind, type AionisMemoryLane, type AionisRememberKind, type AionisRememberLifecycleState, type AionisRememberTier, type AionisToolStatus } from "@aionis/sdk";
2
+ import { type AionisMcpConfig } from "./config.js";
3
+ export declare const AIONIS_MCP_TOOL_NAMES: readonly ["aionis_context", "aionis_record_step", "aionis_handoff", "aionis_remember", "aionis_measure", "aionis_snapshot", "aionis_health"];
4
+ export type AionisMcpToolName = typeof AIONIS_MCP_TOOL_NAMES[number];
5
+ export type JsonRecord = Record<string, unknown>;
6
+ export type AionisMcpClient = Pick<AionisClient, "remember" | "measure" | "snapshot" | "health"> & {
7
+ execution: Pick<AionisClient["execution"], "observeStep" | "handoff" | "guideForRole" | "observeOutcome" | "measureRun" | "snapshotRun">;
8
+ };
9
+ export type AionisContextInput = {
10
+ run_id: string;
11
+ task_signature: string;
12
+ query_text: string;
13
+ task_id?: string;
14
+ task_family?: string;
15
+ workflow_signature?: string;
16
+ agent_id?: string;
17
+ team_id?: string;
18
+ role?: AionisExecutionAgentRole;
19
+ tenant_id?: string;
20
+ scope?: string;
21
+ memory_lane?: AionisMemoryLane;
22
+ title?: string;
23
+ summary?: string;
24
+ outcome?: AionisExecutionOutcomeStatus;
25
+ target_files?: string[];
26
+ tool_candidates?: string[];
27
+ context?: JsonRecord;
28
+ guide?: JsonRecord;
29
+ limit?: number;
30
+ mode?: AionisGuideMode;
31
+ context_char_budget?: number;
32
+ context_token_budget?: number;
33
+ context_compaction_profile?: "balanced" | "aggressive";
34
+ context_optimization_profile?: "balanced" | "aggressive";
35
+ };
36
+ export type AionisRecordStepInput = {
37
+ run_id: string;
38
+ task_signature: string;
39
+ title: string;
40
+ summary: string;
41
+ task_id?: string;
42
+ task_family?: string;
43
+ workflow_signature?: string;
44
+ agent_id?: string;
45
+ team_id?: string;
46
+ role?: AionisExecutionAgentRole;
47
+ tenant_id?: string;
48
+ scope?: string;
49
+ memory_lane?: AionisMemoryLane;
50
+ outcome?: AionisExecutionOutcomeStatus;
51
+ target_files?: string[];
52
+ workflow_steps?: string[];
53
+ tool_set?: string[];
54
+ acceptance_checks?: string[];
55
+ continuation_hint?: string;
56
+ resume_hint?: string;
57
+ reuse_hint?: string;
58
+ confidence?: number;
59
+ raw_ref?: string;
60
+ evidence_ref?: string;
61
+ guide?: unknown;
62
+ guide_trace_id?: string;
63
+ used_memory_ids?: string[];
64
+ feedback?: boolean;
65
+ feedback_outcome?: AionisFeedbackOutcome;
66
+ used_surface?: AionisFeedbackUsedSurface;
67
+ tool_status?: AionisToolStatus;
68
+ feedback_reason?: string;
69
+ };
70
+ export type AionisHandoffInput = AionisRecordStepInput & {
71
+ handoff_kind?: AionisHandoffKind;
72
+ anchor?: string;
73
+ handoff_text?: string;
74
+ risk?: string;
75
+ tags?: string[];
76
+ next_action?: string;
77
+ must_change?: string[];
78
+ must_remove?: string[];
79
+ must_keep?: string[];
80
+ };
81
+ export type AionisRememberInput = {
82
+ text: string;
83
+ kind?: AionisRememberKind;
84
+ title?: string;
85
+ client_id?: string;
86
+ memory_lane?: AionisMemoryLane;
87
+ producer_agent_id?: string;
88
+ owner_agent_id?: string;
89
+ owner_team_id?: string;
90
+ lifecycle_state?: AionisRememberLifecycleState;
91
+ tier?: AionisRememberTier;
92
+ confidence?: number;
93
+ salience?: number;
94
+ importance?: number;
95
+ auto_embed?: boolean;
96
+ raw_ref?: string;
97
+ evidence_ref?: string;
98
+ target_files?: string[];
99
+ slots?: JsonRecord;
100
+ tenant_id?: string;
101
+ scope?: string;
102
+ };
103
+ export type AionisMeasureInput = {
104
+ run_id: string;
105
+ task_signature: string;
106
+ task_id?: string;
107
+ task_family?: string;
108
+ workflow_signature?: string;
109
+ tenant_id?: string;
110
+ scope?: string;
111
+ before_guide?: unknown;
112
+ after_guide: unknown;
113
+ feedback_result?: unknown;
114
+ sufficient_evidence?: boolean;
115
+ evidence_ids?: string[];
116
+ product_trace?: JsonRecord;
117
+ };
118
+ export type AionisSnapshotInput = {
119
+ run_id: string;
120
+ task_signature?: string;
121
+ task_id?: string;
122
+ task_family?: string;
123
+ workflow_signature?: string;
124
+ tenant_id?: string;
125
+ scope?: string;
126
+ guide?: unknown;
127
+ measure_result?: unknown;
128
+ include_markdown?: boolean;
129
+ extra?: JsonRecord;
130
+ };
131
+ type ToolResult = {
132
+ content: Array<{
133
+ type: "text";
134
+ text: string;
135
+ }>;
136
+ structuredContent?: JsonRecord;
137
+ };
138
+ export declare function createAionisMcpClient(config: AionisMcpConfig): AionisClient;
139
+ export declare function handleAionisMcpTool(client: AionisMcpClient, name: AionisMcpToolName, args: unknown): Promise<ToolResult>;
140
+ export {};
141
+ //# sourceMappingURL=tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/dist/tools.js ADDED
@@ -0,0 +1,237 @@
1
+ import { agentPromptFromGuide, createAionisClient, } from "@aionis/sdk";
2
+ import { clientOptionsFromMcpConfig } from "./config.js";
3
+ export const AIONIS_MCP_TOOL_NAMES = [
4
+ "aionis_context",
5
+ "aionis_record_step",
6
+ "aionis_handoff",
7
+ "aionis_remember",
8
+ "aionis_measure",
9
+ "aionis_snapshot",
10
+ "aionis_health",
11
+ ];
12
+ export function createAionisMcpClient(config) {
13
+ return createAionisClient(clientOptionsFromMcpConfig(config));
14
+ }
15
+ function result(payload) {
16
+ return {
17
+ content: [{ type: "text", text: JSON.stringify(payload, null, 2) }],
18
+ structuredContent: payload,
19
+ };
20
+ }
21
+ function asRecord(value, label) {
22
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
23
+ throw new Error(`${label} must be an object`);
24
+ }
25
+ return value;
26
+ }
27
+ function optionalStringArray(value, label) {
28
+ if (value === undefined)
29
+ return undefined;
30
+ if (!Array.isArray(value) || value.some((item) => typeof item !== "string")) {
31
+ throw new Error(`${label} must be an array of strings`);
32
+ }
33
+ return value;
34
+ }
35
+ function contextInput(args) {
36
+ const input = asRecord(args, "aionis_context input");
37
+ return {
38
+ ...input,
39
+ run_id: String(input.run_id ?? ""),
40
+ task_signature: String(input.task_signature ?? ""),
41
+ query_text: String(input.query_text ?? ""),
42
+ target_files: optionalStringArray(input.target_files, "target_files"),
43
+ tool_candidates: optionalStringArray(input.tool_candidates, "tool_candidates"),
44
+ };
45
+ }
46
+ function recordStepInput(args) {
47
+ const input = asRecord(args, "aionis_record_step input");
48
+ return {
49
+ ...input,
50
+ run_id: String(input.run_id ?? ""),
51
+ task_signature: String(input.task_signature ?? ""),
52
+ title: String(input.title ?? ""),
53
+ summary: String(input.summary ?? ""),
54
+ target_files: optionalStringArray(input.target_files, "target_files"),
55
+ workflow_steps: optionalStringArray(input.workflow_steps, "workflow_steps"),
56
+ tool_set: optionalStringArray(input.tool_set, "tool_set"),
57
+ acceptance_checks: optionalStringArray(input.acceptance_checks, "acceptance_checks"),
58
+ used_memory_ids: optionalStringArray(input.used_memory_ids, "used_memory_ids"),
59
+ };
60
+ }
61
+ function handoffInput(args) {
62
+ const input = recordStepInput(args);
63
+ return {
64
+ ...input,
65
+ tags: optionalStringArray(args.tags, "tags"),
66
+ must_change: optionalStringArray(args.must_change, "must_change"),
67
+ must_remove: optionalStringArray(args.must_remove, "must_remove"),
68
+ must_keep: optionalStringArray(args.must_keep, "must_keep"),
69
+ };
70
+ }
71
+ function rememberInput(args) {
72
+ const input = asRecord(args, "aionis_remember input");
73
+ return {
74
+ ...input,
75
+ text: String(input.text ?? ""),
76
+ target_files: optionalStringArray(input.target_files, "target_files"),
77
+ };
78
+ }
79
+ function measureInput(args) {
80
+ const input = asRecord(args, "aionis_measure input");
81
+ return {
82
+ ...input,
83
+ run_id: String(input.run_id ?? ""),
84
+ task_signature: String(input.task_signature ?? ""),
85
+ evidence_ids: optionalStringArray(input.evidence_ids, "evidence_ids"),
86
+ };
87
+ }
88
+ function snapshotInput(args) {
89
+ const input = asRecord(args, "aionis_snapshot input");
90
+ return {
91
+ ...input,
92
+ run_id: String(input.run_id ?? ""),
93
+ task_signature: typeof input.task_signature === "string" ? input.task_signature : undefined,
94
+ };
95
+ }
96
+ function requireNonEmpty(value, label) {
97
+ if (!value.trim())
98
+ throw new Error(`${label} is required`);
99
+ return value;
100
+ }
101
+ function feedbackEnabled(input) {
102
+ if (input.feedback === false)
103
+ return false;
104
+ return Boolean(input.guide || input.guide_trace_id) && Boolean(input.used_memory_ids?.length);
105
+ }
106
+ export async function handleAionisMcpTool(client, name, args) {
107
+ if (name === "aionis_context") {
108
+ const input = contextInput(args);
109
+ requireNonEmpty(input.run_id, "run_id");
110
+ requireNonEmpty(input.task_signature, "task_signature");
111
+ requireNonEmpty(input.query_text, "query_text");
112
+ let observed = null;
113
+ if (input.title?.trim() && input.summary?.trim()) {
114
+ observed = await client.execution.observeStep({
115
+ run_id: input.run_id,
116
+ task_id: input.task_id,
117
+ task_signature: input.task_signature,
118
+ task_family: input.task_family,
119
+ workflow_signature: input.workflow_signature,
120
+ agent_id: input.agent_id,
121
+ team_id: input.team_id,
122
+ role: input.role,
123
+ tenant_id: input.tenant_id,
124
+ scope: input.scope,
125
+ memory_lane: input.memory_lane,
126
+ title: input.title,
127
+ summary: input.summary,
128
+ outcome: input.outcome ?? "unknown",
129
+ target_files: input.target_files,
130
+ });
131
+ }
132
+ const guide = await client.execution.guideForRole({
133
+ run_id: input.run_id,
134
+ task_id: input.task_id,
135
+ task_signature: input.task_signature,
136
+ task_family: input.task_family,
137
+ workflow_signature: input.workflow_signature,
138
+ agent_id: input.agent_id,
139
+ team_id: input.team_id,
140
+ role: input.role,
141
+ tenant_id: input.tenant_id,
142
+ scope: input.scope,
143
+ query_text: input.query_text,
144
+ context: input.context,
145
+ tool_candidates: input.tool_candidates,
146
+ limit: input.limit,
147
+ mode: input.mode,
148
+ context_char_budget: input.context_char_budget,
149
+ context_token_budget: input.context_token_budget,
150
+ context_compaction_profile: input.context_compaction_profile,
151
+ context_optimization_profile: input.context_optimization_profile,
152
+ guide: input.guide,
153
+ });
154
+ return result({
155
+ ok: true,
156
+ observed,
157
+ guide,
158
+ agent_prompt: agentPromptFromGuide(guide),
159
+ drop_in_mode: true,
160
+ feedback_required: false,
161
+ });
162
+ }
163
+ if (name === "aionis_record_step") {
164
+ const input = recordStepInput(args);
165
+ requireNonEmpty(input.run_id, "run_id");
166
+ requireNonEmpty(input.task_signature, "task_signature");
167
+ requireNonEmpty(input.title, "title");
168
+ requireNonEmpty(input.summary, "summary");
169
+ const payload = await client.execution.observeOutcome({
170
+ ...input,
171
+ feedback: feedbackEnabled(input),
172
+ });
173
+ return result({ ok: true, ...payload, feedback_required: false });
174
+ }
175
+ if (name === "aionis_handoff") {
176
+ const input = handoffInput(args);
177
+ requireNonEmpty(input.run_id, "run_id");
178
+ requireNonEmpty(input.task_signature, "task_signature");
179
+ requireNonEmpty(input.title, "title");
180
+ requireNonEmpty(input.summary, "summary");
181
+ const handoff = await client.execution.handoff(input);
182
+ return result({ ok: true, handoff });
183
+ }
184
+ if (name === "aionis_remember") {
185
+ const input = rememberInput(args);
186
+ requireNonEmpty(input.text, "text");
187
+ const { tenant_id: tenantId, scope, ...body } = input;
188
+ const remembered = await client.remember(body, { tenant_id: tenantId, scope });
189
+ return result({ ok: true, remembered });
190
+ }
191
+ if (name === "aionis_measure") {
192
+ const input = measureInput(args);
193
+ requireNonEmpty(input.run_id, "run_id");
194
+ requireNonEmpty(input.task_signature, "task_signature");
195
+ const measure = await client.execution.measureRun(input);
196
+ return result({ ok: true, measure });
197
+ }
198
+ if (name === "aionis_snapshot") {
199
+ const input = snapshotInput(args);
200
+ requireNonEmpty(input.run_id, "run_id");
201
+ if (input.task_signature && input.guide && input.measure_result) {
202
+ const snapshot = await client.execution.snapshotRun({
203
+ run_id: input.run_id,
204
+ task_id: input.task_id,
205
+ task_signature: input.task_signature,
206
+ task_family: input.task_family,
207
+ workflow_signature: input.workflow_signature,
208
+ tenant_id: input.tenant_id,
209
+ scope: input.scope,
210
+ guide: input.guide,
211
+ measure_result: input.measure_result,
212
+ include_markdown: input.include_markdown,
213
+ extra: input.extra,
214
+ });
215
+ return result({ ok: true, snapshot });
216
+ }
217
+ const snapshot = await client.snapshot({
218
+ run_id: input.run_id,
219
+ task_signature: input.task_signature,
220
+ task_id: input.task_id,
221
+ task_family: input.task_family,
222
+ workflow_signature: input.workflow_signature,
223
+ include_markdown: input.include_markdown,
224
+ ...(input.extra ?? {}),
225
+ }, {
226
+ tenant_id: input.tenant_id,
227
+ scope: input.scope,
228
+ });
229
+ return result({ ok: true, snapshot });
230
+ }
231
+ if (name === "aionis_health") {
232
+ const health = await client.health();
233
+ return result({ ok: true, health });
234
+ }
235
+ throw new Error(`Unknown Aionis MCP tool: ${name}`);
236
+ }
237
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,30 @@
1
+ {
2
+ "name": "@aionis/mcp",
3
+ "version": "0.1.0",
4
+ "description": "MCP stdio bridge for Aionis execution memory.",
5
+ "license": "Apache-2.0",
6
+ "type": "module",
7
+ "bin": {
8
+ "aionis-mcp": "./dist/index.js"
9
+ },
10
+ "files": [
11
+ "dist",
12
+ "README.md"
13
+ ],
14
+ "engines": {
15
+ "node": ">=22.0.0"
16
+ },
17
+ "scripts": {
18
+ "build": "tsc -p tsconfig.json",
19
+ "test": "tsx --test test/*.test.ts",
20
+ "prepack": "npm run build"
21
+ },
22
+ "dependencies": {
23
+ "@aionis/sdk": "^0.1.2",
24
+ "@modelcontextprotocol/sdk": "^1.29.0",
25
+ "zod": "^3.25.76"
26
+ },
27
+ "publishConfig": {
28
+ "access": "public"
29
+ }
30
+ }