JB Pi macOS Control
Provides observation-only control of the local macOS GUI via Accessibility API, including status checks, window snapshots, and evidence capture with atomic file publishing.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@JB Pi macOS ControlCapture evidence from the frontmost window for calibration"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
JB Pi macOS Control
A local observation-only derivative of CursorTouch/MacOS-MCP. Version 0.1.6 preserves the four-tool boundary and adds an atomic, self-contained file chain for each Evidence capture. Status, Snapshot, and bounded AX behavior are unchanged from frozen 0.1.5.
jb_mac_capture_evidence now requires an approved target, capture_scope="window", a restricted lowercase label, and purpose calibration or acceptance. The label is metadata only; internal unpredictable IDs own all paths. Each successful Evidence atomically publishes exactly:
/tmp/jb-pi-macos-control/<safe-session-component>/evidence/<evidence-id>/
capture.png
manifest.jsonmanifest.json uses jb.evidence-manifest.v1; model-visible output remains jb.evidence.v1 plus the independent validated PNG image item. Neither JSON/details nor audit contains image base64, a complete Session ID, a concrete digest, Window ID, scratch path, or sensitive absolute user path.
See UPSTREAM.md, SECURITY.md, DEPENDENCIES.md, docs/ARCHITECTURE.md, docs/INSTALL-PLAN.md, and docs/BASELINE.md.
./Scripts/verify.zshLifecycle scripts default to dry-run. Approved upgrades are exactly 0.1.0 -> 0.1.2, 0.1.2 -> 0.1.3, 0.1.3 -> 0.1.4, 0.1.4 -> 0.1.5, and 0.1.5 -> 0.1.6; execution requires the matching immutable tag, refuses a running old MCP, and uses macOS RENAME_SWAP.
The server remains stdio-only:
/usr/bin/python3 -m macos_mcp_jb.cli serve-readonly --transport stdioConfiguration
config/approved-targets.json ships as an empty template. Fill it with the
exact signature identity (canonical path, bundle id, Team ID, CDHash, executable
and Info.plist SHA-256, designated requirement) of each macOS bundle you want the
snapshot/evidence tools to accept. policy.py rejects any target not listed
with a matching frozen allowlist entry.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityCmaintenanceA privacy-first macOS MCP server that enables AI agents to capture screenshots of pre-approved application windows for development and debugging tasks.14MIT
- AlicenseAqualityCmaintenanceMCP server for macOS Digital Forensics and Incident Response, providing structured forensic analysis tools for triage collections including log parsing, timestamp normalization, and cross-artifact correlation.236MIT
- Flicense-qualityBmaintenanceAn MCP server that runs on a Mac and exposes a small, sharp set of tools (shell, file transfer, binary execution, screenshots) over a token-protected network port.
- Alicense-qualityCmaintenanceA local-first MCP server for retrieving a small evidence set and recording reviewed conclusions, policy-gated and redacted without giving an agent general filesystem access.MIT
Related MCP Connectors
Remote MCP for Android CLI agent build gate, structured receipts, audit logs, and reviewer-ready evi
A paid remote MCP for ClawManager, built to return verdicts, receipts, usage logs, and audit-ready J
Static MCP manifest and tool-policy security preflight with signed input-redacted receipts
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/JbBom/macos-observation-bridge'
If you have feedback or need assistance with the MCP directory API, please join our Discord server