MCPVault

pty_write

MCP tool from Mac Developer Bridge by alexanderradahl

Send keystrokes, including control characters

How to use it

pty_write is exposed by the Mac Developer Bridge MCP server. Add the server to your MCP client (Claude Desktop, Cursor, Windsurf and others), and the pty_write tool becomes available to the model automatically. See the full listing for setup details and every tool this server provides.

FULL MAC DEVELOPER BRIDGE LISTING

Other tools in Mac Developer Bridge (34)

apply_patch

Apply or check a unified diff with git apply

audit_tail

Read the local bridge audit tail

bridge_status

Runtime identity, paths, permissions context, shell, audit mode, Codex binary, focus policy, and background-Chrome status

chatgpt_extension_status

Inspect the installed ChatGPT Chrome extension, OpenAI native-host registration, and live read-only page-bridge status without patching the OpenAI extension

chrome_click

Click an element in an approved tab without foregrounding Chrome

chrome_close

Release an MDB workspace tab back to the idle pool, or close a non-workspace background tab

chrome_fill

Fill inputs, textareas, selects, or contenteditable fields in the background

chrome_navigate

Navigate an approved tab without selecting it

chrome_open

Lease an idle tab from the persistent MDB group and open a URL without creating a new tab

chrome_snapshot

Read visible text and interactive elements from an approved tab

chrome_tabs

List tabs in the real signed-in Chrome profile without activating Chrome; scoped only when Strict approvals is on

chrome_workspace_setup

Create or expand the MDB pool while Chrome is already foreground; default target is eight reusable tabs

chrome_workspace_status

Inspect the extension-owned MDB Chrome group, lease activity, and reusable background-tab pool; no website grant required

codex_thread_list

Search and page stored Codex threads

codex_thread_read

Read a stored Codex thread without resuming it

codex_thread_turns_list

Page stored turns with full, summary, or omitted items

Concurrency.

The session cap is taken, not merely checked, so concurrent ptystart calls cannot exceed it.

Containment.

See SECURITY.md — ptyclose reports leaderGroupGone, ttyProcessesKilled and uncontainedPids separately, and containmentVerified is true only when nothing survived.

fs_list

Recursive or non-recursive directory listing

fs_manage

mkdir, remove, move, copy, chmod, or symlink

fs_read

Read text or base64 with offset pagination

fs_stat

lstat metadata and symlink target

fs_write

Atomic replace, create, append, or binary write

pty_close

End the session and reclaim it

pty_read

Read the transcript from a byte cursor, optionally long-polling

pty_resize

Change the window size, confirmed by a kernel read-back

pty_signal

Signal the session's process group

pty_start

Start a program on a real terminal and return a session id

Retention.

Each session keeps the last MACDEVBRIDGEPTYRINGBYTES of output in a fixed ring; ptyread reports lostBytes when a cursor falls behind it.

shell_exec

Run any foreground shell command, optionally with cwd, env, stdin, timeout, and output cap

shell_job_kill

Signal a background process group

shell_job_list

List persistent job metadata

shell_job_status

Inspect running state and log tails

shell_start

Start a detached long-running process