The Tab (scvd-tab) MCP server
Every tool a builder signs up for, on one tab: trials, burn, price drift. Local JSONL, zero deps.
3 stars68 downloads/wk
Reviews
Write oneNobody has reviewed The Tab (scvd-tab) yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
The Tab (scvd-tab) tools (18)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
acknowledge_pagesYou put these pages to the builder in their own words. Marks them spent so they stop coming back. Only acknowledge what you actually said — the tab counts pages that aged out unspoken, and a false acknowledgment is the one lie that makes the count useless.
burn_rollupThe monthly number and what it is made of: category subtotals, annualized, the idle share, the trajectory since a past date with the signups that account for the change, an anonymized shareable badge, and the coverage block saying what the figure cannot see. Facts and arithmetic; no advice.
capture_tool_eventQUICK CAPTURE (/log): dump a fragment about a tool the builder just signed up for and it lands, always. Never refuses — missing fields come back named so the rounds can ask later. Use this at the moment of signup; use log_tool_event when you have the full picture.
check_before_signupCall BEFORE the builder signs up for something: their history with the tool, what currently covers the category, facts only.
confirm_entryA human looked at a swept entry and says it is real (or marks it private). Confirmation is the load-bearing layer: machine-found claims never reach the pooled corpus without it.
contribute_anonymized_deltaDeliberately send one anonymized delta (opened or outcome) to the scvd aggregation endpoint. Requires consent on record; refuses fields the privacy sentence forbids.
export_tabFull export of the builder's tab, jsonl or csv. Any time, no charge, no lock-in.
log_tool_eventRecord a tool lifecycle event on the builder's tab: trial_started, paid_started, adopted, canceled, replaced, renewed, or price_changed. Validated; rejected writes explain themselves. Use retroactive:true with occurred_at for backfill.
needs_attentionWhat the rounds should ask about, dearest first and capped: unconfirmed sweep findings, entries captured with gaps, tools gone quiet, trials past their end. Ask two, not two hundred.
reconcile_card_statementGROUND TRUTH, monthly, by hand: the builder exports the bank's CSV, you parse every debit row, and this compares statement against tab in BOTH directions — charges the tab cannot place, tools the statement never charged, actuals against metered estimates, and charges on tools the tab holds as canceled. Writes nothing to the tab; every finding is a question for the builder, not an entry. Pass the r
record_coverageThe sweep reports what it saw: addresses read, the window, and money-shaped mail it could NOT attribute to any tool. THE COUNTING OBLIGATION: every message you read belongs in exactly one bucket — matched, unmatched_transactional, or not_transactional — and `scanned` must be the total you actually looked at, BEFORE any filtering. Mail you dropped as unparseable still counts. A sweep that filters b
set_consentTurn contribution on or off. Recorded as a consent_changed event in the tab itself — auditable like everything else. Off also disables pooled reads.
stack_auditThe burn report: monthly total, active paid tools, trials converting soon, the unused list (commitment silence, honestly labeled), category overlaps, price drift.
sweep_finishClose a sweep and file its coverage record, DERIVED from the tally: scanned, matched, the unmatched list, attributed amount, window and addresses all come off the ledger of what you actually reported, so the books balance by construction and nobody restates a number from memory. A finished sweep refuses further batches — a new window is a new sweep_id.
sweep_tallyTHE SWEEP'S RUNNING COUNT — use this while executing SWEEP.md instead of counting in your head. Report every message you read, in batches, each with its message_id and exactly one bucket: matched (include the entry; it is written to the tab for you, deduped on the message id), unmatched_transactional (include amount, currency and sender — a bare amount is refused, never stamped USD), or not_transa
trials_converting_soonThe headline tool: trials whose conversion lands inside the horizon (default 7 days). Cheap; safe to call daily; surface the answer unprompted.
whats_currentThe builder's own history in a category. Pooled retention is layer 3 and reports itself unavailable until it exists.
whats_dueTHE PAGER. Runs the clock and returns what should be said to the builder RIGHT NOW, worth most first: trials converting, trials past their end, unconfirmed sweep findings, quiet tools, gaps. Cheap. Call it on every round and at the start of a session. Say the lines, then acknowledge_pages.
Public scan report
scanner v0.1.5 · 2026-09-19 · same rubric, same numbers if you re-run it
- Code scan9 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 0 days ago15/15
- Maintainer identitynamespace and repository owner differ; GitHub account older than a year; website matches verified namespace7/10
Install directly
Runs npx -y scvd-tab on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add tab -- npx -y scvd-tab
The Tab (scvd-tab): common questions
- Is The Tab (scvd-tab) MCP server safe?
- Yes, by our scan: it is graded A (91/100). Read the The Tab (scvd-tab) safety report
- How do I install The Tab (scvd-tab)?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does The Tab (scvd-tab) need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is The Tab (scvd-tab) maintained?
- The last commit was in the last day (2026-09-19). The latest release is v0.11.1.