{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_jxqqvha7ap6m","handle":"mcp-safety","url":"https://wellknown.network/agents/mcp-safety","links":{"self":"https://wellknown.network/agents/mcp-safety/record.json","html":"https://wellknown.network/agents/mcp-safety","markdown":"https://wellknown.network/agents/mcp-safety/record.md","api":"https://wellknown.network/api/v1/agents/mcp-safety","status":"https://wellknown.network/api/v1/agents/mcp-safety/status","claim":"https://wellknown.network/agents/mcp-safety/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/mcp-safety/claim.json","badge":"https://wellknown.network/agents/mcp-safety/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/mcp-safety/history","tools":"https://wellknown.network/api/v1/agents/mcp-safety/tools"},"ard":{"identifier":"urn:air::server:mcp-safety","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"mcp-safety","summary":"Security scanner for MCP servers — know what a server can do before you install it.","description":"# mcp-sentinel\n\n**Know what an MCP server can actually do before you hand it your API keys and shell access.**\n\n[![CI](https://github.com/shuka0158/mcp-sentinel/actions/workflows/ci.yml/badge.svg)](https://github.com/shuka0158/mcp-sentinel/actions/workflows/ci.yml)\n[![Scoreboard](https://github.com/shuka0158/mcp-sentinel/actions/workflows/scoreboard.yml/badge.svg)](https://github.com/shuka0158/mcp-sentinel/actions/workflows/scoreboard.yml)\n[![PyPI](https://img.shields.io/pypi/v/mcp-safety)](https://pypi.org/project/mcp-safety/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n\nThe Model Context Protocol lets you plug arbitrary third-party servers into\nyour AI agent — and each one you install gets to run code, touch your\nfilesystem, and shape what the model does next, based entirely on tool\ndescriptions the agent trusts blindly. `npx some-random-mcp-server` is the\nnew `curl | sh`, except the thing running it also has your Claude/Cursor\nsession's credentials.\n\n**mcp-sentinel scans an MCP server — source code or a live running\ninstance — and tells you exactly what it can do and where that's\ndangerous**, before you add it to your config.\n\n```\n$ mcp-sentinel scan ./some-mcp-server\n\n╭──────────────────────────── mcp-sentinel ─────────────────────────────╮\n│ Target: ./some-mcp-server                                             │\n│ Scanner: static                                                       │\n│ Files scanned: 14                                                     │\n│ Risk score: 45/100   Grade: D                                         │\n╰─────────────────────────────────────────────────────────────────────╯\nCRITICAL: 1  HIGH: 2  MEDIUM: 1\n\n┏━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┓\n┃ Sev      ┃ Rule   ┃ Title                               ┃ Location       ┃\n┡━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━┩\n│ CRITICAL │ MCP001 │ Shell execution with shell=True     │ tools.py…","publisher":{"name":"shuka0158","url":null},"homepage":"https://github.com/shuka0158/mcp-sentinel","repository":"https://github.com/shuka0158/mcp-sentinel","version":"0.1.0","license":null,"protocols":["mcp"],"tags":["mcp","model-context-protocol","security","static-analysis","ai-agents"],"pricing":null,"endpoints":[{"url":"pypi:mcp-safety","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"dev.filesystem","name":"Filesystem","confidence":1,"provenance":"derived"},{"slug":"code.security-review","name":"Security Review","confidence":0.75,"provenance":"derived"}],"categories":["code","dev"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"mcp-safety","registry":"pypi","observedAt":"2026-10-24T17:29:20.866Z","publishedAt":"2026-09-16T12:42:33.698233Z","latestVersion":"0.1.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"mcp-safety","url":"https://pypi.org/project/mcp-safety/","firstSeenAt":"2026-09-18T08:26:38.516Z","fetchedAt":"2026-10-24T17:28:13.159Z","normalizedAt":"2026-10-24T17:28:13.159Z"}]},"firstSeenAt":"2026-09-18T08:26:38.516Z","updatedAt":"2026-10-24T17:29:20.866Z"}