Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 23 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -502,6 +502,29 @@ detection can be recomputed from it.
and decisions are per machine, forwarded to your SIEM as events. See
[fleet via your SIEM](docs/integrations/fleet-via-siem.md).

**MCP schema fingerprinting is a tripwire, not a proof of a stable server.**
The recorder hashes the full `tools/list` payload (names, descriptions,
`inputSchema`, annotations) and emits when that digest moves while the config
digest does not. That catches the postmark-mcp shape. It does not prove the
server is safe:

- A quiet digest only means the listing has not changed since this install
started watching. A server can keep `tools/list` identical and still change
what a tool does at call time.
- The first observation is not a trusted baseline. If you install after a
swap, that post-swap listing becomes "normal" and the trail stays clean.
- Additive optional fields and legit vendor tool adds move the same digest as
a poisoned description. Treat a move as investigate, not auto-page, until
you have a changelog or a local description delta.
- Auth-gated and per-user listings can change the digest without any release
change. Failed fetches are not "tools removed."

Hardening beyond these honesty notes is tracked in
[#103](https://github.com/blitzcrieg1/agentmetry/issues/103),
[#104](https://github.com/blitzcrieg1/agentmetry/issues/104),
[#105](https://github.com/blitzcrieg1/agentmetry/issues/105), and
[#106](https://github.com/blitzcrieg1/agentmetry/issues/106).

---

## Capabilities & Integrations
Expand Down
2 changes: 2 additions & 0 deletions docs/integrations/detections-splunk.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,8 @@ index=main sourcetype=agentmetry:json action_type=heartbeat

**Alert:** Unscheduled until the fleet has a baseline. A vendor adding a tool looks identical to a poisoned description; treat the hit as an investigation.

**What S7 does not prove.** A stable fingerprint is not a stable server: call-time behavior can diverge while `tools/list` stays fixed. The first observation on a host is not a trusted baseline (install after a swap and the trail stays clean). Additive optional fields and OAuth-gated listings move the digest without a malicious release. See [Coverage & Limitations](../../README.md#coverage--limitations) in the README.

---

## What S4 to S7 do and do not prove
Expand Down
Loading