Atlas / MCP servers / kerbelp / Metatron

MetatronSAFE

mcp/kerbelp/metatron

Git-native context layer for AI coding agents. Your team's real engineering decisions — patterns, pitfalls, conventions — live as reviewed markdown files in your repo; agents consult them before writing code and record what they learn. Files-first, no server required; MCP as an optional serving laye

Verdict
SAFE
Grade
B
Trust score
88 /100
Exposed tools
1 1r · 0w · 0d
Transport
—
License
MIT
Stars
25
01

Overview

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

▶ Watch the 2-minute demo — files-first mode (default)

🎬 Also available: the MCP serving-layer mode demo.

Metatron captures a codebase's real implementation decisions — preferred patterns, rejected approaches, edge cases, internal conventions — as structured decisions: one markdown file per convention, versioned in git next to the code, consulted by any coding agent that can

Read from source at commit e4de1c0aa072OBSERVED · 2026-10-09
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. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add metatron-webui --env ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY} -- npx -y [email protected]
claude-desktop
{
  "mcpServers": {
    "metatron-webui": {
      "command": "npx",
      "args": [
        "-y",
        "[email protected]"
      ],
      "env": {
        "ANTHROPIC_API_KEY": "${ANTHROPIC_API_KEY}"
      }
    }
  }
}
03

Exposed tools (1)

1 read · 0 write · 0 destructive.

ToolRiskDescription
get_verification_templatereadReturn the canonical verification-contract skeleton, so you can draft a new
04

Trust audit

SAFEgrade B · trust 88/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

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

What the source does

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

Findings (19)

LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
metatron/identity.py:40
return hashlib.sha1(email.strip().lower().encode("utf-8")).hexdigest()[:12] if email else ""
LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
metatron/mirror/layout.py:41
digest = hashlib.sha1(id_str.encode("utf-8")).hexdigest()[:6]
LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
metatron/mirror/render.py:99
return hashlib.sha1(
LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
metatron/mirror/render.py:113
return hashlib.sha1(
LOWInsecure crypto · crypto.weak_hash · CWE-327, CWE-338
metatron/storage/catalog.py:39
digest = hashlib.sha1(repo_id.encode("utf-8")).hexdigest()[:6]
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
README.md:620
Metatron curation UI on http://127.0.0.1:1337  (Ctrl-C to stop)
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
tests/test_web_server.py:56
yield store, decision, f"http://127.0.0.1:{port}"
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
tests/test_web_server.py:271
base = f"http://127.0.0.1:{port}"
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
tests/test_webui_files_mode.py:84
yield fm, f"http://127.0.0.1:{port}"
LOWNetwork egress · net.raw_ip · CWE-200, CWE-319
tests/test_webui_files_mode.py:106
with urllib.request.urlopen(f"http://127.0.0.1:{port}/api/mode") as r:
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
docs/designs/2026-07-21-repository-verification-layer.md:123
-d '{"email":"[email protected]","password":"Correct123!"}'
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
docs/designs/2026-07-21-repository-verification-layer.md:132
-d '{"email":"[email protected]","password":"wrong"}'
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
docs/examples/verification/auth-login.md:23
-d '{"email":"[email protected]","password":"Correct123!"}'
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
LOWPrompt injection · prompt.transfer_instruction · CWE-94, CWE-1427
docs/examples/verification/auth-login.md:32
-d '{"email":"[email protected]","password":"wrong"}'
Why it matters. an instruction to move sensitive data to an outside destination
Fix. remove; a skill never needs the user's secrets off the machine
INFOInventory / provenance · inv.oversize · CWE-1104
assets/metatron-banner-hdr.png
assets/metatron-banner-hdr.png
Why it matters. 1843616 bytes not read
INFOPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
metatron/extraction/prompts/refine_feedback.txt:1
You are a senior engineer turning a piece of feedback — a convention a coding agent
INFOPrompt injection · prompt.authority_framing · CWE-94, CWE-1427
metatron/extraction/prompts/triage_decisions.txt:1
You are a senior engineer reviewing candidate "decisions" — proposed conventions for a
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
README.md:233
Ingest a repo (mount it read-only and pass your API key), curate, then serve:
Why it matters. asks the agent to read credentials
INFOSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
README.md:171
curl -sSf https://getmetatron.com/install.sh | sh

Gates applied: no_behavioural_pass.

Audited 2026-10-09 · audit v0.4.1 · source sha e4de1c0aa072full audit observations/trust-audit/mcp-server/kerbelp__metatron.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-09e4de1c0aa072SAFEB88first audit
06

Questions

What is the Metatron MCP server?

Git-native context layer for AI coding agents. Your team's real engineering decisions — patterns, pitfalls, conventions — live as reviewed markdown files in your repo; agents consult them before writing code and record what they learn. Files-first, no server required; MCP as an optional serving laye

What tools does Metatron 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 Metatron safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (88/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.

What credentials does Metatron need?

It reads ANTHROPIC_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How current is this page?

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

Advertisement