ambient_context_get_statesLABSCO SUMMARY
Raising the client's declared scope never widens what it gets.
A client asks for a sensitivity level, but the response is the intersection of that request and what you ticked in the tray — so a model that asks for everything still sees only what you allowed. The policy tool exists so it can say why a field is missing instead of retrying, and the event catalogue lets it learn the shape of the data without seeing any of yours.
What it is
A Windows tray application that publishes local ambient context — presence, foreground app category, battery, power events, system load, long-session detection — as four MCP tools. It listens on 127.0.0.1 only and sends nothing outward.
What you get
- ambient_context_get_states — the current state, filtered to what you have allowed
- ambient_context_poll_events — unread events since this client's cursor, or a time range when you pass one
- ambient_context_describe_events — the schema catalogue for every event the server can fire, with no real data in it
- ambient_context_get_policy — which fields are classified how, and why a value you expected is not appearing
- Every field classified by sensitivity, with medium and high off until you opt in from the tray dialog
- A tray menu that copies a ready-made Claude Code registration command, token included
Requirements
Windows 10 version 2004 or newer, the .NET 8 and ASP.NET Core 8 runtimes, and Windows App Runtime 1.8 — the app points you at the installer on first run if it is missing. Claude Desktop can install the packaged bundle from the releases page instead. Clients connect over Streamable HTTP to the local endpoint with a bearer token; requests carrying an Origin header are accepted only from localhost.
Setup effort
Follow the published steps
USE CASES
Not being interrupted while you are away
Read presence and let the assistant decide whether now is the moment to ask you something.
Picking up where you left off
Poll the events since the assistant last looked — you returned, power came back, the machine woke.
Being told you have been at it too long
Surface long-session and system-load signals so a break gets suggested by something that can actually see it.
Explaining why a value is not showing up
Read the effective policy and report that the field is classified above what you allowed, rather than retrying.
Learning what the data looks like before requesting any
Fetch the event catalogue once and cache it — it changes only between releases.
Reviewing what happened during a stretch of yesterday
Pass a start and end time and get the events in that window instead of a live cursor read.
4 tools
Listed in project docs. Your client may show a different list.
ambient_context_poll_eventsambient_context_describe_eventsambient_context_get_policyBEFORE YOU INSTALL
What to know first
Tools you get
4 tools named in the project's documentation.
Requires
.NET 8
Where it runs
The documented client runs the server on your machine.
INSTALLATION
Connect your client
Server setup
Setup
Claude Desktop route: download ambient-context-mcp-vX.Y.Z.mcpb from Releases and install it from Claude Desktop settings -> extensions; the tray process is auto-spawned
Other clients: unpack ambient-context-mcp-vX.Y.Z-win-x64.zip and run ambient-mcp.exe
Tray shows [●] Ambient Context MCP — :37690; click it to open the settings dialog
In the 送信設定 (transmission settings) tab, tick the context items you are willing to expose, then save
Tray menu -> 「Claude Code 用設定をコピー」 copies the ready-made client command
Paste and run the claude mcp add command in a terminal
claude mcp add
claude mcp add ambient-context \
--transport http http://127.0.0.1:37690/mcp \
--header "Authorization: Bearer <YOUR_TOKEN>"MCP Clients
Claude Code
claude mcp add ambient-context --transport http http://127.0.0.1:37690/mcp --header "Authorization: Bearer <YOUR_TOKEN>"