github TypeScript re-analysis due

AraneaDev/Chaos-MCP

github

Local-first MCP server that runs isolated mutation testing against a codebase to expose the gaps its test suite does not cover. Wraps StrykerJS, cosmic-ray, cargo-mutants and Infection behind one tool surface.

maintainer
AraneaDev
licence
MIT
first seen
2026-07-04
last seen
2026-09-13
releases · 30d
6
short id

Drift inferred · capture-to-capture

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

capabilities 0 tools
transport stdio counts 0 tools · 0 res · 0 prompts permission surface via code analysis

No tools enumerated yet for this server.

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

code files: 214

filesystem 89

  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/scripts/coverage-badge.mjs :14 import { readFileSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/scripts/meta-test.js :22 import { existsSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/scripts/migrate-suppressions-v3.mjs :32 import { readFileSync, writeFileSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/scripts/mutate.mjs :24 import { existsSync, statSync, readdirSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/scripts/postinstall.js :10 import { chmodSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-file-guard.test.ts :9 import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-fixes.test.ts :18 } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-one-guards.test.ts :2 import { mkdtempSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-one-row.test.ts :2 import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-one-suppression-cache.test.ts :2 import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-output.test.ts :2 import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-run-id.test.ts :2 import { mkdtempSync, rmSync } from 'fs';
show 28 more
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-run-options.test.ts :2 import { mkdtempSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-scope.test.ts :2 import { mkdtempSync, mkdirSync, writeFileSync, rmSync, realpathSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-target.test.ts :2 import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/build-output.test.ts :2 import { existsSync, readFileSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/cli-help.test.ts :3 import { existsSync, readFileSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/cli-smoke.test.ts :3 import { existsSync, readFileSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/cli-validate-config.test.ts :3 import { existsSync, writeFileSync, unlinkSync, mkdtempSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/cli-version.test.ts :3 import { existsSync, readFileSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/config-loader.test.ts :9 import { existsSync, readFileSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/container-args.test.ts :10 } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/dependency-link-windows.test.ts :28 import { symlinkSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/dependency-link.test.ts :2 import { mkdtempSync, mkdirSync, writeFileSync, readFileSync, lstatSync, rmSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/discover-files.test.ts :8 import { mkdtempSync, mkdirSync, writeFileSync, rmSync, readdirSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/discover-targets.test.ts :7 import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/e2e-mcp.test.ts :12 } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/e2e-php.test.ts :2 import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/e2e-rust.test.ts :2 import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/e2e-stryker.test.ts :10 } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/enrich-handler.test.ts :4 import { writeFileSync, mkdtempSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/estimate-handler.test.ts :49 import { statSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/execution.test.ts :1 import { mkdirSync, mkdtempSync, readdirSync, rmSync, symlinkSync, writeFileSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/git-diff.test.ts :3 import { existsSync, mkdirSync, mkdtempSync, realpathSync, rmSync, writeFileSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/handler-helpers.test.ts :6 import { existsSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/handler-phase3.test.ts :4 import { mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/handler.test.ts :105 import { existsSync } from 'fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/incremental-cache.test.ts :33 import { copyFileSync, renameSync, rmSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/index.test.ts :9 import { mkdtempSync, realpathSync, rmSync, symlinkSync, writeFileSync } from 'node:fs';
  • fs (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/integration.test.ts :5 import { existsSync } from 'fs';

49 more not shown — this panel samples each group; the count above is the real total.

shell / exec 25

  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/scripts/mutate.mjs :25 import { spawnSync } from 'node:child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/audit-scope.test.ts :3 import { execFileSync } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/cli-help.test.ts :2 import { spawn } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/cli-smoke.test.ts :2 import { spawn } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/cli-validate-config.test.ts :2 import { spawn } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/cli-version.test.ts :2 import { spawn } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/e2e-mcp.test.ts :2 import { spawn, ChildProcess } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/e2e-php.test.ts :5 import { spawnSync } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/e2e-rust.test.ts :5 import { spawnSync } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/exec-command.test.ts :2 import type * as cpType from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/exec-error-l3.test.ts :2 import type * as cpType from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/exec-reaping.test.ts :2 import type * as cpType from 'child_process';
show 13 more
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/exec-run-child.test.ts :2 import type * as cpType from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/exec-signal.test.ts :2 import type * as cpType from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/execution.test.ts :29 const actual = await importOriginal<typeof import('child_process')>();
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/git-diff.test.ts :2 import { execFileSync } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/integration.test.ts :2 import { spawn, ChildProcess } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/__tests__/process-reaper-tree.test.ts :2 import type * as cpType from 'child_process';
  • shell AraneaDev-Chaos-MCP-9dd9e64/src/engines/base.ts :337 * Runs inside the sandbox working directory via `child_process.exec`
  • shell AraneaDev-Chaos-MCP-9dd9e64/src/engines/python/interpreter.ts :19 import { spawnSync } from 'node:child_process';
  • shell AraneaDev-Chaos-MCP-9dd9e64/src/utils/exec-error.ts :47 * Normalized error thrown when a child process fails to spawn (ENOENT) or
  • shell AraneaDev-Chaos-MCP-9dd9e64/src/utils/exec.ts :1 import { execFile, exec, type ChildProcess } from 'child_process';
  • shell AraneaDev-Chaos-MCP-9dd9e64/src/utils/process-reaper.ts :1 import { execFile, spawnSync, type ChildProcess } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/src/utils/sandbox/registry.ts :27 import { spawnSync } from 'child_process';
  • shell (weak) AraneaDev-Chaos-MCP-9dd9e64/tests/global-setup.ts :23 import { execFileSync } from 'node:child_process';

install hooks 3

  • prepare AraneaDev-Chaos-MCP-9dd9e64/package.json :41 npm run build
  • prepublishOnly AraneaDev-Chaos-MCP-9dd9e64/package.json :42 npm run build && npm run check
  • postinstall AraneaDev-Chaos-MCP-9dd9e64/package.json :56 node scripts/postinstall.js

declared dependencies 15

  • @modelcontextprotocol/sdk@^1.0.1
  • @eslint/js@^9.0.0
  • @stryker-mutator/api@^10.0.0
  • @stryker-mutator/core@^10.0.0
  • @stryker-mutator/vitest-runner@^10.0.0
  • @types/node@^24.13.3
  • @vitest/coverage-v8@^4.1.11
  • @vitest/eslint-plugin@^1.6.27
  • eslint@^9.0.0
  • eslint-config-prettier@^10.0.0
  • prettier@^3.2.0
  • typescript@^5.3.3
show 3 more
  • typescript-eslint@^8.0.0
  • vitest@^4.1.11
  • infection/infection@0.34.0