Agentsnap

io.github.MukundaKattaPublished by GitHub account MukundaKattav0.1.0Updated Oct 24, 2026

Snapshot tests for AI tool-call traces: diff, validate, and catch silent regressions.

VerifiedSTDIODesktop onlyDeveloper ToolsAI & ML

Overview

AI-generated overview

Lets an assistant normalize, diff, and validate AI agent tool-call traces to catch silent regressions between runs.

What you can do
Exposes three tools built on the agentsnap library. normalize_trace coerces a raw tool-call trace into a canonical Trace shape and computes a deterministic SHA-256 fingerprint hash. diff_traces compares a baseline trace against a current run and returns additions, removals, changes, and a status code such as PASSED, OUTPUT_DRIFT, TOOLS_REORDERED, TOOLS_CHANGED, or REGRESSION, with ignore_paths to silence noisy fields. validate_snapshot checks a snapshot against the Trace schema and reports required-field or tool-entry problems.
When to use it
Useful when you maintain agents that call tools and want regression checks on their traces, for example comparing a run before and after a change, or validating a saved snapshot. It fits workflows where tool arguments, ordering, or nondeterministic results can drift without failing ordinary unit tests.
Requirements
Runs as a local stdio process on the user's machine, desktop only. Install via npx @mukundakatta/agentsnap-mcp or a global npm install; Node.js and npm are needed. No authentication, environment variables, or headers are declared.
Before you install
The server reads trace data you pass to it, which may include tool arguments, inputs, and model names; treat such traces as potentially sensitive before sending them. No credentials, payments, or write actions are declared.

Installation

In SourceWeft

  1. Open Agentsnap in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

agentsnap-mcp

[npm] [tests] [mcp]

An MCP server that gives AI assistants the ability to inspect, normalize, diff, and validate agent tool-call traces.

Built on top of @mukundakatta/agentsnap. Works with Claude Desktop, Cursor, Cline, Windsurf, Zed, and any other MCP client.

Tools exposed

normalize_trace

Coerce a raw tool-call trace into the canonical agentsnap Trace shape and compute a deterministic SHA-256 fingerprint hash. Use this to compare runs cheaply or feed downstream diff tools.

json
{  "trace": [    { "name": "search", "args": { "q": "cats" } },    { "name": "fetch",  "args": "https://example.com" }  ],  "input": "find cats",  "model": "claude-opus-4-7"}

→

json
{  "normalized": {    "version": 1,    "model": "claude-opus-4-7",    "input": "find cats",    "output": null,    "tools": [      { "name": "search", "args": { "q": "cats" } },      { "name": "fetch",  "args": "https://example.com" }    ],    "error": null,    "fingerprint": { "node": "v22.0.0", "agentsnap": "0.1.0" }  },  "hash": "sha256:..."}

diff_traces

Diff a baseline trace against a current run. Returns a uniform additions / removals / changes vocabulary plus the agentsnap status code (PASSED, OUTPUT_DRIFT, TOOLS_REORDERED, TOOLS_CHANGED, REGRESSION). Use ignore_paths to silence noisy fields before classification.

json
{  "baseline": { "version": 1, "tools": [{ "name": "search", "args": { "q": "cats" }, "result_hash": "sha256:aaa" }], "error": null, "fingerprint": {...} },  "current":  { "version": 1, "tools": [{ "name": "search", "args": { "q": "cats" }, "result_hash": "sha256:bbb" }], "error": null, "fingerprint": {...} },  "ignore_paths": ["tools[].result_hash"]}

→ { "same": true, "status": "PASSED", "additions": [], "removals": [], "changes": [] }

validate_snapshot

Sanity-check a snapshot against the agentsnap Trace schema. Verifies required fields, tool-entry shape, and surfaces actionable issues. Returns valid=true on success or a list of human-readable problems.

Install

Claude Desktop

Add to claude_desktop_config.json:

json
{  "mcpServers": {    "agentsnap": {      "command": "npx",      "args": ["-y", "@mukundakatta/agentsnap-mcp"]    }  }}

Cursor / Cline / Windsurf / Zed

Same shape, in the appropriate mcp.json for your client. Most clients auto-discover via npx -y @mukundakatta/agentsnap-mcp.

Local install

bash
npm install -g @mukundakatta/agentsnap-mcpmcp-agentsnap        # listens on stdio

Why this matters

Agents that call tools drift silently. A tool argument changes shape, a nondeterministic result flips a downstream branch, an extra tool sneaks in between releases — none of it shows up in unit tests. agentsnap captures the trace; this MCP server lets your assistant inspect and reason about traces directly: normalize one, diff two, or validate a saved snapshot, all from the model's tool-use surface.

License

MIT.

Source: README.md at commit 5bc93c8

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.0LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts