FOR AGENTS

CONNECT YOUR AGENT

Sixty seconds and you are on the wire: paste one block into Claude, ask what happened today, and the news answers as tools. No signup, no API key. Prefer your own code? The rest of this page is the long way in.

WHY AGENTS USE IT

Stop burning tokens reading the news.

Right now your agent reads the news like a person. It opens a dozen articles, compares them, and tries to figure out what actually happened. That's thousands of tokens per story.

NewsLiar does that reading for you. One call returns the story already put together: what happened, how fast it's spreading, how many outlets are confirming it, and how the coverage leans left, center, or right. We check the reasoning for you, so your agent can act on the answer instead of paying to find it.

Quick start
1PASTE
2RESTART
3ASK
{
  "mcpServers": {
    "newsliar": { "url": "https://mcp.newsliar.com/api/mcp" }
  }
}

One block. Paste it into your MCP client, restart, and ask what happened today. Everything below is the long version.

01PASTE INTO CLAUDESixty seconds, no signup, no key.02GET YOUR KEYOne key per account, minted on the spot.03INSTALLThe skill bundle, the single file CLI, or nothing at all.04MAKE YOUR FIRST CALLSPoll the wire, advance the cursor, render a briefing.05INTEGRATEWire NewsLiar into the agent you already use.
01 // PASTE THIS INTO CLAUDE

The fastest way onto the wire. Copy the block below into your MCP client config (Claude, Cursor, or any MCP client), restart it, and ask “what happened today.” Sixty seconds, no signup, no API key. The day's news becomes tools your agent can call, and the server handles the wire for you.

{
  "mcpServers": {
    "newsliar": { "url": "https://mcp.newsliar.com/api/mcp" }
  }
}

Six tools: wire_top today's top stories, check first, wire_search keyword search, wire_timeline story evolution, wire_ask ask in plain English, wire_health status, wire_manual full capability docs. Stdio-only client? Use npx -y mcp-remote https://mcp.newsliar.com/api/mcp.

Writing your own code instead of driving a client? Keep scrolling, section 02 mints you a key.

02 // Get your key

CHECKING YOUR ACCOUNT...

NO LOGIN? USE THE PILOT MINT

For agents that cannot sign in. One curl call trades the pilot token for your own personal wire key. 200 requests per day per key. This is a temporary bootstrap and will be retired once account key issuance is the only path.

curl -X POST https://wire.newsliar.com/v2/keys/pilot-mint \
  -H "Content-Type: application/json" \
  -d '{"pilot_token": "YOUR_PILOT_TOKEN", "label": "my-agent-name"}'

The response contains your key. Save it like any other API key and never paste it into chat or public code.

03 // Install: the portable skill

A drop in skill for any skill capable agent: markdown instructions plus plain Python, no platform lock in. It runs the poll loop, persists the cursor, backs off on rate limits, and renders briefings matched to your interests. The bundle ships with your key.

The bundle has five files:

Once installed, the loop is two commands:

python3 wire_client.py --once --limit 100   # poll the wire
python3 briefing.py                        # render your briefing

The client advances the cursor only after a batch is processed, treats resync as a fresh snapshot, and never re fetches just to check. Read SKILL.md for the full workflow.

04 // Install: the CLI

Prefer a terminal? One file, standard library only, zero dependencies. Download it and run it anywhere Python lives.

curl -sSL https://www.newsliar.com/liar.py -o liar
chmod +x liar
export LIAR_KEY=your_key
./liar status

The CLI is called liar. A copy from before the rename still runs, but it prints a rename notice on every run. Switch when you can.

Four subcommands:

Auth resolves from the LIAR_KEY env var, the --api-key flag, or a key saved in ~/.liar_key. NEWSLIAR_KEY and ~/.newsliar_key work too, and key names from before the rename still work. The cursor file from before the rename still works and advances after every successful poll.

Running a Claude Code style harness? commands/newsliar.md in the skill bundle is a drop in /newsliar slash command. Install it and the CLI answers to /newsliar briefing like any other command.

05 // First calls: raw API quickstart

Prefer your own loop? One endpoint, one key, cursor semantics. Start at cursor 0. Export the key you minted in section 02 above, then every command below authenticates the same way. Or skip the terminal: every endpoint below is runnable in your browser in the API playground, no signup needed.

export NEWSLIAR_KEY="paste-your-key-here"
curl "https://wire.newsliar.com/v2/wire?cursor=0&limit=100" \
  -H "Authorization: Bearer $NEWSLIAR_KEY"

The rules of the road:

NEW AND LIVE: TIMELINES, SEARCH, ASK, WATCHLISTS

Story timelines. Every cluster has a full history: legs in chronological order plus an evolution summary with first seen and peak heat time.

curl "https://wire.newsliar.com/v2/wire/timeline?cluster_id=YOUR_CLUSTER_ID" \
  -H "Authorization: Bearer $NEWSLIAR_KEY"

Search. Full text search over headlines and entities, ranked by relevance blended with heat.

curl "https://wire.newsliar.com/v2/wire/search?q=semiconductors&limit=10&category=tech" \
  -H "Authorization: Bearer $NEWSLIAR_KEY"

Ask the wire. Natural language questions, parsed deterministically by the API with no LLM involved. Returns an extractive summary plus the matching clusters.

curl -X POST https://wire.newsliar.com/v2/wire/ask \
  -H "Authorization: Bearer $NEWSLIAR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"question": "what happened with the Fed today"}'

Watchlists. Track entities, then filter the wire to clusters that mention them, ranked by heat. Watchlist management needs the admin token; any key can filter with one.

curl "https://wire.newsliar.com/v2/wire?watchlist=1&limit=50" \
  -H "Authorization: Bearer $NEWSLIAR_KEY"

Webhooks. Velocity spike and new cluster alerts, delivered with HMAC SHA256 signatures. Available in the API now, admin token required to manage subscriptions.

06 // Machine manual

The full contract lives here. If anything on this page disagrees with the manual, the manual wins.

https://wire.newsliar.com/.well-known/newsliar.json

Skeptical about the numbers? Good. The methodology page documents every signal from the actual code, including the known limitations. Read it before you trust a score.

07 // Integrations

Already live inside an agent? Put NewsLiar where you already work. Each card is the shortest honest path for that platform, using the real extension mechanism it ships with. No invented plugins, no magic servers.

OPENCLAW
The self-hosted agent framework
Setup
  1. Get the bundle. Mint a pilot key with the command in section 02 above, no login needed, then the operator hands you the skill bundle.
  2. Drop it in your workspace skills. OpenClaw auto-discovers any SKILL.md under the workspace skills folder.
    mkdir -p ~/.openclaw/workspace/skills/newsliar
    # copy SKILL.md, wire_client.py, briefing.py, interests.yaml in
  3. Save your key to ~/.newsliar_key, or export NEWSLIAR_KEY in your environment.
  4. Restart the gateway so it picks up the new skill.
    openclaw gateway restart
  5. Ask it: “use the newsliar skill to brief me on tech news.”
Ideas
  • Morning heartbeat: schedule wire_client.py --once plus briefing.py and wake up to a digest in your inbox or chat.
  • Always-on radar: run ./liar watch and let breaking spikes flow straight into your notes.
  • Event-triggered research: when a cluster crosses your confidence threshold, pull the full articles and get a real summary.
CURSOR
The AI code editor
Setup
  1. Grab the single-file CLI. Stdlib only, zero dependencies.
    curl -sSL https://www.newsliar.com/liar.py -o liar
    chmod +x liar
    export LIAR_KEY=your_key_here
    ./liar status
  2. Teach Cursor's agent about the wire with a project rule at .cursor/rules/newsliar.mdc.
    ---
    description: NewsLiar wire access for this project's agent
    globs: []
    ---
    # NewsLiar
    
    This project can read the NewsLiar news wire: clustered,
    signal-scored stories for agents.
    
    - CLI: ./liar (single-file Python, stdlib only)
    - Auth: LIAR_KEY env var or ~/.liar_key
    - ./liar briefing polls the wire and renders a briefing
    - ./liar wire --since N --limit 100 polls without rendering
    - Never paste the key into code or chat output.
  3. In Cursor chat, just ask: “run ./liar briefing and give me the top tech stories.” The agent has a terminal, the rule tells it what the CLI does.
Ideas
  • Pre-standup briefing: ask for the overnight wire before your day starts.
  • Dependency radar: tune interests.yaml to your stack and get briefings that matter to your code.
  • Background watch: keep ./liar watch running in a terminal while you ship.
MUSE
Meta's personal AI agent
Setup
  1. Grab the skill bundle from section 03 above, then drop it into your Muse workspace skills folder.
  2. Get your key from the operator (manual issuance right now). It stays in secure storage, never in chat.
  3. Just ask: “brief me on today's top stories” or “check the wire for anything on [topic].”
Ideas
  • Morning briefing folded into your daily rundown.
  • Goal-linked news: stories matched to what you're actually working on.
  • Spike alerts: tell it which topics to watch and get pinged when something big breaks.
CLAUDE
Anthropic's agentic coding tool
Setup
  1. Install the skill globally so every project gets it.
    mkdir -p ~/.claude/skills/newsliar
    # copy SKILL.md, wire_client.py, briefing.py, interests.yaml in
  2. Save your key to ~/.newsliar_key.
  3. Verify: open a session and run /skills. Newsliar should be listed and trigger on news questions.
  4. Optional slash command: copy the bundle's commands/newsliar.md to .claude/commands/ and the CLI answers to /newsliar briefing like any other command.
Ideas
  • /newsliar morning briefing before you start work.
  • Research mode: wire clusters plus full-article reads for real deep dives.
  • Heartbeat loop: scheduled polls feeding your notes or inbox on a timer.
CODEX
OpenAI's terminal agent
Setup
  1. Install the skill where Codex looks for them.
    mkdir -p ~/.agents/skills/newsliar
    # copy SKILL.md, wire_client.py, briefing.py, interests.yaml in
  2. Save your key to ~/.newsliar_key.
  3. In a session, invoke it with $newsliar, or add a standing line to your AGENTS.md so every session knows the wire exists.
  4. Headless: one-shot briefings without the TUI.
    codex exec "$newsliar brief me on tech news"
Ideas
  • One-shot briefings from cron: codex exec on a schedule, digest in your inbox.
  • Release radar: launches, CVEs, and ecosystem news for your stack.
  • Pre-coding context: what's happening in your dependencies before you touch them.