Reduces AI agent token usage by 90% via context compression and task checkpoint persistence.
Drift inferred · capture-to-capture
- HIGH code analysis flagged dynamic code execution in Arrayo/smart-context-mcp
- HIGH code analysis flagged committed secret ×2, dynamic code execution ×3 in Arrayo/smart-context-mcp
transport stdio · http
verified
reported
listed in the official MCP registry counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 870052e · analyzer v19 · 1d ago
danger signals1
- dynamic code executioneval()Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-shell.js:26
/(^|\s)eval(\s|$)/i,
evidence-backed
findings quoted directly from the published source artifact — not inferred
filesystem 29
- fs Arrayo-smart-context-mcp-870052e/tools/devctx/evals/harness.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/evals/kpi-baseline.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/evals/orchestration-benchmark.js :3
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/evals/realworld-eval.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/evals/report.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/scripts/check-repo-safety.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/scripts/doctor-state.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/scripts/init-clients.js :3
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/scripts/run-benchmark.js :9
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/scripts/verify-all-features.js :11
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/cache-warming.js :8
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/cross-project.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/diff-analysis.js :9
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/explain/explainer.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/global-memory/store.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/index-manager.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/index-watcher.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/index.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/metrics.js :1
import fs from 'node:fs/promises'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/playbooks/loader.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/repo-safety.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/storage/sqlite.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-context.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-doctor.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-metrics.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-read.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-search.js :1
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-test.js :2
import fs from 'node:fs'; - fs Arrayo-smart-context-mcp-870052e/tools/devctx/src/utils/fs.js :1
import fs from 'node:fs';
shell / exec 15
- shell Arrayo-smart-context-mcp-870052e/tools/devctx/evals/kpi-baseline.js :4
import { execFileSync } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/evals/orchestration-benchmark.js :2
import { execFileSync } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/scripts/init-clients.js :2
import { execFileSync } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/scripts/run-benchmark.js :8
import { execFileSync } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/diff-analysis.js :7
import { execFile as execFileCallback } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/explain/explainer.js :13
{ kind: 'process', re: /\b(process\.(env|exit|kill|chdir)|child_process|execSync|spawnSync|execFile|spawn)\b/ }, - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/git-blame.js :7
import { execFile as execFileCallback } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/index-manager.js :3
import { execFile as execFileCallback } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/orchestration/headless-wrapper.js :1
import { spawn } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/repo-safety.js :3
import { execFileSync } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-context.js :3
import { execFile as execFileCallback } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-read.js :3
import { execFile as execFileCb } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-review.js :2
import { execFile as execFileCallback } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-search.js :3
import { execFile as execFileCallback } from 'node:child_process'; - shell Arrayo-smart-context-mcp-870052e/tools/devctx/src/tools/smart-shell.js :1
import { execFile as execFileCallback } from 'node:child_process';
secrets 1
- secrets Arrayo-smart-context-mcp-870052e/tools/devctx/src/tokenCounter.js :11
const requested = (process.env.DEVCTX_TOKEN_MODEL || '').toLowerCase().trim();
declared dependencies 5
- @modelcontextprotocol/sdk@^1.13.0
- @vscode/ripgrep@^1.17.1
- js-tiktoken@^1.0.21
- typescript@^6.0.2
- zod@^4.1.5