Search a public page, verify a claim against that page, and keep the receipt.
The same call is a CLI, an SDK, a local MCP server, and a hosted API. A failing verify stays a failed receipt. It does not pretend the run succeeded.
A hosted credit moves only when a source loads. Checking more claims on that same page does not add a credit. A timeout or an HTTP error costs nothing. The local CLI does not use credits.
npm install -g @talocode/loopThe command is talocode-loop. From this repo, node bin/loop.mjs does the same thing.
talocode-loop run \
--query="Talocode official mint" \
--url=https://talocode.site/llms.txt \
--claim=6ptxwABxQz8zMhwhiPeVgRgWjGMdVcEBFBv8v8C3oryResearch brief. Fetch every source you name. recommendation is do_not_ship when any source fails, and review when every source responds. Page text is not printed. This is not a decision to ship.
talocode-loop brief \
--question="Is this source enough?" \
--url=https://talocode.site/llms.txtAudit checks up to 8 claims against one page. Repeat --claim for each one. Locally this spends nothing.
talocode-loop audit \
--query="Talocode token facts" \
--url=https://talocode.site/llms.txt \
--claim=6ptxwABxQz8zMhwhiPeVgRgWjGMdVcEBFBv8v8C3ory \
--claim="500,000 TCODE fixed" \
--claim="unlimited supply"Local server, no credits:
talocode-loop serve --port=8787GET /v1/loop/health, POST /v1/loop/run, and POST /v1/loop/audit.
import { TalocodeLoop } from "@talocode/loop";
const loop = new TalocodeLoop();
await loop.run({
query: "Talocode official mint",
url: "https://talocode.site/llms.txt",
claim: "6ptxwABxQz8zMhwhiPeVgRgWjGMdVcEBFBv8v8C3ory",
});
await loop.brief({
question: "Is this source enough?",
urls: ["https://talocode.site/llms.txt"],
});
await loop.audit({
query: "Talocode token facts",
url: "https://talocode.site/llms.txt",
claims: [
"6ptxwABxQz8zMhwhiPeVgRgWjGMdVcEBFBv8v8C3ory",
"500,000 TCODE fixed",
"unlimited supply",
],
});Leave the base URL empty to run on this machine. Set it to spend cloud credits:
const hosted = new TalocodeLoop({
baseUrl: process.env.TALOCODE_LOOP_URL || "https://api.talocode.site",
apiKey: process.env.TALOCODE_API_KEY,
});talocode-loop mcpTools: loop_run, loop_brief, and loop_audit.
The hosted MCP is https://api.talocode.site/mcp with the same API key. Hosted tools:
| Tool | Credits |
|---|---|
loop_health |
free |
loop_pricing |
free |
loop_capabilities |
free |
loop_run |
1 if the page loads |
loop_brief |
1 per page that loads, maximum 5 |
loop_audit |
1 if the page loads, up to 8 claims |
Base URL: https://api.talocode.site
| Method | Path | Auth | Credits |
|---|---|---|---|
| GET | /v1/loop/health |
no | 0 |
| GET | /v1/loop/pricing |
no | 0 |
| GET | /v1/loop/capabilities |
no | 0 |
| POST | /v1/loop/run |
Bearer key | 1 if the page loads |
| POST | /v1/loop/brief |
Bearer key | 1 per page that loads |
| POST | /v1/loop/audit |
Bearer key | 1 if the page loads, up to 8 claims |
curl -s https://api.talocode.site/v1/loop/run \
-H "authorization: Bearer $TALOCODE_API_KEY" \
-H "content-type: application/json" \
-d '{"query":"Talocode official mint","url":"https://talocode.site/llms.txt","claim":"6ptxwABxQz8zMhwhiPeVgRgWjGMdVcEBFBv8v8C3ory"}'The hosted route accepts public https URLs only. It refuses localhost, private addresses, and link-local addresses. The receipt returns the status, up to eight matching lines, whether each claim was present, and the line that contained it. It does not return the page. Eight claims on one page are still one credit.
usage.credits is 0 when nothing loaded.
It does not browse a logged-in site. review means every named source responded. It does not mean ship.