{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_2jvcpysp4cb8","handle":"mcp-guardian-ai","url":"https://wellknown.network/agents/mcp-guardian-ai","links":{"self":"https://wellknown.network/agents/mcp-guardian-ai/record.json","html":"https://wellknown.network/agents/mcp-guardian-ai","markdown":"https://wellknown.network/agents/mcp-guardian-ai/record.md","api":"https://wellknown.network/api/v1/agents/mcp-guardian-ai","status":"https://wellknown.network/api/v1/agents/mcp-guardian-ai/status","claim":"https://wellknown.network/agents/mcp-guardian-ai/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/mcp-guardian-ai/claim.json","badge":"https://wellknown.network/agents/mcp-guardian-ai/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/mcp-guardian-ai/history","tools":"https://wellknown.network/api/v1/agents/mcp-guardian-ai/tools"},"ard":{"identifier":"urn:air::server:mcp-guardian-ai","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"mcp-guardian-ai","summary":"Whitelist NLP intent enforcement for MCP agents — pre-execution tool call validation","description":"# MCP Guardian\n\n**Agent intent enforcement for MCP tool calls — pre-execution security for AI agents.**\n\nMCP Guardian is not a firewall for MCP servers. It's a **declarative intent guardrail** for agent behavior. It validates every tool call against declared intent policies *before execution*. If the call doesn't match the policy, the MCP server never sees it.\n\n## Install\n\n```bash\npip install mcp-guardian-ai\n```\n\nThis pulls in all dependencies: `openai-agents`, `pydantic`, `pyyaml`.\n\nOr install everything explicitly:\n\n```bash\npip install mcp-guardian-ai openai-agents pydantic pyyaml\n```\n\nSet your OpenAI API key (used by the LLM intent evaluator — the fast check tier runs without it):\n\n```bash\nexport OPENAI_API_KEY=sk-...\n```\n\n> **Note:** The PyPI package is `mcp-guardian-ai`. The Python import is `mcp_guardian`.\n\nFor development from source:\n\n```bash\ngit clone https://github.com/mcp-guardian/mcp-guardian.git\ncd mcp-guardian\npip install -e \".[dev]\"\n```\n\n## Three Ways to Use It\n\n### Path 1: Pure Python (no files needed)\n\n```python\nimport asyncio\nfrom agents import Agent, Runner\nfrom agents.mcp import MCPServerStreamableHttp\nfrom mcp_guardian import GuardianToolGuardrail, IntentPolicy\n\npolicy = IntentPolicy(\n    name=\"read-only\",\n    description=\"Read files only — no writes, no shell\",\n    expected_workflow=\"Read and list files to answer user questions\",\n    forbidden_tools=[\"write_*\", \"execute_*\", \"delete_*\"],\n)\nguardrail = GuardianToolGuardrail(policy=policy)\n\nasync def main():\n    async with MCPServerStreamableHttp(\n        name=\"my-server\",\n        params={\"url\": \"https://my-mcp-server.example.com/mcp\"},\n    ) as server:\n        tools = await guardrail.wrap_mcp_tools([server])\n        agent = Agent(name=\"Worker\", model=\"gpt-4o\", tools=tools)\n        result = await Runner.run(agent, \"List all files\")\n        print(result.final_output)\n\n    # Print audit log\n    for entry in guardrail.audit_log:\n        verdict = str(entry.verdict)\n        icon = \"✓\" if verdict == \"…","publisher":{"name":"MCP Guardian","url":null},"homepage":"https://github.com/mcp-guardian/mcp-guardian","repository":"https://github.com/mcp-guardian/mcp-guardian","version":"0.2.0","license":"Apache-2.0","protocols":["mcp"],"tags":["mcp","guardian","agent","security","intent","guardrail","openai"],"pricing":null,"endpoints":[{"url":"pypi:mcp-guardian-ai","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","license":"pypi","repoUrl":"pypi","summary":"pypi","version":"pypi","description":"pypi","homepageUrl":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"dev.package-management","name":"Packages & Dependencies","confidence":1,"provenance":"derived"},{"slug":"dev.filesystem","name":"Filesystem","confidence":0.802,"provenance":"derived"},{"slug":"dev.version-control","name":"Version Control","confidence":0.745,"provenance":"derived"},{"slug":"dev.terminal","name":"Terminal & Shell","confidence":0.745,"provenance":"derived"}],"categories":["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-guardian-ai","registry":"pypi","observedAt":"2026-10-28T11:27:23.002Z","publishedAt":"2026-05-14T09:23:42.490631Z","latestVersion":"0.2.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"mcp-guardian-ai","url":"https://pypi.org/project/mcp-guardian-ai/","firstSeenAt":"2026-09-10T02:22:34.984Z","fetchedAt":"2026-10-28T11:26:22.804Z","normalizedAt":"2026-10-28T11:26:22.804Z"}]},"firstSeenAt":"2026-09-10T02:22:34.984Z","updatedAt":"2026-10-28T11:27:23.002Z"}