@atrib/trace 0.5.17 → 0.5.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +28 -5
- package/package.json +3 -3
package/LICENSE
CHANGED
|
@@ -201,7 +201,7 @@
|
|
|
201
201
|
See the License for the specific language governing permissions and
|
|
202
202
|
limitations under the License.
|
|
203
203
|
|
|
204
|
-
Copyright 2025-2026
|
|
204
|
+
Copyright 2025-2026 atrib contributors
|
|
205
205
|
|
|
206
206
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
207
207
|
you may not use this file except in compliance with the License.
|
package/README.md
CHANGED
|
@@ -1,15 +1,23 @@
|
|
|
1
1
|
# @atrib/trace
|
|
2
2
|
|
|
3
|
-
MCP server exposing the `trace` tool
|
|
3
|
+
MCP server exposing the `trace` tool for atrib's verifiable action layer. It walks a record's `informed_by` chain backward to surface the signed relationship path that led to it.
|
|
4
4
|
|
|
5
5
|
Closes the consumer-side cognitive-loop primitive: recall returns raw records; trace returns the declared-relationship trace, so an agent asking "why did I do X?" can see "X was claimed to be informed by Y, which was claimed to be informed by Z" without manually walking `informed_by` hash-by-hash.
|
|
6
6
|
|
|
7
|
+
## Install
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
pnpm add @atrib/trace
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Verify a local build with `pnpm --filter @atrib/trace test`.
|
|
14
|
+
|
|
7
15
|
## Tools
|
|
8
16
|
|
|
9
17
|
Two bidirectional walk tools share the same input + response shape; only the walk direction differs:
|
|
10
18
|
|
|
11
19
|
```
|
|
12
|
-
mcp__atrib-trace__trace({ // BACKWARD
|
|
20
|
+
mcp__atrib-trace__trace({ // BACKWARD: what informed this?
|
|
13
21
|
record_hash: "sha256:<64-hex>", // start
|
|
14
22
|
depth?: number, // hop cap (0=start only, default 3, max 10)
|
|
15
23
|
max_nodes?: number, // safety cap (default 200, max 500)
|
|
@@ -17,7 +25,7 @@ mcp__atrib-trace__trace({ // BACKWARD — what informed this?
|
|
|
17
25
|
include_content?: boolean // include D062 local_content (default false)
|
|
18
26
|
})
|
|
19
27
|
|
|
20
|
-
mcp__atrib-trace__trace_forward({ // FORWARD
|
|
28
|
+
mcp__atrib-trace__trace_forward({ // FORWARD: what was informed by this?
|
|
21
29
|
record_hash, depth?, max_nodes?, compact?, include_content? // same schema
|
|
22
30
|
})
|
|
23
31
|
|
|
@@ -45,7 +53,7 @@ mcp__atrib-trace__trace_forward({ // FORWARD — what was informed by this?
|
|
|
45
53
|
|
|
46
54
|
- `trace` walks `informed_by` BACKWARD (toward declared ancestors). Answers "what did the signer claim informed this record?"
|
|
47
55
|
- `trace_forward` walks `informed_by` FORWARD (records that cited this one). Answers "I made decision X, what did I do because of it?" The dual of `trace`. Same input schema, same response shape.
|
|
48
|
-
- For forward walks, `next_informed_by` carries the CHILDREN visited at the next hop (records citing this one) rather than this record's own informed_by
|
|
56
|
+
- For forward walks, `next_informed_by` carries the CHILDREN visited at the next hop (records citing this one) rather than this record's own informed_by. The field name is kept for shape-compat with `trace`.
|
|
49
57
|
|
|
50
58
|
## Reads
|
|
51
59
|
|
|
@@ -70,6 +78,17 @@ When the envelope carries an optional `_local` sidecar (per the local-mirror sid
|
|
|
70
78
|
|
|
71
79
|
Add to your MCP host config (e.g. `~/.claude.json` `mcpServers`):
|
|
72
80
|
|
|
81
|
+
```json
|
|
82
|
+
{
|
|
83
|
+
"atrib-trace": {
|
|
84
|
+
"command": "npx",
|
|
85
|
+
"args": ["-y", "@atrib/trace"]
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
For a monorepo checkout or local development, point at the built binary directly:
|
|
91
|
+
|
|
73
92
|
```json
|
|
74
93
|
{
|
|
75
94
|
"atrib-trace": {
|
|
@@ -83,6 +102,10 @@ Or run as a one-off subprocess via `pnpm --filter @atrib/trace start`.
|
|
|
83
102
|
|
|
84
103
|
## Status
|
|
85
104
|
|
|
86
|
-
|
|
105
|
+
Published and maintained. 8 tests covering: empty-mirror, single-record, one-hop walk, multi-hop chain, depth truncation, diamond fan-in, dangling references, max_nodes cap. Full workspace tests green.
|
|
87
106
|
|
|
88
107
|
The companion consumer-side primitive `atrib-summarize` (synthesizes narrative across N records) is the next ship.
|
|
108
|
+
|
|
109
|
+
## Part of atrib
|
|
110
|
+
|
|
111
|
+
atrib is an open protocol for verifiable agent actions. Every action becomes a signed, chain-linked record that anyone can verify against a public Merkle log, with no operator to trust. This package is one entrypoint. See the [full package family](https://github.com/creatornader/atrib#packages) and the [protocol spec](https://github.com/creatornader/atrib/blob/main/atrib-spec.md).
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@atrib/trace",
|
|
3
|
-
"version": "0.5.
|
|
4
|
-
"description": "MCP server for atrib. Walks informed_by chains
|
|
3
|
+
"version": "0.5.19",
|
|
4
|
+
"description": "MCP server for atrib's verifiable action layer. Walks informed_by chains to show the signed relationship path.",
|
|
5
5
|
"author": "atrib <hello@atrib.dev>",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"atrib",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
27
27
|
"zod": "^3.25.76",
|
|
28
|
-
"@atrib/mcp": "0.
|
|
28
|
+
"@atrib/mcp": "0.19.1"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@types/node": "^25.9.3",
|