silvercontext · The product

Seven components.
One workspace.

This is the honest tour, no roadmap and no marketing. Just what runs today, how the pieces fit, and why it's built this way.

01 · Spatial workspace

The canvas.

Accounts are objects on a plane. They have an x-y position, cluster by signal similarity, and sit on a time axis. You zoom, pan, and annotate. The workspace renders in ASCII, so any model you connect reads it exactly as you do. There's no DOM parsing, no screenshot OCR, and no summarization step in between.

Format: ASCII · Time depth: 90d rolling · Model legibility: native

northeast           ICP fit × ACV · t: now
            ·─── low ──── mid ──── high ───·
  ACV  hi  |  ░ ░ ░ ░   ░ ░ ·   ● Vertex
  ACV  mid  |  ░ ░ ░ ░  ● Apex    ● Cedar
  ACV  lo  |  ░ ░ ░ ░  ● Calloway  ● Meridian
            · ░ fog: 0 contact   ● touched ·

t-axis:  Apex [t-30: mid/lo] ──── Apex [now: mid/mid +14]
         90d rolling · annotate · pan · zoom
02 · Account scoring

The change is the signal.

Scoring reads public hiring, funding, product, and exec movement signals. Each account carries a current score and a 30-day delta. The delta matters more than the snapshot. A 61 trending +18 is the interesting object, not a static 90.

Signal sources: 9 · Refresh: 6h · Diff window: 7d / 30d / 90d

score    Δ30d   account
──────── ───── ──────────────────
91 ███   +22   Vertex Systems
82 ██▓   +14   Apex Logistics
61 ██    -03   Meridian Health
34 █     ±00   Calloway Partners
03 · Enrichment

Public signal, attached to the object.

Enrichment pulls what is publicly available and attaches it to the account object: org structure, headcount by function, job postings, product shipping cadence, funding, press. It updates on a 6-hour cycle. Every field has a source stamp and a last-seen timestamp. Nothing is inferred that cannot be cited.

Attached fields: 34 · Source-stamped: 100% · Inferred: 0%

Vertex Systems
  headcount        142          src: linkedin   3h
  eng %            38%          src: linkedin   3h
  RevOps hires 30d +2           src: careers    1h
  last raise       Series B $28M src: press     14d
  product ship     weekly        src: changelog 6h
04 · Sequence composition

Outbound, attributed per touch.

Build a sequence from a scored account list. Each touch drafts against the specific signals attached to the account. Replies trace back to which touch, which angle, which account. Attribution is per-object, not aggregated into a cohort.

Touches per sequence: 3–7 · Reply attribution: per-touch

Apex Logistics: sequence/ae-motion
  t1 email   signal: +2 RevOps hires      draft ▸
  t2 email   angle: tooling gap in QBR    draft ▸
  t3 li      contact: VP Revenue          draft ▸
  ─────────────────────────────────────────────
  reply → t2 · 4d · replied to RevOps line
05 · Call prep

Read what's there, and nothing more.

Before a meeting, call prep reads the public record and your own notes on the account. It returns the signals, recent motion, and a suggested angle. Where the signal is thin, it tells you. If there's nothing in the public record, the output stays empty instead of inventing something.

Inputs: public record + account notes · Empty-input → empty-output

Vertex Systems: VP Revenue, 14:00 Thu
  last contact    11d ago (email, replied)
  last movement   +2 RevOps hires, 14d
  active signal   expansion motion confirmed
  angle           budget cycle Q2, tooling gap
  open questions  current stack · buying process
06 · MCP server

Twelve tools. The model operates the workspace.

The Model Context Protocol server exposes twelve tools against the workspace: query accounts by signal, diff a territory over time, draft call prep from public data, compose a sequence against a scored list, annotate an account, and so on. Any MCP-compatible model can connect. It isn't reading a summary of your CRM; it's operating the workspace directly.

Tools: 12 · Transport: MCP stdio + SSE · Auth: scoped tokens

tools/list →
  query_accounts           territory_diff
  generate_call_prep       compose_sequence
  annotate_account         score_snapshot
  get_signal_sources       list_territories
  attribute_reply          archive_account
  draft_followup           set_focus
07 · Topology + diff views

A territory as a field, not a list.

The topology view renders a territory as a field. Accounts cluster by signal similarity, lines indicate relationship, colour indicates motion. The diff view overlays the state from N days ago against today. You see what moved, not just what exists.

Views: topology · diff · focus · Defaults: diff 7d / 30d

topology: northeast        diff: 30d
──────────────────────────────────────
     Apex●─────────●Vertex   ↑+22
       ╲  ╲      ╱
        ●  ●Meridian          ↓-03
      Cedar    ╲
                ●Calloway     ±00
──────────────────────────────────────
moved:  3 of 5   stable: 1   cooled: 1
AI-legible by construction

The model sees what you see.

Most tools bolt AI on afterward. A chat panel floats over a CRM that was designed before language models existed, and the model only ever reads a DOM tree or a summarised export. It never sees your workspace, only a description of it.

silvercontext flips that. The workspace is text, so the same ASCII structure you navigate is exactly what the model gets when you ask it something. There's no translation step and nothing lost to summarisation. The architecture is the AI interface rather than a layer on top of it.

The MCP server exposes twelve tools against that structure: query accounts by signal, diff a territory over time, draft call prep from public data, compose a sequence against a scored list, annotate an account. Again, it isn't reading your CRM, it's operating your workspace.

What's next
Multiplayer

Operators working the same territory see each other's motion live. Handoff without losing context.

Silver modules

The building blocks extracted as a library. Spatial workspace + AI legibility as primitives for any serious sales tool.