Semantic Hints MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| SEMANTIC_HINTS_CDP_URL | No | CDP endpoint of the shared Chromium to attach to. | http://127.0.0.1:9222 |
| SEMANTIC_HINTS_HEADLESS | No | Headless mode for the standalone-launch fallback only. | true |
| SEMANTIC_HINTS_TARGET_URL | No | Optional default app URL, opened when a tool is called with no url. | |
| SEMANTIC_HINTS_LAUNCH_BROWSER | No | If true, may launch a private browser when the CDP connection fails. | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| semantic_snapshotA | Return a compact map of hinted UI elements (only elements carrying data-agent-id), grouped into regions/actions/inputs/observables/navigation/other. Use this as a cheap first observation instead of a full accessibility snapshot. To act on an element, pick its |
| semantic_observeA | Return the current compact value/state of a single hinted element, resolved via [data-agent-id='']. Returns a clear error if no element or multiple elements match. Use after a snapshot to read the live value/state of one element. Returns compact JSON only. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 2 tools
The two tools have clearly distinct purposes: semantic_snapshot provides an overview of all hinted elements, while semantic_observe retrieves the state of a single element. No ambiguity.
Both tools follow a consistent verb_noun pattern with the 'semantic_' prefix, using snake_case. The naming is predictable and clear.
With only 2 tools, the server is tightly scoped to its purpose of observing semantic hints. This is appropriate for a focused utility; each tool earns its place.
The tool surface covers the essential operations for the domain: getting a full map of elements and reading a single element's state. No obvious gaps for an observation-only tool.