# Synorb

> The intelligence layer for AI agents. 1,000+ curated streams of structured claims from 10,000+ sources — delivered via MCP, REST API, S3, and WebSocket. Your agent gets context it can reason over: atomic claims with type, confidence, evidence, and resolved entities. Not summaries. Not search results. Machine-readable temporal intelligence, updated continuously.

## Quick Start

Get free credentials (1,000 manifests/month, no signup form):

```
curl -s https://synorb.com/connect
```

Returns:

```json
{
  "credentials": {
    "api_key": "sk_live_...",
    "api_secret": "xK9#...",
    "mcp_token": "eyJhbGci..."
  },
  "mcp_server": "https://mcp.synorb.com/sse?token=...",
  "config": { "mcpServers": { "synorb": { "url": "..." } } }
}
```

Save all three values. The `api_secret` is shown only once. Use `mcp_token` for MCP connections, `api_key` + `api_secret` for REST API calls.

## Connect via MCP (Recommended)

Add to your MCP config (Claude Code, Cursor, Windsurf, ChatGPT, Codex):

```json
{
  "mcpServers": {
    "synorb": {
      "url": "https://mcp.synorb.com/sse?token=YOUR_TOKEN"
    }
  }
}
```

17 tools available. Content gated by plan at execution time.

## After Connecting — What To Do First

Once your MCP tools are active, run these two calls immediately (in parallel if possible):

1. **`synorb-account`** — returns your plan name, manifests per month, and manifests remaining
2. **`synorb-stream-catalog`** — returns all available streams with `pagination.total_count`

Then greet the user with:

> Connection established! I can access **{total_count}** streams on Synorb and read up to **{manifests_per_month}** manifests per month ({manifests_remaining} remaining). What should we read first?

### Pulling Your First Stories

Once the user picks a topic or you choose a stream:

3. **`synorb-stream-details`**(stream_id) — get filters and available body sections
4. **`synorb-stream-signals`**(stream_id) — get structured claims (or `synorb-stream-briefs` for narratives)

Date ranges are required on story queries. Default to the last 7 days if the user doesn't specify.

### For Non-MCP Agents (Codex, Copilot, Lovable, Bolt, v0)

Use the REST API with the credentials from `curl -s https://synorb.com/connect`:

```bash
# 1. Check account
curl -H "api-key: KEY" -H "secret: SECRET" https://api.synorb.com/account

# 2. List streams
curl -H "api-key: KEY" -H "secret: SECRET" https://api.synorb.com/streams?page_size=5

# 3. Fetch signals from a stream
curl -H "api-key: KEY" -H "secret: SECRET" "https://api.synorb.com/streams/{id}/signals?published_date_from=2026-03-10&published_date_to=2026-03-17"
```

Same greeting pattern: read `/account` + `/streams` first, tell the user what's available, then ask what to read.

## Connect via REST API

Base URL: `https://api.synorb.com`

Auth headers on every request:

```
api-key: YOUR_API_KEY
secret: YOUR_SECRET
```

### 3-Call Quickstart

```bash
# 1. List streams
curl -H "api-key: KEY" -H "secret: SECRET" https://api.synorb.com/streams?page_size=5

# 2. Stream details
curl -H "api-key: KEY" -H "secret: SECRET" https://api.synorb.com/streams/{id}

# 3. Fetch manifests (signal + brief + record triplets)
curl -H "api-key: KEY" -H "secret: SECRET" https://api.synorb.com/streams/{id}/manifests
```

## Key Concepts

| Term | What It Is |
|------|-----------|
| **Record** | Ingested content payload (article, podcast, data release) |
| **Signal** | Structured claims extraction (15-50 atomic assertions per record) |
| **Brief** | Structured narrative summary (headline, summary, body, sentiment) |
| **Manifest** | Delivery triplet: Signal + Brief + Record |
| **Stream** | Filtered content view organized by theme |
| **Tag** | Resolved entity: person, organization, place, topic, or data |
| **Claim** | Atomic assertion with type, confidence, and evidence |
| **Digest** | Curated bundle of streams. Synorb Digests are pre-built ($5/mo, free on Pro Developer+). User Digests are org-built. |

## Core Endpoints

| Method | Path | Description |
|--------|------|-------------|
| `GET` | `/streams` | List all streams with volume metrics |
| `GET` | `/streams/{id}` | Stream details, filters, schema |
| `GET` | `/streams/{id}/manifests` | Signal + Brief + Record triplets |
| `GET` | `/manifests/{record_id}` | Single manifest by record ID |
| `GET` | `/account` | Profile, plan, quota |
| `POST` | `/digests` | Create custom digest |
| `GET` | `/digests/{id}/manifests` | Manifests across digest streams |
| `POST` | `/digests/synorb/{id}/add` | Add a Synorb Digest (free on Pro Developer+) |
| `GET` | `/digests/synorb` | List added Synorb Digests |
| `POST` | `/webhooks` | Register webhook (8 event types: manifest.matched, stream.created/removed/unpublished, digest.new_content/created/updated/removed) |
| `GET` | `/backfill/grants` | S3 export grants |

## MCP Tools

| Tool | Description |
|------|-------------|
| `synorb-stream-catalog` | List streams with metadata and volume |
| `synorb-stream-details` | Filters, schema, allowed values |
| `synorb-stream-signals` | Structured claims for workflows |
| `synorb-stream-briefs` | Structured narratives for operators |
| `synorb-stream-records` | Full content objects (Enterprise) |
| `synorb-stream-manifests` | Signal + Brief + Record triplets |
| `synorb-account` | Account info, plan, quota |
| `synorb-digests` | List all digests |
| `synorb-stream-digest` | Fetch manifests from a digest |
| `synorb-tag-search` | Fuzzy search across tags |
| `synorb-topics-browse` | Browse topic hierarchy |
| `synorb-related-tags` | Co-occurring tags |
| `synorb-tag-sync` | Create or update a sync |
| `synorb-tag-unsync` | Remove a sync |
| `synorb-sync-list` | List active syncs |
| `synorb-label-create` | Create custom label |
| `synorb-labels-list` | List labels |

## Data Model

**Claim types:** publication, announcement, disclosure, remarks, data, analysis, event

**Confidence:** stated, implied, inferred, measured

**Evidence:** direct_quote, paraphrase, derived, observed

**Tag types:** person, organization, place, topic, data

**12 domains:** arts-culture-entertainment, economics-business-work, engineering-technology, everyday-life-practical-knowledge, health-medicine, language-literature, life-environment, people-biography-history, physical-sciences-mathematics, places-geography, society-law-government, universe-earth

## Plans

| Plan | Price | Manifests/mo | Channels |
|------|-------|-------------|----------|
| Free | $0 | 1,000 | MCP + REST API |
| Vibe Coder | $10-$18 | 10,000 | MCP + REST API |
| Pro Developer | $50-$90 | 100,000 | + Digest Builder + Synorb Digests |
| Startup | $250-$450 | 1,000,000 | + Synorb Digests + Webhooks + S3 |
| Enterprise | Contact us | Custom | + Synorb Digests + Records + Sync Ontology |

**Synorb Digests** — Pre-curated intelligence bundles built by the Synorb team. Each groups streams around a theme (e.g., Federal Reserve Watch, AI Research, Global Supply Chain). Included free on Pro Developer, Startup, and Enterprise plans. $5/mo each on lower tiers. Your agent gets instant access to expertly assembled intelligence without building stream combinations from scratch.

## Extended Documentation

- [Full API reference](https://synorb.com/llms-full.txt) (llms-full.txt)
- [Concise overview](https://synorb.com/llms.txt) (llms.txt)
- [OpenAPI spec](https://synorb.com/openapi.json)
- [Human-readable docs](https://synorb.com/docs)
- [MCP connection](https://synorb.com/docs#mcp)

## Attribution

Cite source URLs when presenting Synorb-sourced claims. Do not redistribute raw story objects outside your application.

Contact: team@synorb.com
