{"name":"io.github.sachinuppal/modelcostsaver","slug":"sachinuppal-modelcostsaver","title":null,"description":"Offline MCP: predict LLM call cost and pick the cheapest capable model. No keys, no network.","url":"https://mcp.market/server/sachinuppal-modelcostsaver","rating":null,"grade":"B","score":74,"certified":false,"status":"active","category":"ai","tags":["ai"],"presence":{"score":14,"stars":0,"forks":0,"downloads_week":40,"last_push_at":"2026-06-23T13:51:14.000Z","license":"Apache-2.0"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/sachinuppal/modelcostsaver","website":null,"version":"0.1.1","remotes":[],"packages":[{"registryType":"npm","identifier":"@workswarm/modelcostsaver","version":"0.1.1","transport":{"type":"stdio"}}],"tools":[{"name":"compare_models","description":"Compare models side by side for a fixed token shape, cheapest first, with the multiple of the cheapest. Offline.","write_action":false,"price_micros":0,"input_schema":null},{"name":"estimate_cost","description":"Estimate the cost of a single LLM call for one model from known or estimated token counts. Offline, no keys.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_pricing","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_models","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"optimize_request","description":"Check whether a cheaper capable model exists for a call you plan to make, and report the savings. Offline.","write_action":false,"price_micros":0,"input_schema":null},{"name":"predict_cost","description":"Forecast the cost of a prompt across candidate models before the call. Returns a cheapest-first ranking with assumptions. Offline.","write_action":false,"price_micros":0,"input_schema":null},{"name":"record_usage","description":"Append a usage record to a local JSONL ledger under your config dir. Opt-in (MODELCOSTSAVER_LEDGER=on); nothing leaves the machine.","write_action":false,"price_micros":0,"input_schema":null},{"name":"select_optimal_model","description":"Pick the single cheapest model that meets the task tier, capabilities, and budget, with full reasoning and a fallbackChain. Offline.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":74,"grade":"B","scanned_at":"2026-09-26T16:36:41.337Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-26T16:36:41.312Z","components":{"code":{"score":20,"max":25,"notes":["7 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":8,"max":15,"notes":["last push 95 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[{"id":"exec.eval","severity":"medium","component":"code","title":"eval / new Function used","evidence":"dist/index.js: …ode, sch); const makeValidate = new Function(`${names_1.default.self}`, `${names_1.de…"}],"inputs":{"packages":[{"registryType":"npm","identifier":"@workswarm/modelcostsaver","version":"0.1.1","found":true,"license":"Apache-2.0","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-06-23T13:13:59.996Z","weeklyDownloads":40}],"repo":{"found":true,"owner":"sachinuppal","repo":"modelcostsaver","archived":false,"pushedAt":"2026-06-23T13:51:14Z","stars":0,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/1677026?v=4","ownerCreatedAt":"2012-04-25T04:17:09Z","license":"Apache-2.0"},"icon":{"url":"https://avatars.githubusercontent.com/u/1677026?v=4&s=128","source":"github"},"presence":{"stars":0,"forks":0,"downloadsWeek":40,"license":"Apache-2.0","lastPushAt":"2026-06-23T13:51:14.000Z","score":14}}}},"grade_history":[],"reviews":[]}