@mcsherrylabs/evolver-mcp 0.9.0 → 0.9.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/install.d.ts +28 -8
- package/dist/install.d.ts.map +1 -1
- package/dist/install.js +87 -28
- package/dist/install.js.map +1 -1
- package/package.json +1 -1
package/dist/install.d.ts
CHANGED
|
@@ -10,14 +10,30 @@ export { LOCAL_CHAIN_URL, LOCAL_CONTENT_PORT, LOCAL_HTTP_PORT };
|
|
|
10
10
|
* only the claim — goes to this funded devnet entry. Mirrors the compose's `DEVNET_API` default. */
|
|
11
11
|
declare const FAUCET_DEFAULT_URL = "https://devnet.mcsherrylabs.com";
|
|
12
12
|
export { FAUCET_DEFAULT_URL };
|
|
13
|
-
/**
|
|
14
|
-
*
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
13
|
+
/** Result of parsing the install command line: the convenience flags, and the bootstrap-shaped
|
|
14
|
+
* argv (`[node, script, --target, local, …]`) to forward to runBootstrap. */
|
|
15
|
+
export interface InstallArgs {
|
|
16
|
+
readonly mcpHome: string | undefined;
|
|
17
|
+
readonly fresh: boolean;
|
|
18
|
+
readonly rest: string[];
|
|
19
|
+
}
|
|
20
|
+
export declare function parseInstallArgs(argv: string[]): InstallArgs;
|
|
21
|
+
/** List `evolver-mcp*` compose project names via `docker compose ls -a`. Runs the daemon CLI; returns
|
|
22
|
+
* [] on any failure (the `--new` path then falls back to a fresh N=2, still safe). */
|
|
23
|
+
export declare function listEvolverMcpProjects(): string[];
|
|
24
|
+
/** Chosen project name + host ports for this install. `project` derives N where
|
|
25
|
+
* http=8440+2*(N-1) and content=8450+2*(N-1); the `evolver-mcp` base is N=1 (default, no `--new`).
|
|
26
|
+
* `--new` scans existing `evolver-mcp*` projects and picks the next free N. */
|
|
27
|
+
export interface NodeAssignment {
|
|
28
|
+
readonly project: string;
|
|
29
|
+
readonly httpPort: string;
|
|
30
|
+
readonly contentPort: string;
|
|
31
|
+
}
|
|
32
|
+
/** Pick a free project name + port pair. With `fresh` (i.e. `--new`), scan `existing` project names
|
|
33
|
+
* and select `evolver-mcp<n>` where n = 1 + the highest existing numeric suffix (base name counts
|
|
34
|
+
* as 1), then derive host ports by the same index. Explicit env overrides (http/content port) are
|
|
35
|
+
* applied by the CALLER so the operator can still pin a specific N or ports. */
|
|
36
|
+
export declare function assignNode(fresh: boolean, existing: readonly string[], httpEnv?: string, contentEnv?: string): NodeAssignment;
|
|
21
37
|
interface InstallEnv {
|
|
22
38
|
/** Override the shipped compose file path (default: `../deploy/docker-compose.yml` beside dist). */
|
|
23
39
|
EVOLVER_INSTALL_COMPOSE?: string;
|
|
@@ -37,6 +53,10 @@ interface InstallEnv {
|
|
|
37
53
|
EVOLVER_FAUCET_URL?: string;
|
|
38
54
|
/** Explicit bootstrap state dir (overrides `--mcp-home`'s derived default). */
|
|
39
55
|
EVOLVER_MCP_STATE_DIR?: string;
|
|
56
|
+
/** Comma-separated existing `evolver-mcp*` project names (test seam) for `--new` auto-pick. */
|
|
57
|
+
EVOLVER_INSTALL_PROJECTS?: string;
|
|
58
|
+
/** Explicit compose project name (overrides the auto-picked name). */
|
|
59
|
+
COMPOSE_PROJECT_NAME?: string;
|
|
40
60
|
}
|
|
41
61
|
export interface InstallResult {
|
|
42
62
|
readonly exitCode: number;
|
package/dist/install.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AA4BA,kGAAkG;AAClG,QAAA,MAAM,eAAe,cAA6D,CAAC;AACnF,kFAAkF;AAClF,QAAA,MAAM,kBAAkB,cAAgE,CAAC;AACzF,QAAA,MAAM,eAAe,cAAyD,CAAC;AAE/E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,CAAC;AAEhE;;;qGAGqG;AACrG,QAAA,MAAM,kBAAkB,oCAAoC,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AA4BA,kGAAkG;AAClG,QAAA,MAAM,eAAe,cAA6D,CAAC;AACnF,kFAAkF;AAClF,QAAA,MAAM,kBAAkB,cAAgE,CAAC;AACzF,QAAA,MAAM,eAAe,cAAyD,CAAC;AAE/E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,CAAC;AAEhE;;;qGAGqG;AACrG,QAAA,MAAM,kBAAkB,oCAAoC,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAY9B;8EAC8E;AAC9E,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;CACzB;AACD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,WAAW,CAyB5D;AAED;uFACuF;AACvF,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAUjD;AAMD;;gFAEgF;AAChF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED;;;iFAGiF;AACjF,wBAAgB,UAAU,CACxB,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,OAAO,CAAC,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,GAClB,cAAc,CAqBhB;AASD,UAAU,UAAU;IAClB,oGAAoG;IACpG,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,kDAAkD;IAClD,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,kGAAkG;IAClG,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,8FAA8F;IAC9F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kFAAkF;IAClF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,uFAAuF;IACvF,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,qFAAqF;IACrF,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,0EAA0E;IAC1E,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,+EAA+E;IAC/E,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+FAA+F;IAC/F,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,sEAAsE;IACtE,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC5B;AAED,sFAAsF;AACtF,wBAAgB,cAAc,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAIvE;AAED,+FAA+F;AAC/F,wBAAgB,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,6FAA6F;AAC7F,wBAAsB,UAAU,CAC9B,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,UAAU,GAClC,OAAO,CAAC,aAAa,CAAC,CA0FxB"}
|
package/dist/install.js
CHANGED
|
@@ -40,38 +40,86 @@ export { FAUCET_DEFAULT_URL };
|
|
|
40
40
|
* machine where `install` runs (Claude in a container with a bind-mounted `$HOME`). Unset means
|
|
41
41
|
* "same machine, same `$HOME`" — the default, and the correct non-container case. */
|
|
42
42
|
const MCP_HOME_FLAG = "--mcp-home";
|
|
43
|
-
/**
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
|
|
47
|
-
export function
|
|
43
|
+
/** `--new`: instead of using/creating the default `evolver-mcp` project, AUTO-PICK a free project
|
|
44
|
+
* name (`evolver-mcp<n>`) and clashing-free host ports (8440→8442→8444…, 8450→8451→8453…), so a
|
|
45
|
+
* second (or Nth) independent node needs no manual port/project typing. Explicit env vars still win. */
|
|
46
|
+
const NEW_FLAG = "--new";
|
|
47
|
+
export function parseInstallArgs(argv) {
|
|
48
48
|
let mcpHome;
|
|
49
|
+
let fresh = false;
|
|
49
50
|
const rest = [];
|
|
50
51
|
for (let i = 0; i < argv.length; i++) {
|
|
51
52
|
const a = argv[i];
|
|
52
53
|
if (a === MCP_HOME_FLAG) {
|
|
53
54
|
mcpHome = argv[++i];
|
|
54
55
|
if (mcpHome === undefined)
|
|
55
|
-
return { mcpHome: undefined, rest: argv };
|
|
56
|
+
return { mcpHome: undefined, fresh, rest: argv };
|
|
56
57
|
continue;
|
|
57
58
|
}
|
|
58
59
|
if (a.startsWith(`${MCP_HOME_FLAG}=`)) {
|
|
59
60
|
mcpHome = a.slice(MCP_HOME_FLAG.length + 1);
|
|
60
61
|
continue;
|
|
61
62
|
}
|
|
63
|
+
if (a === NEW_FLAG) {
|
|
64
|
+
fresh = true;
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
62
67
|
if (a === "install")
|
|
63
68
|
continue; // the subcommand token, not a bootstrap flag
|
|
64
69
|
rest.push(a);
|
|
65
70
|
}
|
|
66
|
-
// Force the local target: install always bootstraps against the node it just started. Skip only
|
|
67
|
-
// if the operator already named one (their choice wins — but a non-local target would be wrong).
|
|
68
71
|
const targetIdx = rest.indexOf("--target");
|
|
69
72
|
const hasTarget = targetIdx >= 0 || rest.some((x) => x.startsWith("--target="));
|
|
70
73
|
if (!hasTarget) {
|
|
71
|
-
// insert after [node, script] (indices 0,1) so parseBootstrapArgs picks it up at index 2+
|
|
72
74
|
rest.splice(2, 0, "--target", "local");
|
|
73
75
|
}
|
|
74
|
-
return { mcpHome, rest };
|
|
76
|
+
return { mcpHome, fresh, rest };
|
|
77
|
+
}
|
|
78
|
+
/** List `evolver-mcp*` compose project names via `docker compose ls -a`. Runs the daemon CLI; returns
|
|
79
|
+
* [] on any failure (the `--new` path then falls back to a fresh N=2, still safe). */
|
|
80
|
+
export function listEvolverMcpProjects() {
|
|
81
|
+
const r = spawnSync("docker", ["compose", "ls", "-a"], { encoding: "utf8" });
|
|
82
|
+
if (r.status !== 0)
|
|
83
|
+
return [];
|
|
84
|
+
const out = r.stdout || "";
|
|
85
|
+
const names = [];
|
|
86
|
+
for (const line of out.split("\n")) {
|
|
87
|
+
const m = /^(evolver-mcp\d*)\s/.exec(line.trimStart());
|
|
88
|
+
if (m)
|
|
89
|
+
names.push(m[1]);
|
|
90
|
+
}
|
|
91
|
+
return names;
|
|
92
|
+
}
|
|
93
|
+
const BASE_PROJECT_NAME = "evolver-mcp";
|
|
94
|
+
const HTTP_PORT_BASE = 8440;
|
|
95
|
+
const CONTENT_PORT_BASE = 8450;
|
|
96
|
+
/** Pick a free project name + port pair. With `fresh` (i.e. `--new`), scan `existing` project names
|
|
97
|
+
* and select `evolver-mcp<n>` where n = 1 + the highest existing numeric suffix (base name counts
|
|
98
|
+
* as 1), then derive host ports by the same index. Explicit env overrides (http/content port) are
|
|
99
|
+
* applied by the CALLER so the operator can still pin a specific N or ports. */
|
|
100
|
+
export function assignNode(fresh, existing, httpEnv, contentEnv) {
|
|
101
|
+
if (httpEnv !== undefined || contentEnv !== undefined) {
|
|
102
|
+
// Operator pinned a port (or both): honor it verbatim; keep the project name decision below.
|
|
103
|
+
// A pin means they want THIS node on a specific port; still bump N if `fresh`.
|
|
104
|
+
}
|
|
105
|
+
let n = 1;
|
|
106
|
+
if (fresh) {
|
|
107
|
+
const suffixes = [1]; // the base name occupies index 1
|
|
108
|
+
const re = new RegExp(`^${BASE_PROJECT_NAME}(\\d*)$`);
|
|
109
|
+
for (const name of existing) {
|
|
110
|
+
const m = re.exec(name);
|
|
111
|
+
if (!m)
|
|
112
|
+
continue;
|
|
113
|
+
const s = m[1] === "" ? 1 : Number(m[1]);
|
|
114
|
+
if (Number.isFinite(s) && s > 0)
|
|
115
|
+
suffixes.push(s);
|
|
116
|
+
}
|
|
117
|
+
n = Math.max(...suffixes) + 1;
|
|
118
|
+
}
|
|
119
|
+
const project = n === 1 ? BASE_PROJECT_NAME : `${BASE_PROJECT_NAME}${n}`;
|
|
120
|
+
const httpPort = httpEnv?.trim() || String(HTTP_PORT_BASE + 2 * (n - 1));
|
|
121
|
+
const contentPort = contentEnv?.trim() || String(CONTENT_PORT_BASE + 2 * (n - 1));
|
|
122
|
+
return { project, httpPort, contentPort };
|
|
75
123
|
}
|
|
76
124
|
/** Translate a `--mcp-home` value into the `EVOLVER_MCP_STATE_DIR` the bootstrap should derive,
|
|
77
125
|
* i.e. `<home>/.local/state/evolver-mcp/local` (mirroring stateDirFor's default). Only a
|
|
@@ -100,18 +148,32 @@ export async function runInstall(argv, env) {
|
|
|
100
148
|
output: `install: the node compose file is missing at ${composeFile} — the published package must ship deploy/ (see package.json "files").\n`,
|
|
101
149
|
};
|
|
102
150
|
}
|
|
103
|
-
// Parse `--mcp-home` (and the `install` token / forced `--target local`) up front, so a
|
|
104
|
-
// flag fails fast instead of after the node boot.
|
|
105
|
-
const { mcpHome, rest } =
|
|
151
|
+
// Parse `--mcp-home` / `--new` (and the `install` token / forced `--target local`) up front, so a
|
|
152
|
+
// malformed flag fails fast instead of after the node boot.
|
|
153
|
+
const { mcpHome, fresh, rest } = parseInstallArgs(argv);
|
|
106
154
|
if (argv.includes(MCP_HOME_FLAG) && (mcpHome === undefined || mcpHome.trim() === "")) {
|
|
107
155
|
return { exitCode: 1, toStderr: true, output: `install: ${MCP_HOME_FLAG} needs a value (Claude's $HOME, e.g. /home/rig)\n` };
|
|
108
156
|
}
|
|
157
|
+
// Decide WHERE this node lives: default project `evolver-mcp` on 8440/8450; `--new` auto-picks the
|
|
158
|
+
// next project name + non-clashing host ports from what is already deployed. Explicit env vars
|
|
159
|
+
// (EVOLVER_HOST_HTTP_PORT / EVOLVER_HOST_CONTENT_PORT / COMPOSE_PROJECT_NAME) always override.
|
|
160
|
+
const existing = fresh ? (env.EVOLVER_INSTALL_PROJECTS?.split(",").map((s) => s.trim()).filter(Boolean) ?? listEvolverMcpProjects()) : [];
|
|
161
|
+
const assignment = assignNode(fresh, existing, env.EVOLVER_HOST_HTTP_PORT, env.EVOLVER_HOST_CONTENT_PORT);
|
|
162
|
+
// A pinned COMPOSE_PROJECT_NAME (operator-set) wins over the auto-picked project.
|
|
163
|
+
const projectName = env.COMPOSE_PROJECT_NAME?.trim() || assignment.project;
|
|
109
164
|
// 1. Start the follower node (claims its own identity on devnet, then syncs from block 0).
|
|
110
165
|
// `--build` builds the config-bearing image (deploy/Dockerfile) on first use; the config is
|
|
111
|
-
// baked in, so no host bind-mount and no checkout-path dependency.
|
|
166
|
+
// baked in, so no host bind-mount and no checkout-path dependency. The project name + host
|
|
167
|
+
// ports are the SAME values the compose file consumes, so a second node is fully self-contained.
|
|
112
168
|
const up = spawnSync("docker", ["compose", "-f", composeFile, "up", "-d", "--build", "node"], {
|
|
113
169
|
encoding: "utf8",
|
|
114
|
-
env: {
|
|
170
|
+
env: {
|
|
171
|
+
...process.env,
|
|
172
|
+
...env,
|
|
173
|
+
COMPOSE_PROJECT_NAME: projectName,
|
|
174
|
+
EVOLVER_HOST_HTTP_PORT: assignment.httpPort,
|
|
175
|
+
EVOLVER_HOST_CONTENT_PORT: assignment.contentPort,
|
|
176
|
+
},
|
|
115
177
|
});
|
|
116
178
|
if (up.status !== 0) {
|
|
117
179
|
return {
|
|
@@ -121,13 +183,14 @@ export async function runInstall(argv, env) {
|
|
|
121
183
|
};
|
|
122
184
|
}
|
|
123
185
|
// 2. Wait for the node to answer its chain API before bootstrapping against it.
|
|
124
|
-
const
|
|
186
|
+
const devHttpPort = env.EVOLVER_HOST_HTTP_PORT?.trim() || assignment.httpPort;
|
|
187
|
+
const healthUrl = env.EVOLVER_INSTALL_HEALTH_URL?.trim() || `http://${LOCAL_NODE_HOST}:${devHttpPort}${HEALTH_PATH}`;
|
|
125
188
|
const timeoutMs = Number(env.EVOLVER_INSTALL_TIMEOUT_MS ?? "120000");
|
|
126
189
|
const ok = await waitHealthy(healthUrl, timeoutMs);
|
|
127
190
|
if (!ok) {
|
|
128
191
|
const logs = spawnSync("docker", ["compose", "-f", composeFile, "logs", "--tail", "40", "node"], {
|
|
129
192
|
encoding: "utf8",
|
|
130
|
-
env: { ...process.env, ...env },
|
|
193
|
+
env: { ...process.env, ...env, COMPOSE_PROJECT_NAME: projectName },
|
|
131
194
|
});
|
|
132
195
|
return {
|
|
133
196
|
exitCode: 1,
|
|
@@ -136,20 +199,16 @@ export async function runInstall(argv, env) {
|
|
|
136
199
|
};
|
|
137
200
|
}
|
|
138
201
|
// 3. Bootstrap the SEPARATE agent identity against the local node. `--target local` +
|
|
139
|
-
// EVOLVER_NODE=http://127.0.0.1
|
|
140
|
-
// EVOLVER_CONTENT_URL=http://127.0.0.1
|
|
141
|
-
//
|
|
142
|
-
//
|
|
143
|
-
|
|
144
|
-
// `--mcp-home` (if given) names Claude's `$HOME` and is translated into a default
|
|
145
|
-
// EVOLVER_MCP_STATE_DIR so the printed `claude mcp add` line carries paths Claude can read.
|
|
146
|
-
// Unset → no translation: the bootstrap defaults to THIS process's `$HOME`, which is exactly
|
|
147
|
-
// right when Claude runs on the same machine as `install`.
|
|
202
|
+
// EVOLVER_NODE=http://127.0.0.1:<httpPort> makes the bootstrap derive
|
|
203
|
+
// EVOLVER_CONTENT_URL=http://127.0.0.1:<contentPort> (the local node's content listener). Both
|
|
204
|
+
// derive from the SAME assignment the compose received, so a `--new` node bootstraps against its
|
|
205
|
+
// own non-clashing ports with no operator input.
|
|
206
|
+
const devContentPort = env.EVOLVER_HOST_CONTENT_PORT?.trim() || assignment.contentPort;
|
|
148
207
|
const nodeEnv = {
|
|
149
208
|
...process.env,
|
|
150
209
|
...env,
|
|
151
|
-
EVOLVER_NODE: env.EVOLVER_NODE ??
|
|
152
|
-
EVOLVER_CONTENT_URL: env.EVOLVER_CONTENT_URL ?? `http://${LOCAL_NODE_HOST}:${
|
|
210
|
+
EVOLVER_NODE: env.EVOLVER_NODE ?? `http://${LOCAL_NODE_HOST}:${devHttpPort}`,
|
|
211
|
+
EVOLVER_CONTENT_URL: env.EVOLVER_CONTENT_URL ?? `http://${LOCAL_NODE_HOST}:${devContentPort}`,
|
|
153
212
|
// The claim is sponsored by the FUNDED faucet, never the fresh local node (which is empty and
|
|
154
213
|
// would refuse `node_underfunded`). An operator's explicit EVOLVER_FAUCET_URL still wins.
|
|
155
214
|
EVOLVER_FAUCET_URL: env.EVOLVER_FAUCET_URL ?? FAUCET_DEFAULT_URL,
|
package/dist/install.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,mGAAmG;AACnG,EAAE;AACF,kGAAkG;AAClG,oGAAoG;AACpG,kGAAkG;AAClG,sFAAsF;AACtF,EAAE;AACF,iGAAiG;AACjG,gFAAgF;AAChF,gGAAgG;AAChG,EAAE;AACF,gGAAgG;AAChG,mGAAmG;AACnG,iGAAiG;AACjG,gGAAgG;AAChG,kGAAkG;AAClG,yFAAyF;AAEzF,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,0FAA0F;AAC1F,MAAM,eAAe,GAAG,WAAW,CAAC;AACpC,kGAAkG;AAClG,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC;AACnF,kFAAkF;AAClF,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAI,EAAE,IAAI,MAAM,CAAC;AACzF,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,UAAU,eAAe,IAAI,eAAe,EAAE,EAAE,CAAC;AAC/E,MAAM,WAAW,GAAG,8BAA8B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,CAAC;AAEhE;;;qGAGqG;AACrG,MAAM,kBAAkB,GAAG,iCAAiC,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B;;sFAEsF;AACtF,MAAM,aAAa,GAAG,YAAY,CAAC;AAEnC
|
|
1
|
+
{"version":3,"file":"install.js","sourceRoot":"","sources":["../src/install.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mcsherrylabs/evolver-mcp",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.1",
|
|
4
4
|
"description": "MCP server over a configurable Evolver node — read the chain, sign a transfer, administer what you own, write to a channel, submit a signed transaction. Wraps @mcsherrylabs/evolver-client; implements no wire format of its own.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "Apache-2.0",
|