github TypeScript re-analysis due

SS-360/materialpilot

github

Native, local-first MCP bridge for safe, editable procedural materials in Material Maker 1.7 and Godot 4.7.

maintainer
SS-360
license
NOASSERTION
first seen
2026-07-21
last seen
2026-07-21
releases · 30d
0
short id

Drift inferred · capture-to-capture

No drift recorded — single capability capture; advisories appear once its surface changes.

capabilities 33 tools
transport stdio · streamable-http · http counts 33 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • app_get_capabilities
  • app_get_status
  • app_ping
  • catalog_get_compatible_nodes
  • catalog_get_node_type
  • catalog_get_version
  • catalog_list_categories
  • catalog_search_nodes
  • connection_create
  • connection_delete
  • graph_apply_patch
  • graph_create_named_snapshot
  • graph_find_nodes
  • graph_get_snapshot
  • graph_get_summary
  • graph_list_named_snapshots
  • graph_list_transactions
  • graph_plan_patch
  • graph_redo
  • graph_trace_dependencies
  • graph_undo
  • material_export_blender
  • node_create
  • node_delete
  • node_set_parameter
  • preview_render_material_3d
  • preview_render_node_output
  • project_create_material
  • project_get_active
  • project_list
  • project_save
  • project_validate
  • workflow_create_material
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit e3721ea · analyzer v33 · 2w ago

skills & prompt files 5

code evidence vHEAD · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 56

filesystem 20

  • fs (weak) SS-360-materialpilot-e3721ea/apps/material-maker-bridge/scripts/validate-addon.mjs :1 import { access, readFile } from "node:fs/promises";
  • fs (weak) SS-360-materialpilot-e3721ea/apps/material-maker-bridge/scripts/validate-godot.mjs :1 import { access, cp, mkdir, readFile, rm, writeFile } from "node:fs/promises";
  • fs (weak) SS-360-materialpilot-e3721ea/apps/material-maker-bridge/scripts/validate-material-maker.mjs :1 import { access, mkdir, readFile, rm } from "node:fs/promises";
  • fs SS-360-materialpilot-e3721ea/apps/mcp-server/src/main.ts :3 import { existsSync } from "node:fs";
  • fs (weak) SS-360-materialpilot-e3721ea/apps/mcp-server/tests/native-backend.test.ts :1 import { readFileSync } from "node:fs";
  • fs (weak) SS-360-materialpilot-e3721ea/apps/mcp-server/tests/server.test.ts :4 import { mkdtempSync } from "node:fs";
  • fs SS-360-materialpilot-e3721ea/packages/bridge-protocol/src/client.ts :3 import { readFile } from "node:fs/promises";
  • fs SS-360-materialpilot-e3721ea/packages/cli/src/main.ts :2 import { access, readFile, writeFile } from "node:fs/promises";
  • fs (weak) SS-360-materialpilot-e3721ea/packages/cli/tests/cli.test.ts :1 import { readFileSync } from "node:fs";
  • fs (weak) SS-360-materialpilot-e3721ea/packages/mmpp/tests/mmpp.test.ts :1 import { readFileSync } from "node:fs";
  • fs SS-360-materialpilot-e3721ea/packages/node-catalog/src/extractor.ts :1 import { readFile, readdir } from "node:fs/promises";
  • fs (weak) SS-360-materialpilot-e3721ea/packages/node-catalog/tests/catalog.test.ts :2 import { mkdtempSync, rmSync, writeFileSync } from "node:fs";
  • fs (weak) SS-360-materialpilot-e3721ea/packages/ptex/tests/ptex.test.ts :1 import { readFileSync } from "node:fs";
  • fs SS-360-materialpilot-e3721ea/packages/security/src/audit.ts :1 import { appendFile, mkdir } from "node:fs/promises";
  • fs SS-360-materialpilot-e3721ea/packages/security/src/policy.ts :1 import { existsSync, realpathSync } from "node:fs";
  • fs (weak) SS-360-materialpilot-e3721ea/packages/security/tests/policy.test.ts :1 import { mkdtempSync, mkdirSync, writeFileSync } from "node:fs";
  • fs (weak) SS-360-materialpilot-e3721ea/scripts/create-abandoned-industrial-floor.mjs :2 import { mkdir, readFile, readdir, stat, writeFile } from "node:fs/promises";
  • fs (weak) SS-360-materialpilot-e3721ea/scripts/generate-sbom.mjs :1 import { readFile, readdir, mkdir, writeFile } from "node:fs/promises";
  • fs (weak) SS-360-materialpilot-e3721ea/scripts/package-release.mjs :2 import { cp, mkdir, readFile, rm, writeFile } from "node:fs/promises";
  • fs (weak) SS-360-materialpilot-e3721ea/scripts/run-compatibility-suite.mjs :1 import { access, readFile } from "node:fs/promises";

shell / exec 4

  • shell (weak) SS-360-materialpilot-e3721ea/apps/material-maker-bridge/scripts/validate-godot.mjs :5 import { spawn, spawnSync } from "node:child_process";
  • shell (weak) SS-360-materialpilot-e3721ea/apps/material-maker-bridge/scripts/validate-material-maker.mjs :5 import { spawn } from "node:child_process";
  • shell (weak) SS-360-materialpilot-e3721ea/scripts/package-release.mjs :4 import { spawnSync } from "node:child_process";
  • shell (weak) SS-360-materialpilot-e3721ea/scripts/run-compatibility-suite.mjs :4 import { spawnSync } from "node:child_process";

secrets 1

  • secrets SS-360-materialpilot-e3721ea/apps/mcp-server/src/main.ts :25 const token = process.env.MATERIALPILOT_HTTP_TOKEN;

tool registrations 33

  • app_get_status SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :32
  • app_get_capabilities SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :42
  • app_ping SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :52
  • project_list SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :62
  • project_get_active SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :71
  • project_create_material SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :80
  • project_validate SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :103
  • project_save SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :116
  • graph_create_named_snapshot SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :148
  • graph_list_named_snapshots SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :163
  • preview_render_node_output SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :173
  • preview_render_material_3d SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :215
  • material_export_blender SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :256
  • graph_get_summary SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :288
  • graph_get_snapshot SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :298
  • graph_find_nodes SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :308
  • graph_trace_dependencies SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :337
  • graph_plan_patch SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :355
  • graph_apply_patch SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :366
  • graph_undo SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :385
  • graph_redo SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :403
  • graph_list_transactions SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :420
  • catalog_list_categories SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :431
  • catalog_search_nodes SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :440
  • catalog_get_node_type SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :495
  • catalog_get_compatible_nodes SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :505
  • catalog_get_version SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :530
  • node_create SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :559
  • node_delete SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :585
  • node_set_parameter SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :609
  • connection_create SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :639
  • connection_delete SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :665
  • workflow_create_material SS-360-materialpilot-e3721ea/apps/mcp-server/src/tools.ts :692

declared dependencies 10

  • @eslint/js@^10.0.1
  • @types/node@^26.1.1
  • @vitest/coverage-v8@^4.1.0
  • eslint@^10.7.0
  • prettier@^3.6.2
  • tsx@^4.20.3
  • turbo@^2.5.5
  • typescript@^6.0.3
  • typescript-eslint@^8.38.0
  • vitest@^4.1.0