@n24q02m/better-godot-mcp 1.2.3 → 1.4.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
CHANGED
|
@@ -145,6 +145,26 @@ bun run build
|
|
|
145
145
|
|
|
146
146
|
**Requirements:** Node.js 24+, [bun](https://bun.sh/) latest
|
|
147
147
|
|
|
148
|
+
## Compatible With
|
|
149
|
+
|
|
150
|
+
[](#quick-start)
|
|
151
|
+
[](#quick-start)
|
|
152
|
+
[](#quick-start)
|
|
153
|
+
[](#quick-start)
|
|
154
|
+
[](#quick-start)
|
|
155
|
+
[](#quick-start)
|
|
156
|
+
[](#quick-start)
|
|
157
|
+
[](#quick-start)
|
|
158
|
+
|
|
159
|
+
## Also by n24q02m
|
|
160
|
+
|
|
161
|
+
| Server | Description | Install |
|
|
162
|
+
|--------|-------------|---------|
|
|
163
|
+
| [better-notion-mcp](https://github.com/n24q02m/better-notion-mcp) | Notion API for AI agents | `npx -y @n24q02m/better-notion-mcp@latest` |
|
|
164
|
+
| [wet-mcp](https://github.com/n24q02m/wet-mcp) | Web search, content extraction, library docs | `uvx --python 3.13 wet-mcp@latest` |
|
|
165
|
+
| [mnemo-mcp](https://github.com/n24q02m/mnemo-mcp) | Persistent AI memory with hybrid search | `uvx mnemo-mcp@latest` |
|
|
166
|
+
| [better-email-mcp](https://github.com/n24q02m/better-email-mcp) | Email (IMAP/SMTP) for AI agents | `npx -y @n24q02m/better-email-mcp@latest` |
|
|
167
|
+
|
|
148
168
|
## Contributing
|
|
149
169
|
|
|
150
170
|
See [CONTRIBUTING.md](CONTRIBUTING.md)
|
package/bin/cli.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
// @n24q02m/better-godot-mcp v1.
|
|
2
|
+
// @n24q02m/better-godot-mcp v1.4.0
|
|
3
3
|
// Auto-generated CLI bundle - do not edit directly
|
|
4
4
|
|
|
5
5
|
|
|
@@ -516,11 +516,11 @@ async function handleConfig(action, args, config) {
|
|
|
516
516
|
if (!validKeys.includes(key)) {
|
|
517
517
|
throw new GodotMCPError(`Invalid config key: ${key}`, "INVALID_ARGS", `Valid keys: ${validKeys.join(", ")}`);
|
|
518
518
|
}
|
|
519
|
-
if ((key === "project_path" || key === "godot_path") && /[;&|`$(){}]/.test(value)) {
|
|
519
|
+
if ((key === "project_path" || key === "godot_path") && /[;&|`$(){}<>'"\0\n\r]/.test(value)) {
|
|
520
520
|
throw new GodotMCPError(
|
|
521
521
|
`Invalid characters in ${key}`,
|
|
522
522
|
"INVALID_ARGS",
|
|
523
|
-
"Path must not contain shell metacharacters: ; & | ` $ ( ) { }"
|
|
523
|
+
"Path must not contain shell metacharacters: ; & | ` $ ( ) { } < > ' \" \\0 \\n \\r"
|
|
524
524
|
);
|
|
525
525
|
}
|
|
526
526
|
runtimeConfig[key] = value;
|
|
@@ -29,8 +29,8 @@ export async function handleConfig(action, args, config) {
|
|
|
29
29
|
throw new GodotMCPError(`Invalid config key: ${key}`, 'INVALID_ARGS', `Valid keys: ${validKeys.join(', ')}`);
|
|
30
30
|
}
|
|
31
31
|
// Validate paths don't contain shell metacharacters
|
|
32
|
-
if ((key === 'project_path' || key === 'godot_path') && /[;&|`$(){}]/.test(value)) {
|
|
33
|
-
throw new GodotMCPError(`Invalid characters in ${key}`, 'INVALID_ARGS', 'Path must not contain shell metacharacters: ; & | ` $ ( ) { }');
|
|
32
|
+
if ((key === 'project_path' || key === 'godot_path') && /[;&|`$(){}<>'"\0\n\r]/.test(value)) {
|
|
33
|
+
throw new GodotMCPError(`Invalid characters in ${key}`, 'INVALID_ARGS', 'Path must not contain shell metacharacters: ; & | ` $ ( ) { } < > \' " \\0 \\n \\r');
|
|
34
34
|
}
|
|
35
35
|
runtimeConfig[key] = value;
|
|
36
36
|
// Apply to active config
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/tools/composite/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAE/E,yBAAyB;AACzB,MAAM,aAAa,GAA2B,EAAE,CAAA;AAEhD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,IAA6B,EAAE,MAAmB;IACnG,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,OAAO,UAAU,CAAC;gBAChB,UAAU,EAAE,MAAM,CAAC,SAAS,IAAI,cAAc;gBAC9C,aAAa,EAAE,MAAM,CAAC,YAAY,EAAE,GAAG,IAAI,SAAS;gBACpD,YAAY,EAAE,MAAM,CAAC,WAAW,IAAI,SAAS;gBAC7C,iBAAiB,EAAE,aAAa;aACjC,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAa,CAAA;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAA;YAElC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,IAAI,aAAa,CAAC,kBAAkB,EAAE,cAAc,EAAE,0CAA0C,CAAC,CAAA;YACzG,CAAC;YACD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC1C,MAAM,IAAI,aAAa,CAAC,oBAAoB,EAAE,cAAc,EAAE,4BAA4B,CAAC,CAAA;YAC7F,CAAC;YAED,MAAM,SAAS,GAAG,CAAC,cAAc,EAAE,YAAY,EAAE,SAAS,CAAC,CAAA;YAC3D,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,aAAa,CAAC,uBAAuB,GAAG,EAAE,EAAE,cAAc,EAAE,eAAe,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC9G,CAAC;YAED,oDAAoD;YACpD,IAAI,CAAC,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,YAAY,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../../src/tools/composite/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAE/E,yBAAyB;AACzB,MAAM,aAAa,GAA2B,EAAE,CAAA;AAEhD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,IAA6B,EAAE,MAAmB;IACnG,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,OAAO,UAAU,CAAC;gBAChB,UAAU,EAAE,MAAM,CAAC,SAAS,IAAI,cAAc;gBAC9C,aAAa,EAAE,MAAM,CAAC,YAAY,EAAE,GAAG,IAAI,SAAS;gBACpD,YAAY,EAAE,MAAM,CAAC,WAAW,IAAI,SAAS;gBAC7C,iBAAiB,EAAE,aAAa;aACjC,CAAC,CAAA;QACJ,CAAC;QAED,KAAK,KAAK,CAAC,CAAC,CAAC;YACX,MAAM,GAAG,GAAG,IAAI,CAAC,GAAa,CAAA;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAe,CAAA;YAElC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACT,MAAM,IAAI,aAAa,CAAC,kBAAkB,EAAE,cAAc,EAAE,0CAA0C,CAAC,CAAA;YACzG,CAAC;YACD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBAC1C,MAAM,IAAI,aAAa,CAAC,oBAAoB,EAAE,cAAc,EAAE,4BAA4B,CAAC,CAAA;YAC7F,CAAC;YAED,MAAM,SAAS,GAAG,CAAC,cAAc,EAAE,YAAY,EAAE,SAAS,CAAC,CAAA;YAC3D,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,IAAI,aAAa,CAAC,uBAAuB,GAAG,EAAE,EAAE,cAAc,EAAE,eAAe,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC9G,CAAC;YAED,oDAAoD;YACpD,IAAI,CAAC,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,YAAY,CAAC,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5F,MAAM,IAAI,aAAa,CACrB,yBAAyB,GAAG,EAAE,EAC9B,cAAc,EACd,oFAAoF,CACrF,CAAA;YACH,CAAC;YAED,aAAa,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;YAE1B,yBAAyB;YACzB,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;gBAC3B,MAAM,CAAC,WAAW,GAAG,KAAK,CAAA;YAC5B,CAAC;iBAAM,IAAI,GAAG,KAAK,YAAY,EAAE,CAAC;gBAChC,MAAM,CAAC,SAAS,GAAG,KAAK,CAAA;YAC1B,CAAC;YAED,OAAO,aAAa,CAAC,mBAAmB,GAAG,MAAM,KAAK,EAAE,CAAC,CAAA;QAC3D,CAAC;QAED;YACE,MAAM,IAAI,aAAa,CACrB,mBAAmB,MAAM,EAAE,EAC3B,gBAAgB,EAChB,0DAA0D,CAC3D,CAAA;IACL,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@n24q02m/better-godot-mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "Enhanced MCP server for Godot Engine with composite mega-tools and comprehensive game development tooling.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "build/src/init-server.js",
|
|
@@ -49,12 +49,20 @@
|
|
|
49
49
|
},
|
|
50
50
|
"keywords": [
|
|
51
51
|
"mcp",
|
|
52
|
+
"mcp-server",
|
|
52
53
|
"godot",
|
|
53
54
|
"godot-engine",
|
|
54
55
|
"game-development",
|
|
55
56
|
"model-context-protocol",
|
|
56
|
-
"ai",
|
|
57
|
-
"gdscript"
|
|
57
|
+
"ai-agent",
|
|
58
|
+
"gdscript",
|
|
59
|
+
"claude",
|
|
60
|
+
"cursor",
|
|
61
|
+
"copilot",
|
|
62
|
+
"antigravity",
|
|
63
|
+
"codex",
|
|
64
|
+
"opencode",
|
|
65
|
+
"gemini-cli"
|
|
58
66
|
],
|
|
59
67
|
"author": "n24q02m",
|
|
60
68
|
"license": "MIT",
|