github analyzed 6170006

pungggi/smart-terminal-mcp

github

MCP PTY server providing AI agents with real interactive terminal access

maintainer
pungggi
license
first seen
2026-08-12
last seen
2026-08-12
releases · 30d
0
short id

Drift inferred · capture-to-capture

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

capabilities 17 tools
transport stdio · streamable-http · http verified reported listed in the official MCP registry counts 17 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • terminal_diff
  • terminal_exec
  • terminal_extra
  • terminal_get_history
  • terminal_list
  • terminal_read
  • terminal_resize
  • terminal_retry
  • terminal_run
  • terminal_run_paged
  • terminal_send_key
  • terminal_start
  • terminal_stop
  • terminal_wait
  • terminal_watch
  • terminal_write
  • terminal_write_file
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 6170006 · analyzer v33 · 4d ago

danger signals1

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

code files: 28

filesystem 12

  • fs pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :22290 import { stat } from "node:fs/promises";
  • fs (weak) pungggi-smart-terminal-mcp-6170006/scripts/http-scan-server.js :10 import { readFileSync } from 'node:fs';
  • fs (weak) pungggi-smart-terminal-mcp-6170006/scripts/publish.js :1 import { readFileSync, writeFileSync, existsSync, unlinkSync } from 'fs';
  • fs pungggi-smart-terminal-mcp-6170006/src/command-runner.js :2 import { readFile } from 'node:fs/promises';
  • fs pungggi-smart-terminal-mcp-6170006/src/index.js :3 import { readFileSync } from 'node:fs';
  • fs pungggi-smart-terminal-mcp-6170006/src/session-manager.js :1 import { stat } from 'node:fs/promises';
  • fs pungggi-smart-terminal-mcp-6170006/src/tools.js :3 import { writeFile, appendFile, mkdir } from 'node:fs/promises';
  • fs (weak) pungggi-smart-terminal-mcp-6170006/test/command-runner.test.js :3 import { chmod, mkdtemp, rm, writeFile } from 'node:fs/promises';
  • fs (weak) pungggi-smart-terminal-mcp-6170006/test/http-scan-server.test.js :5 import { readFile, rm, writeFile } from 'node:fs/promises';
  • fs (weak) pungggi-smart-terminal-mcp-6170006/test/publish.test.js :3 import { access, mkdtemp, readFile, rm, writeFile } from 'node:fs/promises';
  • fs (weak) pungggi-smart-terminal-mcp-6170006/test/session-manager.test.js :3 import { mkdtemp, rm, writeFile } from 'node:fs/promises';
  • fs (weak) pungggi-smart-terminal-mcp-6170006/test/tools.test.js :3 import { mkdtemp, readFile, rm } from 'node:fs/promises';

shell / exec 7

  • shell pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :22386 import { execFileSync } from "node:child_process";
  • shell (weak) pungggi-smart-terminal-mcp-6170006/scripts/publish.js :2 import { execSync, spawn } from 'child_process';
  • shell pungggi-smart-terminal-mcp-6170006/src/command-runner.js :1 import { spawn } from 'node:child_process';
  • shell pungggi-smart-terminal-mcp-6170006/src/pty-session.js :203 async exec({ command, timeout = 30000, maxLines = DEFAULT_EXEC_MAX_LINES, quietExitMs, minOutputBytes = 1, sendNotification, progressToken }) {
  • shell pungggi-smart-terminal-mcp-6170006/src/shell-detector.js :1 import { execFileSync } from 'node:child_process';
  • shell (weak) pungggi-smart-terminal-mcp-6170006/test/http-scan-server.test.js :3 import { spawn } from 'node:child_process';
  • shell (weak) pungggi-smart-terminal-mcp-6170006/test/index.test.js :3 import { spawnSync } from 'node:child_process';

network 3

  • net (weak) pungggi-smart-terminal-mcp-6170006/scripts/http-scan-server.js :9 import http from 'node:http';
  • net (weak) pungggi-smart-terminal-mcp-6170006/test/http-scan-server.test.js :67 const response = await fetch(`${SERVER_URL}/mcp`, {
  • net (weak) pungggi-smart-terminal-mcp-6170006/test/publish.test.js :52 "import http from 'node:http';",

secrets 1

  • secrets (weak) pungggi-smart-terminal-mcp-6170006/scripts/publish.js :498 const apiKey = process.env.SMITHERY_API_KEY || '';

tool registrations 32

  • terminal_start pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24093
  • terminal_exec pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24127
  • terminal_run pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24148
  • terminal_run_paged pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24181
  • terminal_write pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24222
  • terminal_read pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24236
  • terminal_get_history pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24251
  • terminal_resize pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24266
  • terminal_send_key pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24280
  • terminal_wait pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24293
  • terminal_retry pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24316
  • terminal_diff pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24345
  • terminal_stop pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24362
  • terminal_list pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24373
  • terminal_write_file pungggi-smart-terminal-mcp-6170006/.smithery/shttp/module.js :24384
  • terminal_start pungggi-smart-terminal-mcp-6170006/src/tools.js :90
  • terminal_exec pungggi-smart-terminal-mcp-6170006/src/tools.js :130
  • terminal_run pungggi-smart-terminal-mcp-6170006/src/tools.js :159
  • terminal_run_paged pungggi-smart-terminal-mcp-6170006/src/tools.js :196
  • terminal_write pungggi-smart-terminal-mcp-6170006/src/tools.js :243
  • terminal_read pungggi-smart-terminal-mcp-6170006/src/tools.js :263
  • terminal_get_history pungggi-smart-terminal-mcp-6170006/src/tools.js :283
  • terminal_resize pungggi-smart-terminal-mcp-6170006/src/tools.js :300
  • terminal_send_key pungggi-smart-terminal-mcp-6170006/src/tools.js :316
  • terminal_wait pungggi-smart-terminal-mcp-6170006/src/tools.js :331
  • terminal_watch pungggi-smart-terminal-mcp-6170006/src/tools.js :356
  • terminal_retry pungggi-smart-terminal-mcp-6170006/src/tools.js :384
  • terminal_diff pungggi-smart-terminal-mcp-6170006/src/tools.js :415
  • terminal_stop pungggi-smart-terminal-mcp-6170006/src/tools.js :434
  • terminal_list pungggi-smart-terminal-mcp-6170006/src/tools.js :482
  • terminal_write_file pungggi-smart-terminal-mcp-6170006/src/tools.js :495
  • terminal_extra pungggi-smart-terminal-mcp-6170006/src/tools.js :535

declared dependencies 9

  • @modelcontextprotocol/sdk@^1.29.0
  • node-pty@^1.1.0
  • zod@^3.25.76
  • @babel/generator@^7.29.1
  • @babel/parser@^7.29.0
  • @babel/traverse@^7.29.0
  • @babel/types@^7.29.0
  • @smithery/cli@^4.7.4
  • esbuild@^0.28.0