{"name":"io.github.nickjlamb/groundwork","slug":"nickjlamb-groundwork","title":null,"description":"Deployment-readiness checks for document-QA and extraction AI: grounding, extraction, CI gate.","url":"https://mcp.market/server/nickjlamb-groundwork","rating":null,"grade":"A","score":85,"certified":false,"status":"active","category":"devtools","tags":["devtools"],"presence":{"score":24,"stars":1,"forks":0,"downloads_week":14,"last_push_at":"2026-09-28T11:42:51.000Z","license":"NOASSERTION"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/nickjlamb/groundwork","website":null,"version":"0.4.1","remotes":[],"packages":[{"registryType":"npm","identifier":"@pharmatools/groundwork","version":"0.4.1","transport":{"type":"stdio"},"packageArguments":[{"value":"mcp","type":"positional"}]}],"tools":[{"name":"check_answer_grounding","description":"Deterministically check a single answer against the context it should be grounded in: required facts (anchors) present, every number traceable to the context, abstention when the question is unanswerable. Same logic as the CI gate — no model, no network. Returns pass/fail with named issues.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_extraction","description":"Deterministically check a structured extraction against its hand-labelled gold record: schema validity (nullable fields are the abstention contract), field accuracy with per-field normalisers (dates → ISO, money → minor units) and aliases, and fabrication — a non-null value in a field whose gold is null (a guessed date of birth the document never stated). Same logic as the CI gate — no model, no n","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_readiness","description":"Run `groundwork check` in a repo that has a scaffolded harness: redaction self-test, then the archetype's eval (grounding for document-qa, extraction for extraction) against the repo's own gold set. Returns the exit code, the main scorer's metrics, and any named failures — exactly what CI would report.","write_action":true,"price_micros":0,"input_schema":null},{"name":"cost_summary","description":"Run `groundwork cost` in a repo: measured token usage from eval runs, with savings recommendations in leverage order (prompt caching, batching, context trimming, model routing last).","write_action":true,"price_micros":0,"input_schema":null},{"name":"scaffold_harness","description":"Run `groundwork init [archetype]` in a repo: writes the adapter boundary, redaction config, gold-set templates, GitHub Action, and playbook for a deployment pattern — document-qa (documents → grounded answers) or extraction (documents → structured fields). Never overwrites existing files. After scaffolding, the human wires groundwork/adapter.mjs and replaces the example gold cases with real ones.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":85,"grade":"A","scanned_at":"2026-09-28T14:25:26.651Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-09-28T14:25:26.644Z","components":{"code":{"score":20,"max":25,"notes":["32 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":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/commands/check.js: …ut, no residue; // 2. the archetype's eval (OpenGATE) through the repo's adapter and…"}],"inputs":{"packages":[{"registryType":"npm","identifier":"@pharmatools/groundwork","version":"0.4.1","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":4,"publishedAt":"2026-09-28T11:44:33.215Z","repositoryUrl":"git+https://github.com/nickjlamb/groundwork.git","weeklyDownloads":14}],"repo":{"found":true,"owner":"nickjlamb","repo":"groundwork","archived":false,"pushedAt":"2026-09-28T11:42:51Z","stars":1,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/129560626?v=4","ownerCreatedAt":"2023-03-31T22:59:34Z","license":"NOASSERTION"},"icon":{"url":"https://avatars.githubusercontent.com/u/129560626?v=4&s=128","source":"github"},"presence":{"stars":1,"forks":0,"downloadsWeek":14,"license":"NOASSERTION","lastPushAt":"2026-09-28T11:42:51.000Z","score":24}}}},"grade_history":[],"reviews":[]}