agentic-numerical-control 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/server/server.js +13 -2
- package/package.json +73 -73
package/dist/server/server.js
CHANGED
|
@@ -4,7 +4,7 @@ import fs from "node:fs/promises";
|
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import { z } from "zod";
|
|
6
6
|
import { currentJob, jobSummary, jobsDir, listJobFiles, loadJobFile, loadJobFromCncjs, loadJobText, parsedLineAt, } from "./jobs.js";
|
|
7
|
-
import { ROOT, VERSION } from "./product.js";
|
|
7
|
+
import { PRODUCT, ROOT, VERSION } from "./product.js";
|
|
8
8
|
import { CNCJS_URL, cncjs } from "./cncjs.js";
|
|
9
9
|
// The viewer follows whatever program CNCjs has loaded, including files
|
|
10
10
|
// loaded from the CNCjs interface itself.
|
|
@@ -24,7 +24,18 @@ function fail(message) {
|
|
|
24
24
|
return { content: [{ type: "text", text: message }], isError: true };
|
|
25
25
|
}
|
|
26
26
|
export function createServer() {
|
|
27
|
-
|
|
27
|
+
// The icon assistants show for the connector, in light and dark versions.
|
|
28
|
+
const icon = (theme) => [
|
|
29
|
+
{ src: `${PRODUCT.siteUrl}/icons/icon-${theme}.svg`, mimeType: "image/svg+xml", sizes: ["any"], theme },
|
|
30
|
+
{ src: `${PRODUCT.siteUrl}/icons/icon-${theme}-512.png`, mimeType: "image/png", sizes: ["512x512"], theme },
|
|
31
|
+
];
|
|
32
|
+
const server = new McpServer({
|
|
33
|
+
name: "agentic-numerical-control",
|
|
34
|
+
title: PRODUCT.displayName,
|
|
35
|
+
version: VERSION,
|
|
36
|
+
websiteUrl: PRODUCT.siteUrl,
|
|
37
|
+
icons: [...icon("light"), ...icon("dark")],
|
|
38
|
+
});
|
|
28
39
|
registerAppTool(server, "anc_show_job", {
|
|
29
40
|
title: "Show CNC job",
|
|
30
41
|
description: "Open the Agentic Numerical Control 3D toolpath viewer for a G-code job. Pass `file` (a name from anc_list_jobs) or `gcode` text. " +
|
package/package.json
CHANGED
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "agentic-numerical-control",
|
|
3
|
-
"version": "0.1.
|
|
4
|
-
"description": "Agentic Numerical Control: see and run CNC jobs from your AI assistant. A 3D toolpath viewer, live machine status and job control for CNCjs/GRBL machines.",
|
|
5
|
-
"scripts": {
|
|
6
|
-
"build": "tsc --noEmit -p tsconfig.app.json && cross-env INPUT=viewer.html vite build && tsc -p tsconfig.build.json",
|
|
7
|
-
"dev": "npm run build && tsx server/cli.ts start",
|
|
8
|
-
"dev:serve": "npm run build && tsx server/cli.ts serve",
|
|
9
|
-
"dev:stdio": "npm run build 1>&2 && tsx server/cli.ts stdio",
|
|
10
|
-
"sim:build": "node sim/build.mjs",
|
|
11
|
-
"sim:e2e": "node sim/e2e.mjs",
|
|
12
|
-
"prepack": "npm run build",
|
|
13
|
-
"demo:site": "tsx scripts/build-demo.ts"
|
|
14
|
-
},
|
|
15
|
-
"license": "MIT",
|
|
16
|
-
"dependencies": {
|
|
17
|
-
"@modelcontextprotocol/express": "^2.0.0",
|
|
18
|
-
"@modelcontextprotocol/ext-apps": "^2.0.3",
|
|
19
|
-
"@modelcontextprotocol/node": "^2.0.0",
|
|
20
|
-
"@modelcontextprotocol/server": "^2.0.0",
|
|
21
|
-
"cncjs": "^1.11.5",
|
|
22
|
-
"cors": "^2.8.6",
|
|
23
|
-
"express": "^5.3.0",
|
|
24
|
-
"gcode-toolpath": "^3.0.0",
|
|
25
|
-
"jsonwebtoken": "^9.0.3",
|
|
26
|
-
"socket.io-client": "^2.2.0",
|
|
27
|
-
"three": "^0.186.1",
|
|
28
|
-
"ws": "^8.22.0",
|
|
29
|
-
"zod": "^4.6.7"
|
|
30
|
-
},
|
|
31
|
-
"devDependencies": {
|
|
32
|
-
"@types/cors": "^2.8.19",
|
|
33
|
-
"@types/express": "^5.0.6",
|
|
34
|
-
"@types/jsonwebtoken": "^9.0.10",
|
|
35
|
-
"@types/node": "^26.6.5",
|
|
36
|
-
"@types/three": "^0.186.0",
|
|
37
|
-
"@types/ws": "^8.18.2",
|
|
38
|
-
"cross-env": "^10.1.0",
|
|
39
|
-
"tsx": "^4.23.15",
|
|
40
|
-
"typescript": "^5.9.3",
|
|
41
|
-
"vite": "^6.4.4",
|
|
42
|
-
"vite-plugin-singlefile": "^2.3.3"
|
|
43
|
-
},
|
|
44
|
-
"type": "module",
|
|
45
|
-
"bin": {
|
|
46
|
-
"agentic-numerical-control": "dist/server/cli.js",
|
|
47
|
-
"anc": "dist/server/cli.js"
|
|
48
|
-
},
|
|
49
|
-
"files": [
|
|
50
|
-
"dist",
|
|
51
|
-
"product.json",
|
|
52
|
-
"samples/demo-pocket-profile.nc",
|
|
53
|
-
"sim/virtual-port.cjs"
|
|
54
|
-
],
|
|
55
|
-
"engines": {
|
|
56
|
-
"node": ">=20"
|
|
57
|
-
},
|
|
58
|
-
"homepage": "https://agenticnumericalcontrol.com",
|
|
59
|
-
"keywords": [
|
|
60
|
-
"cnc",
|
|
61
|
-
"grbl",
|
|
62
|
-
"cncjs",
|
|
63
|
-
"mcp",
|
|
64
|
-
"mcp-app",
|
|
65
|
-
"claude",
|
|
66
|
-
"gcode",
|
|
67
|
-
"toolpath"
|
|
68
|
-
],
|
|
69
|
-
"repository": {
|
|
70
|
-
"type": "git",
|
|
71
|
-
"url": "git+https://github.com/EdwardCoventry/agentic-numerical-control.git"
|
|
72
|
-
}
|
|
73
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "agentic-numerical-control",
|
|
3
|
+
"version": "0.1.6",
|
|
4
|
+
"description": "Agentic Numerical Control: see and run CNC jobs from your AI assistant. A 3D toolpath viewer, live machine status and job control for CNCjs/GRBL machines.",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"build": "tsc --noEmit -p tsconfig.app.json && cross-env INPUT=viewer.html vite build && tsc -p tsconfig.build.json",
|
|
7
|
+
"dev": "npm run build && tsx server/cli.ts start",
|
|
8
|
+
"dev:serve": "npm run build && tsx server/cli.ts serve",
|
|
9
|
+
"dev:stdio": "npm run build 1>&2 && tsx server/cli.ts stdio",
|
|
10
|
+
"sim:build": "node sim/build.mjs",
|
|
11
|
+
"sim:e2e": "node sim/e2e.mjs",
|
|
12
|
+
"prepack": "npm run build",
|
|
13
|
+
"demo:site": "tsx scripts/build-demo.ts && tsx scripts/build-catalogue.ts"
|
|
14
|
+
},
|
|
15
|
+
"license": "MIT",
|
|
16
|
+
"dependencies": {
|
|
17
|
+
"@modelcontextprotocol/express": "^2.0.0",
|
|
18
|
+
"@modelcontextprotocol/ext-apps": "^2.0.3",
|
|
19
|
+
"@modelcontextprotocol/node": "^2.0.0",
|
|
20
|
+
"@modelcontextprotocol/server": "^2.0.0",
|
|
21
|
+
"cncjs": "^1.11.5",
|
|
22
|
+
"cors": "^2.8.6",
|
|
23
|
+
"express": "^5.3.0",
|
|
24
|
+
"gcode-toolpath": "^3.0.0",
|
|
25
|
+
"jsonwebtoken": "^9.0.3",
|
|
26
|
+
"socket.io-client": "^2.2.0",
|
|
27
|
+
"three": "^0.186.1",
|
|
28
|
+
"ws": "^8.22.0",
|
|
29
|
+
"zod": "^4.6.7"
|
|
30
|
+
},
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"@types/cors": "^2.8.19",
|
|
33
|
+
"@types/express": "^5.0.6",
|
|
34
|
+
"@types/jsonwebtoken": "^9.0.10",
|
|
35
|
+
"@types/node": "^26.6.5",
|
|
36
|
+
"@types/three": "^0.186.0",
|
|
37
|
+
"@types/ws": "^8.18.2",
|
|
38
|
+
"cross-env": "^10.1.0",
|
|
39
|
+
"tsx": "^4.23.15",
|
|
40
|
+
"typescript": "^5.9.3",
|
|
41
|
+
"vite": "^6.4.4",
|
|
42
|
+
"vite-plugin-singlefile": "^2.3.3"
|
|
43
|
+
},
|
|
44
|
+
"type": "module",
|
|
45
|
+
"bin": {
|
|
46
|
+
"agentic-numerical-control": "dist/server/cli.js",
|
|
47
|
+
"anc": "dist/server/cli.js"
|
|
48
|
+
},
|
|
49
|
+
"files": [
|
|
50
|
+
"dist",
|
|
51
|
+
"product.json",
|
|
52
|
+
"samples/demo-pocket-profile.nc",
|
|
53
|
+
"sim/virtual-port.cjs"
|
|
54
|
+
],
|
|
55
|
+
"engines": {
|
|
56
|
+
"node": ">=20"
|
|
57
|
+
},
|
|
58
|
+
"homepage": "https://agenticnumericalcontrol.com",
|
|
59
|
+
"keywords": [
|
|
60
|
+
"cnc",
|
|
61
|
+
"grbl",
|
|
62
|
+
"cncjs",
|
|
63
|
+
"mcp",
|
|
64
|
+
"mcp-app",
|
|
65
|
+
"claude",
|
|
66
|
+
"gcode",
|
|
67
|
+
"toolpath"
|
|
68
|
+
],
|
|
69
|
+
"repository": {
|
|
70
|
+
"type": "git",
|
|
71
|
+
"url": "git+https://github.com/EdwardCoventry/agentic-numerical-control.git"
|
|
72
|
+
}
|
|
73
|
+
}
|