{"name":"io.github.akalsoftware/supaforge","slug":"akalsoftware-supaforge","title":"SupaForge","description":"Find and fix drift between Supabase environments: schema, RLS, roles, auth, storage and more.","url":"https://mcp.market/server/akalsoftware-supaforge","rating":null,"grade":"A","score":94,"certified":false,"status":"active","category":"data","tags":["data","security"],"presence":{"score":34,"stars":1,"forks":0,"downloads_week":524,"last_push_at":"2026-10-13T00:53:34.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/akalsoftware/supaforge","website":"https://supaforge.dev","version":"0.0.33","remotes":[],"packages":[{"registryType":"npm","registryBaseUrl":"https://registry.npmjs.org","identifier":"@akal/supaforge","version":"0.0.33","runtimeHint":"npx","transport":{"type":"stdio"},"packageArguments":[{"value":"mcp","type":"positional"},{"description":"Project directory holding supaforge.config.json. Defaults to the directory the server starts in.","format":"filepath","type":"named","name":"--project"}]}],"tools":[{"name":"apply_fixes","description":"Apply SQL fixes to resolve drift detected by scan_drift. Previews by default \\u2014 pass dryRun=false to actually write to the target database.","write_action":false,"price_micros":0,"input_schema":null},{"name":"create_migration","description":"Capture a snapshot and generate a migration file containing the diff against the previous snapshot. Migration files are stored under .supaforge/migrations/.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_check_result","description":"Retrieve the result for a specific check from the most recent scan_drift call. Returns issues, status, and duration for the named check.","write_action":false,"price_micros":0,"input_schema":null},{"name":"scan_drift","description":"Scan for drift between Supabase environments and return a structured report. Results include per-check status, issues with SQL fixes, and a health score.","write_action":false,"price_micros":0,"input_schema":null},{"name":"take_snapshot","description":"Capture a point-in-time snapshot of a Supabase environment. Snapshots are stored under .supaforge/snapshots/ and can be used to restore state.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":94,"grade":"A","scanned_at":"2026-10-13T01:06:41.845Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-13T01:06:41.745Z","components":{"code":{"score":25,"max":25,"notes":["58 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":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":9,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@akal/supaforge","version":"0.0.33","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":8,"publishedAt":"2026-10-13T00:25:57.030Z","repositoryUrl":"git+https://github.com/akalsoftware/supaforge.git","weeklyDownloads":524}],"repo":{"found":true,"owner":"akalsoftware","repo":"supaforge","archived":false,"pushedAt":"2026-10-13T00:53:34Z","stars":1,"forks":0,"openIssues":1,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/25139450?v=4","ownerCreatedAt":"2017-01-15T21:35:24Z","license":"MIT"},"icon":{"url":null,"source":"none"},"presence":{"stars":1,"forks":0,"downloadsWeek":524,"license":"MIT","lastPushAt":"2026-10-13T00:53:34.000Z","score":34}}}},"grade_history":[],"reviews":[]}