Skip to main content
Reacher exposes six tools to Claude. Each tool is a single self-contained file in src/tools/. They share a common registration pattern but are otherwise fully independent — no shared state, no cross-tool dependencies.

Design philosophy

The surface area is intentional. Rather than shipping a dedicated tool for every API (GitHub, Linear, Notion, Jira…), Reacher ships one authenticated HTTP proxy — fetch_external — and lets you add any API by adding its domain to an allowlist. Claude already knows REST APIs. It just needs a way to call them with your credentials without you pasting tokens into every prompt. The result is six tools that cover the full infrastructure loop:
  • Discover your machines (tailscale_status)
  • Execute commands on them (ssh_exec)
  • Call any allowed API (fetch_external)
  • Search GitHub activity (github_search)
  • Persist knowledge across conversations (gist_kb)
  • Automate web tasks (browser)

Tool registration pattern

Every tool in src/tools/*.js exports four things:
All tools are registered in src/mcp-server.js via server.tool(name, description, schema, handler). The server wraps each handler to inject the appropriate environment variables (API keys, allowed domains) so Claude never receives them directly.
Each handler receives only the env vars it needs — not the full environment — following a least-privilege principle.

Tools summary

All tools

ssh_exec

Execute shell commands on remote Tailscale devices. Supports Linux and Windows (cmd/PowerShell), with a command blocklist and directory allowlist.

tailscale_status

List every device in your Tailscale network with IPs, OS, online status, and last-seen time.

fetch_external

Authenticated HTTP proxy with per-domain token injection. Add any API by adding one line to your config.

github_search

Search GitHub for pull requests or commits by author and date range, with clean minimal output.

gist_kb

Persistent knowledge base backed by private GitHub Gists. Read, write, list, and delete entries across conversations.

browser

CDP-based headless browser control via the agent-browser CLI. Navigate, click, fill forms, and take snapshots.