Local-first token, cost and cache observability for Claude Desktop, packaged in Anthropic's MCP Bundle format.
This artifact has never been installed into a live Claude Desktop or Cowork session. Two separate things are unverified:
- Cowork. Anthropic documents that Claude Desktop's Extensions panel installs
.mcpbbundles, and describes Cowork as a tab of that same app. No first-party sentence says a bundle's tools are available inside a Cowork session. That link is an inference, so this page does not claim Cowork coverage — it claims a bundle exists and needs checking.- The bundle itself. No
.mcpbarchive has been packed or installed anywhere; only the manifest is generated (see "Packing" below), and it deviates from the spec in one stated way.The
claude_desktop_config.jsonroute further down is the grounded one — Anthropic's Help Center documents it directly. Prefer it until someone verifies the bundle.
Requires the observer binary already on your PATH. This is
wiring only — the manifest declares an MCP server that runs
observer; it does not download or bundle it.
npm i -g @superbased/observer # or: pipx install superbased-observer
observer start # run the local daemonThe documented, grounded route — merge this into
claude_desktop_config.json and restart Claude Desktop:
| OS | Path |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json |
| Linux | ~/.config/Claude/claude_desktop_config.json |
{
"mcpServers": {
"observer": {
"command": "observer",
"args": [
"serve"
]
}
}
}The bundle route (unverified, see the box above): pack this directory
into a .mcpb and drag the result into Settings → Extensions.
The generator emits superbased/manifest.json and stops there:
building the archive needs Anthropic's own packer, which is not available in
this repository's build environment, and shipping a hand-zipped file that
claims to be a validated bundle would be a claim we cannot make.
npm install -g @anthropic-ai/mcpb
cd cowork/superbased
mcpb pack # produces superbased.mcpbmcpb validate manifest.json checks the manifest on its own if you
only want the schema verdict.
| Field | Value |
|---|---|
manifest_version |
0.3 — the current spec version in anthropics/mcpb. |
server.type |
binary |
server.mcp_config |
observer serve — the same launch observer init writes for every other client. |
Every documented bundle type packages its own server artefact, and
binary is described as self-contained. This bundle
contains no binary. Observer's binary arrives through npm or PyPI and lives
on your PATH, so entry_point and
mcp_config.command name the command observer
rather than a file inside the archive. That is a departure from what the
format intends, and it is the main reason this artifact is marked unverified
rather than shipped as-is.
One consequence worth knowing on Windows: the spec notes that hosts append
.exe to a binary command automatically. A PyPI install
(pipx install superbased-observer) puts observer.exe on
PATH, which matches; an npm global install puts a shim without that
extension. Untested either way.
The observer server exposes observer's project, session,
cost and cache queries as tools, reading the local
~/.observer/observer.db. It makes no network calls of its own.
Anthropic curates a reviewed extensions gallery. Nothing here has been submitted to it, and submitting is an operator decision — one that should wait until the two unverified points above are settled.
observer init writes no Claude Desktop config today —
internal/mcp has no Claude Desktop client row (the claude-code row
is the Claude Code CLI, a different product) — so nothing here duplicates
what observer wrote. Installing the bundle AND pasting the config block
declares the same server twice; pick one.
Cowork capture is unaffected either way: observer's watcher reads Claude Desktop's own local agent-mode session files whether or not any of this is configured.
- Docs: https://superbased.app/
- Source: https://github.com/superbasedapp/observer
- License: Apache-2.0