The Ghost in the Machine - An MCP (Model Context Protocol) server that exposes OS-level UI automation capabilities to AI clients.
Drift inferred · capture-to-capture
tool count over time
06-13 13:55 now
42t
42t
transport stdio counts 26 tools · 0 res
· 0 prompts
permission surface via code analysis
tools
-
clear_learned_view
-
clear_region_cache
-
click
-
click_and_type
-
click_at
-
click_until_text_appears
-
double_click
-
execute_workflow
-
find_and_click
-
find_and_click_all
-
find_click_and_type
-
find_elements
-
get_annotated_view
-
get_learned_view
-
get_region_cache_stats
-
get_screen_size
-
learn_screen
-
move_mouse
-
press_key
-
scroll
-
scroll_until_text
-
set_learning_mode
-
smart_click
-
take_screenshot
-
type_text
-
wait_for_text
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit 5fe46f0 · analyzer v33 · 5d ago
skills & prompt files 1
- agent-rules PIsberg-ghost-mcp-5fe46f0/CLAUDE.md
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 87
tool registrations 26
- get_screen_size PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1008
- move_mouse PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1019
- click PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1030
- click_at PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1040
- double_click PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1056
- scroll PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1068
- scroll_until_text PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1089
- type_text PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1116
- click_and_type PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1126
- press_key PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1140
- take_screenshot PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/main.go :1148
- learn_screen PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_learning.go :14
- get_learned_view PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_learning.go :32
- get_annotated_view PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_learning.go :66
- clear_learned_view PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_learning.go :96
- set_learning_mode PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_learning.go :103
- find_and_click PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_ocr.go :12
- find_and_click_all PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_ocr.go :80
- wait_for_text PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_ocr.go :99
- find_elements PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_ocr.go :125
- find_click_and_type PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_ocr.go :150
- get_region_cache_stats PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_ocr.go :177
- clear_region_cache PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_ocr.go :187
- click_until_text_appears PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_ocr.go :199
- smart_click PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_smart_click.go :16
- execute_workflow PIsberg-ghost-mcp-5fe46f0/cmd/ghost-mcp/tools_workflow.go :15
declared dependencies 54
- github.com/mark3labs/mcp-go@v0.58.0
- github.com/go-vgo/robotgo@v1.0.2
- github.com/otiai10/gosseract/v2@v2.4.1
- golang.org/x/image@v0.45.0
- google.golang.org/genai@v1.70.0
- cloud.google.com/go@v0.116.0
- cloud.google.com/go/auth@v0.18.2
- cloud.google.com/go/compute/metadata@v0.9.0
- github.com/cespare/xxhash/v2@v2.3.0
- github.com/dblohm7/wingoes@v0.0.0-20250822163801-6d8e6105c62d
- github.com/ebitengine/purego@v0.10.2
- github.com/felixge/httpsnoop@v1.0.4
- github.com/gen2brain/shm@v0.2.1
- github.com/go-logr/logr@v1.4.3
- github.com/go-logr/stdr@v1.2.2
- github.com/go-ole/go-ole@v1.3.0
- github.com/godbus/dbus/v5@v5.2.2
- github.com/google/go-cmp@v0.7.0
- github.com/google/jsonschema-go@v0.4.2
- github.com/google/s2a-go@v0.1.9
- github.com/google/uuid@v1.6.0
- github.com/googleapis/enterprise-certificate-proxy@v0.3.11
- github.com/googleapis/gax-go/v2@v2.17.0
- github.com/gorilla/websocket@v1.5.3
- github.com/jezek/xgb@v1.3.0
- github.com/jezek/xgbutil@v0.0.0-20260124183602-9fd151d6a51a
- github.com/lufia/plan9stats@v0.0.0-20260330125221-c963978e514e
- github.com/power-devops/perfstat@v0.0.0-20240221224432-82ca36839d55
- github.com/santhosh-tekuri/jsonschema/v6@v6.0.2
- github.com/shirou/gopsutil/v4@v4.26.7
- github.com/spf13/cast@v1.10.0
- github.com/tailscale/win@v0.0.0-20250627215312-f4da2b8ee071
- github.com/tklauser/go-sysconf@v0.3.16
- github.com/tklauser/numcpus@v0.11.0
- github.com/vcaesar/gops@v0.41.0
- github.com/vcaesar/imgo@v0.42.0
- github.com/vcaesar/keycode@v0.10.1
- github.com/vcaesar/screenshot@v0.11.1
- github.com/vcaesar/tt@v0.20.1
- github.com/yosida95/uritemplate/v3@v3.0.2
- github.com/yusufpapurcu/wmi@v1.2.4
- go.opentelemetry.io/auto/sdk@v1.2.1
- go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp@v0.61.0
- go.opentelemetry.io/otel@v1.44.0
- go.opentelemetry.io/otel/metric@v1.44.0
- go.opentelemetry.io/otel/trace@v1.44.0
- golang.org/x/crypto@v0.55.0
- golang.org/x/exp@v0.0.0-20260312153236-7ab1446f8b90
- golang.org/x/net@v0.58.0
- golang.org/x/sys@v0.47.0
- golang.org/x/text@v0.41.0
- google.golang.org/genproto/googleapis/rpc@v0.0.0-20260526163538-3dc84a4a5aaa
- google.golang.org/grpc@v1.83.2
- google.golang.org/protobuf@v1.36.12