Give ChatGPT a real terminal on your Mac. Zero-dependency local MCP bridge for shell, files, PTY sessions, jobs, and Codex history.
Mac Developer Bridge exposes 17 tools with significant quality gaps. Most tools have basic descriptions (10-50 chars) that lack actionable context for LLM selection. Parameter descriptions are sparse or missing entirely. Input schemas are present but minimal, many use generic `{"type":"object","properties":{},"additionalProperties":true}` with no type constraints. Critical destructive tools (shell_exec, job_spawn, pty_write) lack confirmation patterns or dry-run modes. No output schemas documented. Error handling is absent from descriptions. Tool naming is verb-forward (good), but composition issues exist: shell_exec and job_spawn both execute commands; pty_* tools form a stateful session pattern but lack clear lifecycle documentation. Security concerns: file_read/file_write accept arbitrary paths with no validation hints; shell_exec accepts arbitrary commands. Audit trail exists (audit_tail) but no permission gates documented.
Apply a unified diff patch to a file.
Tail the audit log.
Report bridge version, protocol support, and federation status.
Read a Codex thread history.
List files in a directory.
Read a file from the filesystem.
Write data to a file.
Terminate a background job.
Destructive tools lack confirmation/dry-run patterns. shell_exec, job_spawn, job_kill, pty_write, file_write, apply_patch can cause irreversible damage without agent confirmation.
Input schemas are generic or missing type constraints. Most tools use `{"type":"object","properties":{},"additionalProperties":true}` or minimal schemas without enum/pattern/minLength constraints. LLMs cannot validate inputs.
Descriptions are too brief (10-50 chars) and lack actionable context. No guidance on when to use each tool, what it returns, or how it differs from similar tools (e.g., shell_exec vs job_spawn).
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2025-06-18+ | v2 |
List background jobs.
Read output from a background job.
Spawn a background job.
Close a PTY session.
Read output from a PTY session.
Start a PTY (pseudo-terminal) session.
Write data to a PTY session.
Execute a shell command and return its output.
Start an interactive shell session.
No output schemas documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., sessionId from pty_start, jobId from job_spawn).
File and shell tools accept arbitrary paths/commands with no validation hints. Descriptions lack guidance on path traversal, command injection, or allowed directories.