Watches, write

Add watch

Start watching a topic, the mentions of a name, or an account. Nothing is read here: the watch is polled at the project's own pace from then on, and every post it surfaces is charged at that platform's blip rate. The result carries the estimate. Send dry_run to read that estimate without saving anything.

writespends

MCP

Tool nameadd_watch
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "add_watch",
    "arguments": {
      "project_id": "<uuid>",
      "kind": "<topic | mention | account>",
      "query": []
    }
  }
}

Input

project_idrequireduuid
kindrequiredtopic | mention | account

topic: one phrase, every English post that says it. mention: the names people use for you. account: handles, every original post they write.

queryrequiredarray of string

The terms, exactly as the dialog takes them: one phrase for a topic, the names people use for you on a mention watch, handles without the @ on an account watch. A topic holds one term; several terms make several topic watches.

platformsarray of x | hn | youtube | bluesky | reddit

Where the watch runs, one or more of x, hn, youtube, bluesky, reddit. Each is charged at its own blip rate; Reddit is stored and never polled.

labelstring

What to call it. Empty names each watch by its own term.

group_iduuid | null

The folder it joins. Null or absent leaves it ungrouped.

intent_notesarray of { intent, note } | null

How to reply per intent, up to 12 rows of { intent, note }. Ignored on an account watch, which keeps none.

posts_per_dayinteger | null

X account watches only: posts a day Sonket may be billed for from them. Null is 5, at most 50.

dry_runboolean

True answers the same estimate and the watch as it would be saved, and writes nothing, so the price can be said before anything starts costing. Every refusal is the same, so a watch already taken comes back refused here too. A new group is never made on a dry run.

Returns

The watches as saved — several when a topic run carries several terms — an estimate: blips a month, the dollars they work out to, and the sentence that says it is an estimate and not a bill, and dry_run, true when nothing was written. A dry run's watches carry no id and no blips.