Caveat verdict
agentdeals
AgentDeals is a read-only remote MCP server that searches and compares developer infrastructure deals; it requires no API key, no credentials, and only retrieves publicly available pricing/deal information from the declared agentdeals.dev endpoint.
⚠ Flagged for review — coarse, uncorroborated signal, not a confirmed exploit. Review the config yourself before installing.
Automated static analysis — not a human review. Caveat flags capabilities, not confirmed intent, and can produce false positives. Disagree with this verdict? Use Dispute below.
Findings (10)
Pipe to sh — executes piped content as shell commands
scripts/ingest-startup-deals.ts · prose · downgraded · |sh
<script> tag in markdown — potential code injection
test/monitor.test.ts · prose · downgraded · <script>
Possible hardcoded credential
test/telemetry.test.ts · prose · downgraded · TOKEN = "fake-token
References child_process — can spawn system processes
scripts/ingest-startup-deals.ts · prose · downgraded · child_process
Uses spawn() — can execute external programs
test/api-client.test.ts · prose · downgraded · spawn(
Dynamic import() — loads module at runtime
test/api-client.test.ts · prose · downgraded · import("
HTTP request to bare IP address — common in malicious payloads
test/error-handling.test.ts · prose · downgraded · http://127.0.0.1
References tunneling service
AGENT_README.md · prose · downgraded · ngrok
Popular HTTP library — network access
AGENTS.md · prose · downgraded · got
Accesses sensitive environment variables
src/stats.ts · prose · downgraded · process.env.UPSTASH_REDIS_REST_TOKEN
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class A/D). Final tier capped at Caution — cannot be lifted by any downgrade, example-payload opt-in, or allowlist.
Permissions & capabilities
No declared permissions — minimal attack surface.
network_in Is this flag fair?
Thanks — recorded.