{"name":"io.github.adanb13/cirdan","slug":"adanb13-cirdan","title":null,"description":"AI infrastructure cartographer & MCP server: fingerprints, graphs & watches live infra for agents","url":"https://mcp.market/server/adanb13-cirdan","rating":null,"grade":"B","score":72,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":23,"stars":0,"forks":0,"downloads_week":82,"last_push_at":"2026-07-23T02:13:54.000Z","license":"Apache-2.0"},"uptime":null,"claimed":false,"transport":"mixed","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/adanb13/cirdan","website":"https://github.com/adanb13/cirdan","version":"0.9.0","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@cirdanops/cli","version":"0.9.0","runtimeHint":"npx","transport":{"type":"stdio"},"packageArguments":[{"value":"serve-mcp","type":"positional","valueHint":"subcommand"}]},{"registryType":"pypi","registryBaseUrl":"https://pypi.org","identifier":"cirdanops","version":"0.9.0","runtimeHint":"uvx","transport":{"type":"stdio"},"packageArguments":[{"value":"serve-mcp","type":"positional","valueHint":"subcommand"}]}],"tools":[{"name":"annotate_node","description":"Attach evidence or attributes to an existing node without changing its confidence.","write_action":false,"price_micros":0,"input_schema":null},{"name":"describe_node","description":"Restart/impact for one node in a single call: node summary plus what is affected if it goes down (dependents/blast radius) and what must be healthy first (dependencies/prerequisites). `node_id` is an alias for `node_ref`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"describe_system","description":"One-shot system overview: runtime/cloud, services + their dependencies, hubs, and public entry points.","write_action":false,"price_micros":0,"input_schema":null},{"name":"execute_action","description":"Execute an action id from list_available_actions. Recorded, redacted, audited.","write_action":true,"price_micros":0,"input_schema":null},{"name":"explain_incident","description":"Evidence-backed markdown explanation of an incident.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fingerprint_system","description":"Detect runtimes, clouds, IaC, and telemetry with confidence and evidence.","write_action":false,"price_micros":0,"input_schema":null},{"name":"generate_report","description":"Regenerate INFRA_REPORT.md and return its contents.","write_action":false,"price_micros":0,"input_schema":null},{"name":"generate_view","description":"Generate an Agentic UI view ('show me …') and save html/md/json artifacts.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_access_context","description":"What the current agent/session can access (capability mirror, not permissions).","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_audit","description":"Recent audit entries: what Cirdan observed, generated, executed, verified.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_enrichment_targets","description":"What the deterministic scanners left unconnected: docs to read, isolated nodes, unlinked IaC, uncertain claims. Contribute findings via upsert_edge.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_logs","description":"Tail logs for a component through the owning live adapter. `node_id` is an alias for `node_ref`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_neighbors","description":"Neighborhood subgraph around a node. `node_id` is an alias for `node_ref`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_node","description":"Fetch one node (by id or fuzzy name) with evidence, attributes, and edges. `node_id` is an alias for `node_ref`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_recent_errors","description":"Recent error/warning events, clustered by message template.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_state","description":"Live state of a component through the owning adapter. `node_id` is an alias for `node_ref`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_available_actions","description":"Actions currently possible against a component with this session's access. `node_id` is an alias for `node_ref`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_dependencies","description":"What a component depends on (transitive). `node_id` is an alias for `node_ref`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_dependents","description":"What depends on a component (transitive blast radius). `node_id` is an alias for `node_ref`.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_incidents","description":"Open (and optionally resolved) incidents. Runs a detection pass by default.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_public_entrypoints","description":"Everything reachable from outside, with the reasons.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_runtime_workloads","description":"Current workloads (services, containers, pods, units) with live state.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_services","description":"All logical services with state and origin.","write_action":false,"price_micros":0,"input_schema":null},{"name":"map_infrastructure","description":"Run full discovery (static + live) and regenerate all cirdan-out artifacts.","write_action":true,"price_micros":0,"input_schema":null},{"name":"query_infra_graph","description":"Ask the graph a question, e.g. 'what depends on postgres?' or 'what broke?'.","write_action":false,"price_micros":0,"input_schema":null},{"name":"shortest_path","description":"Shortest path between two components.","write_action":false,"price_micros":0,"input_schema":null},{"name":"upsert_edge","description":"Contribute a relationship between existing nodes (ids or names). Evidence required.","write_action":false,"price_micros":0,"input_schema":null},{"name":"upsert_node","description":"Contribute a node the scanners missed. Evidence quotes required; recorded as INFERRED.","write_action":false,"price_micros":0,"input_schema":null},{"name":"verify_action","description":"Verify the outcome of a previously executed action (act-… record id).","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":72,"grade":"B","scanned_at":"2026-09-26T21:23:50.351Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T21:23:50.321Z","components":{"code":{"score":15,"max":25,"notes":["3 source files scanned","86 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":12,"max":15,"notes":["last push 66 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"install.script","severity":"medium","component":"code","title":"npm install lifecycle script present"},{"id":"install.script","severity":"medium","component":"code","title":"npm install lifecycle script present","evidence":"package.json: … \"README.md\" ], \"scripts\": { \"postinstall\": \"node install-check.js || true\" }, …"}],"inputs":{"packages":[{"registryType":"npm","identifier":"@cirdanops/cli","version":"0.9.0","found":true,"license":"Apache-2.0","hasInstallScripts":true,"dependencyCount":0,"publishedAt":"2026-06-16T08:44:26.398Z","repositoryUrl":"git+https://github.com/adanb13/cirdan.git","weeklyDownloads":49},{"registryType":"pypi","identifier":"cirdanops","version":"0.9.0","found":true,"weeklyDownloads":33,"dependencyCount":23,"publishedAt":"2026-06-16T08:42:00.351966Z","repositoryUrl":"https://github.com/adanb13/cirdan"}],"repo":{"found":true,"owner":"adanb13","repo":"cirdan","archived":false,"pushedAt":"2026-07-23T02:13:54Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/83403825?v=4","ownerCreatedAt":"2021-04-29T11:16:43Z","license":"Apache-2.0"},"icon":{"url":null,"source":"none"},"presence":{"stars":0,"forks":0,"downloadsWeek":82,"license":"Apache-2.0","lastPushAt":"2026-07-23T02:13:54.000Z","score":23}}}},"grade_history":[],"reviews":[]}