Atlas / MCP servers / tenequm / Pond

PondCAUTION

mcp/tenequm/pond

Lossless storage and search for AI agent sessions, across every agentic client.

Verdict
CAUTION
Grade
D
Trust score
69 /100
Exposed tools
1 1r · 0w · 0d
Transport
stdio · streamable-http
License
Apache-2.0
Stars
77
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

[](https://github.com/tenequm/pond/actions/workflows/ci.yml) [](https://crates.io/crates/pond-db) [](https://pond.locker/) [](LICENSE)

"I know we discussed that before. Why can't I find that damn conversation?"

Pond makes every AI agent session you've ever run - Claude Code, Codex, any tool, any machine - searchable in one place.

Your agent history is already on your disk: thousands of sessions full of decisions, fixes, and dead ends - scattered across tools that can't search them. Pond ingests them all automatically and losslessly into storage you own (a local dir or your own S3 bucket), makes the whole corpus searchable and SQL-queryable, and hands that recall back to your agents over MCP - so "how did we fix this before?" is a query, not an archaeology dig. Sessions stop being locked to the tool that created them: any session can be restored into any supported client and continued there.

brew install tenequm/tap/pond   # macOS / Linux

scoop bucket add tenequm https://github.com/tenequm/scoop-bucket   # Windows
scoop install tenequm/pond

Or prompt your agent: "Please install and set up pond (see github.com/tenequm/pond)" - the full, failure-proofed version of that prompt is in Connect your agents.

A live 12k-session corpus, then a thr

Read from source at commit a6596d4c862aOBSERVED · 2026-10-08
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control.

claude-code
claude mcp add pi-pond -- npx -y [email protected]
claude-desktop
{
  "mcpServers": {
    "pi-pond": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ]
    }
  }
}
03

Exposed tools (1)

1 read · 0 write · 0 destructive.

ToolRiskDescription
PondreadDurable, lossless recall over past agent sessions via read-only pond tools.
04

Trust audit

CAUTIONgrade D · trust 69/100 Install with care. The audit found things worth knowing before you trust its output.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codeWARN
L2Instruction surface (what it tells the agent)FAIL
L3Class-specific surfacePASS
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (2 observation(s))
Network
declared (5 observation(s))
Shell
none-observed
Dependencies
not all pinned
Secrets in source
none-found

Findings (25)

HIGHPrompt injection · prompt.tool_poisoning · CWE-94, CWE-1427
packages/pond/tests/integration/adapter/snapshots/codex_to_claude.txt:2
{"cwd":"/Users/user/Projects/myproject-a","isSidechain":false,"message":{"content":[{"text":"# AGENTS.md instructions for /Users/user/Projects/myproject-a\n\n<INSTRUCTIONS>\n## Skills\nA skill is a se
Why it matters. a tool description carrying instructions to the agent
Fix. tool descriptions describe the tool; nothing else
MEDIUMNetwork egress · net.raw_ip · CWE-200, CWE-319
packages/pond/src/substrate.rs:5743
let plain = StorageUrl::parse("s3+http://127.0.0.1:9000/pond").unwrap();
LOWInventory / provenance · inv.binary · CWE-1104
packages/pond/tests/fixtures/adapter/agy/antigravity-acp/conversations/7337857a-125f-4db6-ab8e-9d70c9f1115f.db
7337857a-125f-4db6-ab8e-9d70c9f1115f.db
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.binary · CWE-1104
packages/pond/tests/fixtures/adapter/agy/antigravity-acp/conversations/85732767-bcd9-46ac-8e31-08d986363857.db
85732767-bcd9-46ac-8e31-08d986363857.db
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.binary · CWE-1104
packages/pond/tests/fixtures/adapter/agy/antigravity-acp/conversations/884ff681-7470-411c-a581-b5faa1f0fb57.db
884ff681-7470-411c-a581-b5faa1f0fb57.db
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.binary · CWE-1104
packages/pond/tests/fixtures/adapter/agy/antigravity-cli/conversation_summaries.db
conversation_summaries.db
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.binary · CWE-1104
packages/pond/tests/fixtures/adapter/agy/antigravity-cli/conversations/07439cf3-11de-46cd-ae53-730229b38bac.db
07439cf3-11de-46cd-ae53-730229b38bac.db
Why it matters. a compiled or binary member cannot be reviewed from source
Fix. ship source, or explain the binary in the README
LOWInventory / provenance · inv.hidden_file · CWE-1104
.envrc
.envrc
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
packages/pond/tests/fixtures/adapter/claude_desktop_app/local-agent-mode-sessions/d9a1e380-c734-4bea-9583-b3a07ac4a122/54651ddf-a4a5-4594-a675-e852bc9a430e/local_5c09adfc-e7f8-4efb-b1c8-87037f6515ac/.audit-key
.audit-key
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
packages/pond/tests/fixtures/adapter/claude_desktop_app/local-agent-mode-sessions/d9a1e380-c734-4bea-9583-b3a07ac4a122/54651ddf-a4a5-4594-a675-e852bc9a430e/local_5c09adfc-e7f8-4efb-b1c8-87037f6515ac/.claude/.claude.json
.claude.json
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
packages/pond/tests/fixtures/adapter/claude_desktop_app/local-agent-mode-sessions/d9a1e380-c734-4bea-9583-b3a07ac4a122/54651ddf-a4a5-4594-a675-e852bc9a430e/local_5c09adfc-e7f8-4efb-b1c8-87037f6515ac/.claude/.last-cleanup
.last-cleanup
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.hidden_file · CWE-1104
packages/pond/tests/fixtures/adapter/claude_desktop_app/local-agent-mode-sessions/d9a1e380-c734-4bea-9583-b3a07ac4a122/54651ddf-a4a5-4594-a675-e852bc9a430e/local_5c09adfc-e7f8-4efb-b1c8-87037f6515ac/.claude/backups/.claude.json.backup.1778766138995
.claude.json.backup.1778766138995
Why it matters. hidden member outside the usual dotfiles
Fix. review its purpose
LOWInventory / provenance · inv.suspicious_name · CWE-1104
packages/pond/tests/fixtures/adapter/letta-code/transcripts/agent-local-0ce90846-9803-4ab1-8d67-31baacdd5148/default/payload-auto-yx1ua6.json
payload-auto-yx1ua6.json
Why it matters. member named after an attack tool
Fix. remove or justify
LOWInventory / provenance · inv.symlink · CWE-1104
docs/site/public/spec.md
docs/site/public/spec.md
Why it matters. link not followed
LOWCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
packages/pi-pond/test/resume.test.ts:16
const run = exec(
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
LOWCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
packages/pi-pond/test/resume.test.ts:55
exec: exec(
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
LOWCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
packages/pi-pond/test/resume.test.ts:75
exec: exec(
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
LOWCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
packages/pi-pond/test/resume.test.ts:90
exec: exec(
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
LOWCode injection · code.eval_exec · CWE-78, CWE-94, CWE-95
packages/pi-pond/test/resume.test.ts:103
exec: exec(
Why it matters. evaluates text as code
Fix. remove; use a parser or a dispatch table
LOWFilesystem / path · fs.traversal · CWE-22, CWE-59
packages/openclaw-pond/test/stubs/openclaw/plugin-sdk/plugin-entry.ts:6
import type { AgentToolResult } from "../../../../src/tools.js";
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
packages/pi-pond/README.md:53
{ "mode": "url", "url": "http://127.0.0.1:9797/mcp" }
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
packages/pi-pond/test/config.test.ts:29
url: "http://127.0.0.1:9797/mcp",
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
packages/pi-pond/test/config.test.ts:33
expect(config).toMatchObject({ mode: "url", url: "http://127.0.0.1:9797/mcp" });
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
packages/pi-pond/test/extension.test.ts:67
const config = parsePondConfig({ mode: "url", url: "http://127.0.0.1:9797/mcp" });
LOWObfuscation / stealth · obf.base64_blob · CWE-506, CWE-94
packages/pond/tests/fixtures/adapter/claude_code/projects/-Users-user-Projects-myproject-a/98ffa0e7-0f72-490f-a4c3-a0e9c3ce3118.jsonl:10
{"parentUuid":"431d1daf-06f5-4e2c-a01a-6b3fbf4568a3","isSidechain":false,"message":{"model":"claude-opus-4-7","id":"msg_01EBYs4jMCAhcSTs91xXwdaX","type":"message","role":"assistant","content":[{"type"

Gates applied: no_behavioural_pass.

Audited 2026-10-08 · audit v0.4.1 · source sha a6596d4c862afull audit observations/trust-audit/mcp-server/tenequm__pond.json · Report an issue / request a re-scan
05

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-08a6596d4c862aCAUTIOND69first audit
06

Questions

What is the Pond MCP server?

Lossless storage and search for AI agent sessions, across every agentic client.

What tools does Pond expose?

1 in total: 1 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.

Is Pond safe to connect to an agent?

With care. The audit graded it D (69/100) and found 25 things worth knowing before you trust this server, listed below with the exact line each was found on.

What credentials does Pond need?

No credential environment variables were found in its source, so it appears to need none.

How does Pond run?

It speaks stdio and streamable-http, so it runs as a local process your client starts. It is published on npm as pi-pond at 0.3.0.

How current is this page?

The grade is for one exact copy of the source (a6596d4c862a), read on 2026-10-08. The repository is watched and re-audited when it changes.

Advertisement