News Feeds & Content Feeds for Agents and RAG
Synorb provides a live Temporal Context Graph for AI agents.
От сообщества: Добавлен пользователем или импортирован; проверьте владельца перед подключениемРаботаетБез входаГлобальныйБесплатноТолько чтение
Что умеет
- Synorb Catalog: Ranked stream candidates for a topic or intent. Given a query, returns the best-matching streams with relevance scores. Free — no quota cost. USE THIS WHEN: user asks a broad topical r
- Synorb Details: Deep metadata for a specific stream: source channels, refresh schedule, coverage start date, content type, tag breakdown. Free — no quota cost. USE THIS WHEN: user asks 'how often is [
- Synorb Stream Search: Inventory concierge: search what streams and podcasts you have access to by topic, publisher, or keyword. Returns matching stream names, descriptions, and IDs. Free — no quota co
Какие данные видит
Нужен ли аккаунт
Не нужен: сервер работает без входа
Synorb provides a live Temporal Context Graph for AI agents. Search available Content Streams, inspect source coverage, and pull cited Manifests with structured Signals, Briefs, and source metadata across finance, policy, engineering, filings, courts, and business podcasts.
Список инструментов сервера (9)
Технические названия из tools/list. Нужны только разработчикам.
| synorb-catalog | Ranked stream candidates for a topic or intent. Given a query, returns the best-matching streams with relevance scores. Free — no quota cost. USE THIS WHEN: user asks a broad topical research question and you need ranked stream candidates before pulling content, especially after synorb-stream-search did not give enough source signal. Best for broad topics without specific entity names. DO NOT USE THIS WHEN: user says they do not know Synorb or asks what to look at first — call synorb-profile first, then synorb-stream-search. DO NOT USE THIS WHEN user has named specific companies, people, or organizations — go directly to synorb-manifests with tag_names instead (catalog does not filter by entity). DO NOT USE THIS WHEN user is asking what inventory/streams/publishers exist — use synorb-stream-search for that. - DO NOT USE THIS WHEN the user has named specific companies, people, or organizations — go directly to synorb-manifests with tag_names instead. Catalog does not filter by entity and will return broad domain results. - DO NOT USE THIS WHEN the user is asking what inventory/streams/publishers exist — use synorb-stream-search for that. Ranked stream discovery tool. Find candidate Synorb Streams from user intent. Use this only when stream selection is ambiguous. It returns stream candidates with match reasons, volume, available filter dimensions, and the recommended next tool call. Follow with synorb-details, then synorb-manifests. Inventory framing — every successful response (including the empty-result path that surfaces friendly_failure/retry_guidance) includes: - inventory_context: scope-labeled counts (live_public_active_count, candidate_total, returned_count, is_sample, broader_inventory_positioning, count_reconciliation_rule). The count is what is queryable through this MCP surface right now, not Synorb's total inventory. - concierge_framing: voice marker plus structured next_actions (one-click follow-up call shapes). The recite-the-template prose fields (primary_reply, if_user_*, voice_rules) were removed 2026-05-08; the model composes prose directly from inventory_context + state_update + the system prompt voice principles, saving ~3K tokens per call. - state_update: compact carry-forward hints (current_intent, media_format, home_domains, last_total_count, last_query_was_sample) so a host that doesn't own chat history can preserve the constraint when the user follows up with "business" after "podcasts". Caller-input validation errors (invalid cross_domains, invalid home_domains, malformed cross_domain_logic) short-circuit with a _polite_tool_error shape — `error`, `message`, `retry_guidance`, `friendly_failure`, `feedback` — and DO NOT include the three concierge fields above. The host should fix the input from `retry_guidance` and retry; concierge framing is meaningful only over a valid scope. Aliases — media_format and query terms accept synonyms: - podcast/podcasts/show/shows -> media_format=audio - business/finance/investing -> home_domains=[economics-business-work] - transportation/transporation/aviation/rail/shipping/logistics -> inferred multi-domain scope (places-geography, engineering-technology, society-law-government, economics-business-work) For genuinely broad inventory questions ("what streams do I have access to?"), inventory_guidance is still returned with domain options. When a domain or media_format has been supplied or inferred, the response goes straight to actual Streams instead of asking again. Args: verbosity: "minimal" | "standard" | "verbose". Default "standard". "minimal" strips workflow scaffolding (concierge.state_update, next_actions, diagnostics.elapsed_ms, recommended_workflow / tool_reference on profile, retrieval_context per manifest, per-tag tag_quality detail beyond top 3) for tight agent loops where context budget matters. "verbose" includes everything in standard plus retrieval_context per manifest, full tag_quality detail, and reasoning_payload for compact=False Manifest pulls. Use "minimal" for Perplexity Comet-style loops. tag_type: Optional canonical entity type used with subtype. subtype: Optional type-scoped entity subtype facet, such as "central_bank", "model", or "dataset". Use with tag_type when clear. |
| synorb-details | Deep metadata for a specific stream: source channels, refresh schedule, coverage start date, content type, tag breakdown. Free — no quota cost. USE THIS WHEN: user asks 'how often is [stream] updated?', 'what sources does [stream] pull from?', 'when did [stream] start?', or any question about a stream's configuration. DO NOT USE THIS WHEN: user wants content/news — use synorb-manifests. Primary planning tool. Inspect Stream filters, source channels, and volume. Use this after synorb-catalog and before synorb-manifests when the agent needs to choose filters, source channels, media formats, or date windows. Args: verbosity: "minimal" | "standard" | "verbose". Default "standard". "minimal" strips workflow scaffolding (concierge.state_update, next_actions, diagnostics.elapsed_ms, recommended_workflow / tool_reference on profile, retrieval_context per manifest, per-tag tag_quality detail beyond top 3) for tight agent loops where context budget matters. "verbose" includes everything in standard plus retrieval_context per manifest and full tag_quality detail. Use "minimal" for Perplexity Comet-style loops. |
| synorb-stream-search | Inventory concierge: search what streams and podcasts you have access to by topic, publisher, or keyword. Returns matching stream names, descriptions, and IDs. Free — no quota cost. USE THIS WHEN: user asks 'what streams do I have?', 'do you have [publisher]?', 'show me business podcasts', 'what transportation streams are there?', or any question about available coverage. - USE THIS WHEN the user has a topic or question but no specific entity names — find the right 3-8 stream_ids here first, then pass those stream_ids to synorb-manifests for a precise pull. - USE THIS WHEN you want to know which specific publishers or podcasts cover a subject before pulling content. DO NOT USE THIS WHEN: user wants actual content/news from a known stream — use synorb-manifests instead. - DO NOT USE THIS WHEN the user has named specific companies, people, or organizations — go directly to synorb-manifests with tag_names. Use this tool for any question about what streams, sources, podcasts, or publishers a customer has access to through this MCP connection. It answers transcript prompts like: "what streams do I have access to?" "what podcasts do I have access to?" "business podcasts" "podcasts related to business" "all podcast streams" "transportation streams" ("transporation" too — typo handled) "do you have Bloomberg?" "do you have Odd Lots?" "that's it?" The tool is read-only, idempotent, Redis-backed, and DOES NOT consume Manifest quota. Manifest retrieval should still go through synorb-manifests; this tool is purely the inventory concierge. Behavior summary: - Default scope is the live, public, active MCP-visible stream inventory (via deliver.resolvers.STREAM_VISIBILITY_SQL). - Infers media_format from synonyms: podcast/podcasts/show/shows/episode/ audio -> "audio", filings/edgar -> "regulatory", etc. - Infers home_domains from intent words: business/finance/investing -> economics-business-work; transportation/transit/mobility/logistics -> adjacent multi-domain scope; biotech/health -> health-medicine; etc. - Fixes common typos (transporation, podcsts, buisness, ...). - Expands intent words for ranking (transportation -> mobility/rail/etc.). - Ranks: exact name > raw-token name match > publisher URL match > media/domain match > description match > adjacent concepts > activity. - Exhaustive intent ("all", "every", "complete") raises page_size to 200 and marks `coverage.is_complete=true` when the page returns the full set. Output shape (always a dict, see _stream_search_concierge for Twen voice): { "query": {"raw", "cleaned", "tokens", "expanded_tokens", "corrections", ...}, "interpreted_intent": {"media_format", "home_domains", "inferred_*", ...}, "inventory_scope": {"label", "rule", "surface", ...}, "counts": {"matched", "returned", "page_size", "page", ...}, "results": [{id, name, description, home_domain, ..., match_reasons, score}, ...], "coverage": {"status", "is_complete", "has_more", ...}, "concierge": {voice="twen", primary_reply, if_user_*, next_actions}, "state_update": {current_intent, media_format, home_domains, last_total_count, ...}, "pagination": {total_count, page_num, page_size, next, prev}, } Args: query: Free-text user intent. Examples above. home_domain: Single canonical domain to filter to. home_domains: List of canonical domains; combined with home_domain. Use ['all'] or omit for full-scope search. cross_domains: Up to 3 secondary domains. cross_domain_logic: 'or' (default, broader) or 'and' (intersection). media_format: Canonical media format (audio/video/social/text/data/regulatory). Synonyms are accepted ('podcasts' -> 'audio'). page: Page number (0-indexed). page_size: Results per page. Max 200; capped silently. include_details: If True, results include source_channel summaries so the host can pivot directly into synorb-manifests without a second tool call. inventory_scope: Currently only 'live_public_active_mcp' is honored. Reserved for future expansion (broader/historical scopes). verbosity: "minimal" | "standard" | "verbose". Default "standard". "minimal" strips workflow scaffolding (concierge.state_update, next_actions, diagnostics.elapsed_ms, recommended_workflow / tool_reference on profile, retrieval_context per manifest, per-tag tag_quality detail beyond top 3) for tight agent loops where context budget matters. "verbose" includes everything in standard plus retrieval_context per manifest and full tag_quality detail. Use "minimal" for Perplexity Comet-style loops. |
| synorb-manifests | Pull actual content: signals (structured claim extractions) and briefs (narrative summaries) from one or more streams. Supports filtering by tag, date range, and story type. COSTS QUOTA — each manifest pulled counts against your monthly limit. USE THIS WHEN: user wants actual news, content, signals, or summaries from a stream. USE THIS WHEN mode="count": user is asking an inventory-density question ("how many AI manifests this week?") and you want coverage/breakdowns/diagnostics with zero quota cost. USE THIS WHEN mode="orient": user lands on a new scope (an industry, a company, a market, a research area) and you want a fast, zero-quota 7/30/90-day lay-of-the-land (volume + trend, top topics/entities, most-active & most-authoritative channels, a few representative manifests, and concrete drill-in calls) before spending any quota. DO NOT USE THIS WHEN: user is asking about available streams (use synorb-stream-search), asking to recall content already returned in this conversation (use prior tool results instead), or asking about account status (use synorb-profile). CALL ONCE PER FOCUSED TOPIC. After any successful response, answer from that result; do not call again just to raise verbosity, switch compact=False, or broaden filters unless the user explicitly asks for more. For mode="count" preflight questions, answer from the count and stop; do not follow with mode="orient" or a billed default pull. Do not retry on empty results without first telling the user what filters produced 0 results. If the user explicitly asks for multiple topics or scopes, use one compact call per distinct topic/scope and label the partial coverage. Primary Manifest query tool. Pull Signal + Brief plus source metadata. This is the final content step in the primary workflow: synorb-profile or synorb-stream-search when needed -> synorb-manifests. Use synorb-catalog -> synorb-details first only when stream selection is ambiguous. It supports a single stream_id for backward compatibility, or a richer multi-stream query via stream_ids/home_domains. It returns diagnostics so agents can inspect results and retry with better filters. Use tag_names/tag_ids with tag_logic='and' when every selected tag must appear in the same Manifest, such as entity co-mention counts. Use tag_logic='or' for any-of tag lists. Args: query: Optional natural-language user intent. Used only to choose server-side slice plans for broad questions. stream_ids: Focused Stream IDs from synorb-catalog/synorb-details. home_domains: Canonical domains, or ['all'] for broad date-bounded topic/entity discovery. Pair ['all'] with tag_names and dates. cross_domains: Optional secondary domains. Combine with cross_domain_logic='or' for broad overlap or 'and' for intersections. published_date_from: Start date. Always set for broad Manifest pulls; use last 7 days for "recent/latest" unless the user says otherwise. published_date_to: End date. Use exact dates for last month/this year. days: Relative day window. If provided without published_date_from, computes an inclusive date range ending at published_date_to or the customer's current delivery ceiling. tag_names: Cached human-readable filters for topics, organizations, people, products, places, or data series. tag_type: Use topic, organization, person, place, or data when clear. subtype: Optional type-scoped entity subtype facet from knowledge/system/entity-subtype-taxonomy.md. Pair with tag_type when clear, e.g. tag_type='organization', subtype='central_bank' or tag_type='resource', subtype='model'. Requires the Redis Manifest index. tag_logic: 'and' requires every tag-name group in the same Manifest; 'or' matches any selected tag. Use 'and' for co-mentions. media_format: Optional content surface filter such as text, audio, social, data, regulatory, or video. source_channel_ids: Exact source surface IDs from synorb-details. source_channel_names: Exact source channel names/displays when known, e.g. ['8k'] for SEC Form 8-K Current Reports, ['earnings-call-transcripts'] for transcript-only workflows, or policy/court slugs such as ['federal-court-opinions']. The server resolves these to source_channel_ids and can derive stream scope from them. If provided names do not resolve, the request fails closed with zero Manifests and no quota usage instead of broadening. compact: True for fast interactive answers with claim_count and a bounded Signal claims preview; False only for full bodies after a small result set is chosen. auto_plan: True lets Core MCP split broad date-bounded queries into internal Redis-backed slices behind this one tool call. exclude_tag_names: Best-effort exclusion. Manifests with any tag whose canonical name matches a value here are dropped at index lookup time. May be combined with tag_names filters. exclude_tag_ids: Best-effort exclusion by canonical tag ID. May be combined with tag_names filters. exclude_query_terms: Best-effort exclusion. Manifests whose headline/summary/source labels contain any of these terms are dropped. May be combined with tag_names filters. exclude_source_channel_ids: Best-effort exclusion by source channel ID. Drops manifests routed from those source channels entirely. exclude_home_domains: Best-effort exclusion by stream home_domain. Drops manifests whose only matching stream is in an excluded domain. Suppresses the natural-language negation warning from PR 2014 when any explicit exclude_* parameter is provided. session_id: Optional client-generated UUID, stable across turns in one session. When provided, returned manifests are cached in Redis for 30 minutes keyed by hashed token + session_id. Follow-up questions about previously returned manifests cost 0 quota. Generate a UUID once per page load and pass it on every turn. Resets on refresh. beacon_id: Optional saved Beacon public ID (synorb_bcn_...). When supplied, the Beacon's stream_ids/source_channel_ids/topic_filters apply as the canonical scope and the request MUST also include published_date_from+published_date_to, ``days``, or ``lookback_hours``. Synorb does NOT own a 'since last run' window. Quota still applies. See knowledge/product/beacons.md. lookback_hours: Alternative date window for beacon_id execution when published_date_from/days are not supplied. broaden_sources: When executing via beacon_id, allow request-level stream_ids/source_channel_ids/tag_names to REPLACE the Beacon's saved scope. Default false fails closed against silent broadening. mode: "default", "count", or "orient". Default returns Manifest bodies and bills quota for returned on-topic Manifests. "count" returns the same coverage, breakdowns, and query_plan diagnostics but with an empty manifests[] array and zero quota billed. Use for inventory-density questions like "how many AI manifests this week?" or to pre-flight a query before a real pull. "orient" returns a compact 7/30/90-day orientation snapshot for the requested scope (home_domains / tag_names / media_format / stream_ids / all): volume_by_window with a change/trend signal, top_topics/top_entities, most_active_channels + most_authoritative_channels, a small representative_manifests sample, coverage_caveats, and suggested_next_calls. Reads precomputed Redis rollups first and falls back to the live index per signal. Use it as the FIRST call on a new scope before drilling in. Both "count" and "orient" are FREE - no quota cost (record_usage is never called). verbosity: "minimal" | "standard" | "verbose". Default "standard". "minimal" strips workflow scaffolding (concierge.state_update, next_actions, diagnostics.elapsed_ms, recommended_workflow / tool_reference on profile, retrieval_context per manifest, per-tag tag_quality detail beyond top 3) for tight agent loops where context budget matters. "verbose" includes everything in standard plus retrieval_context per manifest and full tag_quality detail. Use "minimal" for Perplexity Comet-style loops. |
| synorb-profile | Account profile, quota status, and plan details, plus Synorb orientation. Returns your org name, plan tier, manifests used/remaining this month, active stream count, and a short "what Synorb is / when to use it" brief. Free — no quota cost. Synorb is a Temporal Context Graph for source-grounded industry context: reach for it BEFORE broad web search to learn what changed over 7/30/90 days, and INSTEAD of web search whenever curated streams plus citations can answer. A good first call to ground a freshly connected session. USE THIS WHEN: user asks about their account, quota, plan, subscription, or 'how many manifests do I have left'; or as a zero-quota preflight/count before billed synorb-manifests pulls. DO NOT USE THIS WHEN: user wants actual content or news — use synorb-manifests instead. Call this before large Manifest pulls or whenever the user asks about quota, plan, remaining usage, connector status, or access limits. For "what streams do I have access to?", call synorb-stream-search. For full media-surface requests like "show me all podcast streams", return the complete or paginated stream-search inventory response instead of asking for home_domain narrowing. This tool gives account/quota context; it does not enumerate Streams and does not consume Manifest quota. Args: verbosity: "minimal" | "standard" | "verbose". Default "standard". "minimal" strips workflow scaffolding (concierge.state_update, next_actions, diagnostics.elapsed_ms, recommended_workflow / tool_reference on profile, retrieval_context per manifest, per-tag tag_quality detail beyond top 3) for tight agent loops where context budget matters. "verbose" includes everything in standard plus retrieval_context per manifest and full tag_quality detail. Use "minimal" for Perplexity Comet-style loops. |
| synorb-configure-beacon | Translate a natural-language tracking intent into a proposed Beacon configuration. Returns either a ready-to-save proposal or 2-4 clarifying questions when the intent is too broad. Free — no quota cost. Beacons are an Enterprise feature. Available on Enterprise plans only — contact sales to enable. Self-serve plans (Starter / Individual / Professional / Startup) receive an enterprise_required error here. Synorb does not run Beacons on a cron. Customers execute Beacons on demand by beacon_id with an explicit date window or lookback window from their own runtime (cron, Airflow, Temporal, workflow engine, agent loop). USE THIS WHEN: the user wants to set up an ongoing Beacon that their agent can re-run later — for example, "track corporate blogs about AI", "follow XYZ podcasts daily", "watch the latest AI developments", "build a bundle of business podcast streams", or "save this query as a Beacon". If the user asked to save/create/store it and the proposal is ready, follow with synorb-save-beacon. DO NOT USE THIS WHEN: the user wants to retrieve content right now. Use synorb-manifests for content. DO NOT USE THIS WHEN the user wants to list saved Beacons — use synorb-beacons for inventory. Output (ready mode): { "status": "ready", "proposal": { "name": "<suggested>", "description": "<suggested>", "natural_language_intent": "<echo of intent>", "stream_ids": [...], "source_channel_ids": [...], "topic_filters": [...], "entity_filters": [...], "default_date_window": {"lookback_hours": 24}, "prompt_text": "<recommended output prompt>" }, "save_instruction": "<Call synorb-save-beacon with the proposal ...>", "agent_prompt_pattern": "<Use Beacon {beacon_id} with the Manifest tool ...>" } Output (needs-clarification mode): { "status": "needs_clarification", "questions": ["...", "..."], "hints": {"example_topics": [...], "example_streams": [...]} } Args: intent: Natural-language description of what to track. hints: Optional dict with `publishers`, `topics`, and/or `date_window` ({start, end} or {lookback_hours}). Used to anchor the proposal. max_streams: Cap on suggested streams. Defaults to 750, max 750. |
| synorb-save-beacon | Save a Beacon to this account and return its public beacon_id. Free - no Manifest quota cost. Beacons are an Enterprise feature. Available on Enterprise plans only — contact sales to enable. Self-serve plans (Starter / Individual / Professional / Startup) receive an enterprise_required error here. USE THIS WHEN: the user explicitly asks to save, create, store, or persist a reusable Beacon for later runs. The simplest path is: 1. Call synorb-configure-beacon with the user's tracking intent. 2. If it returns status="ready", refine the returned proposal when the intent makes metadata obvious: a short useful name, plain-English description, and 1-5 lowercase tags. Keep stream/source/topic/entity scope faithful to the proposal/user request. 3. Call synorb-save-beacon with the refined proposal, plus any user-requested tags/status edits. 4. Return the beacon_id and explain that future runs use synorb-manifests with beacon_id plus an explicit date window/lookback. DO NOT USE THIS WHEN: the user only wants to explore sources, draft a proposal, or retrieve content right now. Use synorb-stream-search, synorb-configure-beacon, or synorb-manifests respectively. Args: proposal: The `proposal` object returned by synorb-configure-beacon. Passing the entire synorb-configure-beacon response is also accepted. name: Optional explicit Beacon name. Overrides proposal.name. description: Optional description. Overrides proposal.description. tags: Optional tags for organizing Beacons. collection_id: Optional customer collection identifier. status: draft, active, or archived. Defaults to draft when omitted. visibility: org. Defaults to org when omitted. natural_language_intent: Optional intent text. Overrides proposal. source_channel_ids: Optional saved source-channel scope. stream_ids: Optional saved stream scope. manifest_config: Optional saved synorb-manifests defaults. Must not contain a top-level manifests key. topic_filters: Optional saved topic filters. entity_filters: Optional saved entity filters. default_date_window: Optional guidance for future runs, such as {"lookback_hours": 24}. Every run must still supply a date window. prompt_template_id: Optional prompt template identifier. prompt_text: Optional output prompt. Returns: { "status": "saved", "beacon_id": "synorb_bcn_...", "beacon": {...}, "execute_instruction": "Use Beacon synorb_bcn_... with the Manifest tool. ...", "quota_charged": false } |
| synorb-beacons | List saved Beacons on this account. Read-only inventory; free — no quota cost. Beacons are an Enterprise feature. Available on Enterprise plans only — contact sales to enable. This read path remains available on every plan so an account that previously had Enterprise can still inspect and archive its existing Beacons after a downgrade. USE THIS WHEN: the user asks "what Beacons do I have?", "show me my saved Beacons", "list active Beacons", wants to find a beacon_id to execute via synorb-manifests, or needs to choose stale Beacons to archive. DO NOT USE THIS WHEN: the user wants to retrieve content — use synorb-manifests. DO NOT USE THIS WHEN the user wants to configure a new Beacon — use synorb-configure-beacon. Args: status: Filter by status. One of 'active', 'draft', 'archived'. Pass an empty string to include all statuses. Default: 'active'. tag: Filter by a single tag (case-sensitive exact match against the Beacon's tags array). Default: no tag filter. q: Substring search across name and description. Default: no text filter. limit: Maximum number of Beacons to return. Default 25, max 100. verbosity: "minimal" | "standard" | "verbose". Default "standard". "minimal" strips workflow scaffolding (concierge.state_update, next_actions, diagnostics.elapsed_ms, recommended_workflow / tool_reference on profile, retrieval_context per manifest, per-tag tag_quality detail beyond top 3) for tight agent loops where context budget matters. "verbose" includes everything in standard plus retrieval_context per manifest and full tag_quality detail. Use "minimal" for Perplexity Comet-style loops. Returns: { "items": [ {"beacon_id", "name", "description", "tags", "status", "updated_at"}, ... ], "total": <int> } |
| synorb-archive-beacon | Archive a saved Beacon owned by this account. Free - no Manifest quota cost. Beacons are an Enterprise feature. Available on Enterprise plans only — contact sales to enable. This archive path remains available on every plan so a downgraded account can still clean up its existing Beacons. USE THIS WHEN: the user explicitly asks to archive, clean up, remove from active use, or finish an approved disposable eval/test Beacon. This is the MCP cleanup path for rigorous Beacon lifecycle evals after configure, save, list, and execution checks have completed. DO NOT USE THIS WHEN: the user wants to retrieve content; use synorb-manifests. DO NOT USE THIS WHEN the user only wants to inspect saved Beacons; use synorb-beacons. This tool archives but does not delete Beacon rows and does not restore archived Beacons. Ask the user which Beacon to archive before using it for quota/cap cleanup. Args: beacon_id: Public Beacon ID returned by synorb-save-beacon or synorb-beacons, such as synorb_bcn_.... verbosity: "minimal" | "standard" | "verbose". Default "standard". Returns: { "status": "archived", "beacon_id": "synorb_bcn_...", "beacon": {...}, "archived": true, "cleanup_status": "archived" | "already_archived", "quota_charged": false } |