{"name":"io.github.sinhaKAN-ra/anumana","slug":"sinhakan-ra-anumana","title":null,"description":"Predict query cost, explain the plan, and rewrite it before you run it — 12 DB engines.","url":"https://mcp.market/server/sinhakan-ra-anumana","rating":null,"grade":"B","score":83,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":26,"stars":0,"forks":0,"downloads_week":49,"last_push_at":"2026-10-07T06:13:13.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/sinhaKAN-ra/anumana","website":"https://github.com/sinhaKAN-ra/anumana","version":"0.2.1","remotes":[],"packages":[{"registryType":"pypi","identifier":"anumana-mcp","version":"0.2.1","transport":{"type":"stdio"},"environmentVariables":[{"description":"Read-only connection string for the primary target database (e.g. postgresql://readonly@host:5432/db). Optional if ANUMANA_TARGETS is used.","isSecret":true,"name":"ANUMANA_DSN"},{"description":"JSON array of named targets for a multi-database setup, each with name, engine, and connection string.","isSecret":true,"name":"ANUMANA_TARGETS"},{"description":"JSON array of operator enforcement policies (block/warn/allow rules by risk tier or flag). Optional; open by default.","name":"ANUMANA_POLICIES"}]}],"tools":[{"name":"describe_schema_tool","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"explain_query_working","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_policies","description":"List the operator's standing enforcement policies — the rules that can BLOCK or WARN on a query regardless of what you intend. Each has a name, scope (which target/engine), condition (risk tier and/or flag), and action (block/warn/allow). preflight_query and suggest_query already apply these and attach the verdict; call this to explain to a user WHY a query was blocked. No policies configured mean","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_targets","description":"List the databases Anumana is configured to analyse — each with its name, engine, and whether it's diagnosable. Call this FIRST in a multi-DB setup to see which target holds the data the user asked for, then pass target=<name> to the other tools. In a single-DB setup you can omit target and the one database is used. Never returns connection strings or secrets.","write_action":false,"price_micros":0,"input_schema":null},{"name":"preflight_query","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"preflight_schema_only","description":"Analyse a query against pasted CREATE TABLE DDL with NO database connection — the zero-trust, offline front door. Call when the user gave you their schema (DDL) but not DB credentials. Catches SELECT *, missing LIMIT, un-indexed filter columns, LIKE '%...', functions on filtered columns. HEURISTIC only (no live counts) and says so. No target needed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"preflight_vector_search","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"rewrite_query","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"suggest_query","description":"","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":83,"grade":"B","scanned_at":"2026-10-14T05:28:16.840Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-14T05:28:16.774Z","components":{"code":{"score":25,"max":25,"notes":["25 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":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 7 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"pypi","identifier":"anumana-mcp","version":"0.2.1","found":true,"weeklyDownloads":49,"license":"MIT","dependencyCount":7,"publishedAt":"2026-10-05T11:51:13.012285Z","repositoryUrl":"https://github.com/sinhaKAN-ra/anumana"}],"repo":{"found":true,"owner":"sinhaKAN-ra","repo":"anumana","archived":false,"pushedAt":"2026-10-07T06:13:13Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/97875751?v=4","ownerCreatedAt":"2022-01-17T07:58:18Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/97875751?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":0,"downloadsWeek":49,"license":"MIT","lastPushAt":"2026-10-07T06:13:13.000Z","score":26}}}},"grade_history":[],"reviews":[]}