AgentGov Scanner
Read-only static analysis that discovers AI agents across frameworks, maps each agent's tools into a capability graph, and produces an evidence-backed risk register. Never imports or executes the code it scans.
Zero runtime dependencies (Python stdlib only). Python 3.10+.
Frameworks
| Framework | Agents recognised | Tools recognised |
|---|---|---|
| MCP | FastMCP(...), Server(...) |
@mcp.tool / @server.tool() |
| LangChain | AgentExecutor, create_*_agent, initialize_agent |
@tool |
| CrewAI | Agent(role=..., llm=...) |
@tool |
| OpenAI | assistants.create(...) (synthetic) |
function schemas {"type":"function",...} |
Rules
| ID | Severity | What |
|---|---|---|
| AGT001 | critical | Tool parameter reaches a shell / code-exec call |
| AGT002 | high | Tool parameter reaches an outbound HTTP call (SSRF) |
| AGT003 | high | Tool parameter reaches a filesystem call (path traversal) |
| AGT004 | medium | Tool description advertises unbounded capability |
| AGT005 | medium | Tool parameter not constrained by the generated input schema |
| AGT010 | critical | Tool carries a hardcoded secret |
| AGT020 | high/med | Tool exposes a destructive/financial/send/deploy capability with no approval gate |
Use
pip install agentgov-scanner
agentgov path/to/repo # terminal risk register
agentgov path/to/repo --format json # machine form: inventory + graph + findings
agentgov path/to/repo --format markdown > report.md
agentgov path/to/repo --fail-on high # exit 1 if any high+ finding (CI gate)
Exit codes: 0 clean, 1 findings at/above --fail-on, 2 usage error.
Develop
cd scanner
python3 -m venv .venv && .venv/bin/pip install pytest
.venv/bin/python -m pytest -q
Lineage
The engine is lifted from mcpscan (taint tracking, dataflow rules, report)
and oiscan (secret patterns), widened from "one MCP server" to "agents across
frameworks". See the root CLAUDE.md.
Metadata
Release files for agentgov-scanner 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| agentgov_scanner-0.1.0.tar.gz | 24.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| agentgov_scanner-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 53.8 kB
Release files / agentgov_scanner-0.1.0.tar.gz
| Download URL | agentgov_scanner-0.1.0.tar.gz |
|---|---|
| Size | 24.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1b8ce753b2597b54ca7b11f87c4d453c0c9c99ee1bee0068964a0ab0575e5a36
|
|
BLAKE2b-256 checksum How to use checksums |
26092374e8e2565dbee3a53c8528ff9d9f50bdedbd4ba7d321cd50901f420f0c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / agentgov_scanner-0.1.0-py3-none-any.whl
| Download URL | agentgov_scanner-0.1.0-py3-none-any.whl |
|---|---|
| Size | 29.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7aa93ce086f2700980f18a14d54d8fd3213883e72527b909eeacb415f21bb693
|
|
BLAKE2b-256 checksum How to use checksums |
5035f5fd4791c993f66b15c67db04d640e41b57f74a395e08084ff4cdcaaff03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|