Policy firewall and audit layer for MCP tool calls. Fixed an SSRF bypass where hostnames resolving into RFC 6598 CGNAT shared address space (100.64.0.0/10) weren't blocked -- Python's ipaddress.is_private doesn't cover that range.
Drift inferred · capture-to-capture
No drift recorded — single capability capture; advisories appear once its surface changes.
transport stdio counts 0 tools · 0 res
· 0 prompts
permission surface via code analysis
No tools enumerated yet for this server.
prompt-surface
shipped agent-instruction files + hidden-content / dangerous-code findings —
quoted from the analyzed source
analyzed commit ad4cac8 · analyzer v33 · 4w ago
danger signals1
- suspicious endpoint 169.254.169.254 (cloud metadata) ahmeddoghri-mcpinterlock-ad4cac8/mcpinterlock/core.py :20
"arguments": {"url": "http://169.254.169.254/latest/meta-data/iam", "output": "/tmp/report.json"},
evidence-backed
findings quoted directly from the published source artifact — not inferred
code files: 7
filesystem 3
- fs ahmeddoghri-mcpinterlock-ad4cac8/mcpinterlock/cli.py :5
from pathlib import Path - fs ahmeddoghri-mcpinterlock-ad4cac8/mcpinterlock/core.py :8
from pathlib import Path - fs ahmeddoghri-mcpinterlock-ad4cac8/mcpinterlock/server.py :6
from pathlib import Path
network 2
- net ahmeddoghri-mcpinterlock-ad4cac8/mcpinterlock/core.py :6
import socket - net (weak) ahmeddoghri-mcpinterlock-ad4cac8/tests/test_cgnat_ssrf_bypass.py :1
import socket
database 1
- db ahmeddoghri-mcpinterlock-ad4cac8/mcpinterlock/core.py :7
import sqlite3