Service twin · API + UI
Notion
Test knowledge agents that search, update, and organize team documentation.
API + UIspec-groundedREST · MCP · CLI
Terminal
$ uv tool install blobfish-cli
$ blobfish twin login
$ blobfish twin-runs create --twins notion --ttl 60 --waitWhat’s inside
A deterministic, seeded, resettable replica: every operation below executes real state transitions against the twin’s own SQLite state — reads are hash-invariant, writes produce inspectable diffs, and reset restores the seed baseline.
Seeded entities
| Entity | Table | Fields | About |
|---|---|---|---|
| block | blocks | 4 | Inferred from operation parameters (spec has no named schema). |
| children | childrens | 4 | Inferred from operation parameters (spec has no named schema). |
| comment | comments | 4 | Inferred from operation parameters (spec has no named schema). |
| data_source | data_sources | 6 | Inferred from operation parameters (spec has no named schema). |
| database | databases | 3 | Inferred from operation parameters (spec has no named schema). |
| markdown | markdowns | 7 | Inferred from operation parameters (spec has no named schema). |
| me | mes | 2 | Inferred from operation parameters (spec has no named schema). |
| move | moves | 3 | Inferred from operation parameters (spec has no named schema). |
| page | pages | 9 | Inferred from operation parameters (spec has no named schema). |
| property | properties | 3 | Inferred from operation parameters (spec has no named schema). |
| query | queries | 8 | Inferred from operation parameters (spec has no named schema). |
| search | searches | 7 | Inferred from operation parameters (spec has no named schema). |
| template | templates | 2 | Inferred from operation parameters (spec has no named schema). |
| user | users | 2 | Inferred from operation parameters (spec has no named schema). |
Three surfaces, one state
Mount Notion in a twin environment and the same seeded state serves vendor-shaped REST operations, an MCP endpoint for tool calling, and a generated bf-twin CLI — with copy-on-write sessions per rollout and a one-call reset to the seed baseline. Prefer raw HTTP? The same create works with curl:
API
$ curl -sS -X POST https://blobfish.ai/api/v1/twin/environments \
-H "X-API-Key: $BLOBFISH_API_KEY" -H "Content-Type: application/json" \
-d '{"services":["notion"],"ttl_minutes":60}'Known limitations
Spec-grounded surface with synthetic seeded values; operations outside the spec are not mounted.