Storyflo
Curated audio news, daily briefings, the Declassified library + market-linked signals.
Connector by Alisammour · GitHub account verified by the MCP Registry
Chalk Labs
Need help deploying Storyflo?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, VS Code, Cursor, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install connector/alisammour-storyflo-mcp
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Remote endpoint
https://api.storyflo.com/mcp/v1Remote (HTTP)
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.
- Tools
- 29 read · 8 write · 0 delete
- Secrets
- None asked for
- Install scripts
- Nothing to install (hosted)
- Runs as
- Hosted (remote endpoint)
Tools by what they do 37
From the running server's own tool list (tools/list) on Oct 25, 2026.
Read 29 · Look things up without changing anything.
digestdigest_declassifiedfm_book_statusget_articleget_audio_urlget_crypto_market_linkget_declassified_caseget_divergence_indexget_embedder_manifestget_embedder_network_manifestget_market_linked_storiesget_mcp_usage_self
Show 17 more tools
get_personasget_trending_topicsget_vertical_briefingget_vertical_landscapelist_podcastslist_subscriptionspublisher_episodespublisher_folder_statuspublisher_statspublisher_statusquote_partnershipregister_embeddersearch_articlessearch_declassifiedsearch_unifiedstream_briefing_render_eventssubscribe_declassified_topic
Write 8 · Create, change, send or run things.
fm_close_positionfm_open_positionfm_repositionget_my_private_feedpublisher_attach_audiopublisher_connect_folderpublisher_upload_audiosubscribe_topic
Network hosts it talks to 1
api.storyflo.com· found in remote endpoint, install command
Files it touches
- Any path the agent passes to its tools
Tools (37)
As the server listed them on Oct 25, 2026. Descriptions are the server’s own words; hidden characters are shown as [U+…].
digestBuild a daily digestread-onlyAggregate the top-N articles across selected verticals for the requested window. Heaviest action — counts more against the per-agent rate limit. Use this for 'read me today's tech news' style prompts.
digest_declassifiedRecent Declassified casesread-onlyReturn the most-recently-published Declassified cases over a rolling window. Use for 'what's new in Declassified this week' style prompts. window=today (~24h) | week (default) | month. Public — no auth required.
fm_book_statusMy desk bookread-onlyA signalflo fund manager's own book: which calls are open, how many have closed, and the deep links to the desk and dashboard. Use this first when a manager asks what is on their book right now.
fm_close_positionClose a positionClose a call when the divergence resolves or goes stale. The position stays on the book as closed rather than being deleted.
fm_open_positionOpen a positionRecord a new call on your book: the event, which way you lean, and why. Idempotent — opening a call you already hold repositions it instead of creating a duplicate, so an agent may safely re-run its loop. Lean and rationale must be QUALITATIVE: a percentage, odds or implied probability is refused, because a number attached to a market view reads as investment advice.
fm_repositionReposition a callUpdate your view on an open call as the signal evolves. Same qualitative rule as opening one.
get_articleGet articleread-onlyFetch the full record for an article by slug, including body_text + audio_url.
get_audio_urlGet audio URLread-onlyResolve the playable audio URL for an article. Returns a stitched-with-ad URL on free tier or the bare audio for plus/pro.
get_crypto_market_linkGet crypto market exposure link (Kraken affiliate)read-onlyReturn Storyflo's markets-partner Kraken affiliate URL for a given crypto asset (BTC, ETH, etc). Editorial linkout, not a trading prompt: the URL points at Kraken's public asset page so a listener who wants exposure can reach a regulated venue without leaving the brief context. Markets-as-INPUT posture (counsel-cleared) — Storyflo never quotes prices, never recommends positions, and never frames exposure as risk-free. Behavior - Read-only. No persistent server state. - Idempotent — same (asset, embedder_slug) returns the same URL. - Fail-closed — when KRAKEN_AFFILIATE_ENABLED is off OR the pa…
get_declassified_caseGet Declassified caseread-onlyFetch the full record for a Declassified case by slug. Returns title, summary, transcript_excerpt, episode_date, duration_sec, agency, audio_url, source_doc_url, and up to 5 related cases. Use after `search_declassified` when the agent needs the full case body to summarize, narrate, or hand off audio playback. Public — no auth required.
get_divergence_indexGet the Storyflo Market-vs-Media Divergence Indexread-onlyThe Storyflo Divergence Index — Storyflo's own computed metric for where prediction markets disagree with the press. For each event Storyflo holds both a liquid prediction-market contract and a set of narrated news stories, it computes the gap between the market-implied probability and the probability the NEWS NARRATIVE implies for the same event, then ranks events by the absolute divergence. Each item carries Storyflo's divergence value, Storyflo's news-narrative probability, a qualitative market descriptor, the matched story links, and a link-out to the market venue. This is ORIGINAL ANALYSI…
get_embedder_manifestGet per-embedder agent manifestread-onlyWrap the public ``/embed/<slug>/manifest.json`` — an agent-discoverable JSON bundle of creative formats, voice options, payout config, and beacon URLs for a registered embedder. Use after `register_embedder` or when an agent is reading another partner's manifest to plan an ad buy. Public — no auth required.
get_embedder_network_manifestGet platform-wide embedder network manifestread-onlyWrap the public ``/embed/network-manifest.json`` — the platform-level DSP/SSP onboarding bundle: supported creative formats, payout rails, attribution URLs, integration patterns. Use when an agent is evaluating whether to wire storyflo into its surface, or when a DSP partner needs the canonical integration shape. Public — no auth required.
get_market_linked_storiesGet stories with active matched event-contract marketsread-onlyStoryflo stories that match an actively traded event contract on Kalshi (a CFTC-regulated exchange). Each item carries qualitative signal tags (high_velocity, genuine_uncertainty) plus a link-out to Kalshi's own page where the live market data lives. Editorial sourcing surface, not market-data redistribution: Storyflo never returns raw prices, market-implied probabilities, volumes, or open interest in this payload. Use this when the agent needs to know which Storyflo stories are about news themes that have an actively traded event contract — e.g. World Cup matches, political mention contracts,…
get_mcp_usage_selfGet my MCP tool usage (last 30 days)read-onlyReturn the caller's own trailing 30-day MCP tool-usage summary: total calls, success rate, p50 latency, and per-tool call/error counts. Identity is resolved from the OAuth bearer token on this request — anonymous callers receive a zeroed shape. Use this to self-budget against rate limits, audit which tools your agent actually uses, or decide whether a paid tier is worth the spend. Read-only, no side effects.
Show 22 more tools
get_my_private_feedGet my private podcast feed URLReturn the caller's PRIVATE per-user podcast feed URL — a personalized daily brief (the stories from the topics the listener follows) delivered to whatever podcast app they already use (Apple Podcasts, Overcast, Pocket Casts, Snipd). This is the Substack/Patreon private-feed model: the token lives in the URL path (unguessable, fetchable over HTTPS) — paste the returned feed_url into the app's "Add a show by URL". Pass the listener's existing listener_token (from the storyflo /listen page) as identity; the private feed token is minted on first call and stable thereafter. Keep the URL private — …
get_personasGet host persona catalogread-onlyReturn the storyflo 6-host persona catalog (Theo, Mason, Jessica, etc.) — each entry includes slug, name, voice_id, owned verticals, tone archetype, sign-off line, and the listener-facing URLs for sample audio + RSS. Use this to pick a voice for the agent's use case before rendering audio or briefing the user on which host covers which vertical. Public — no auth required.
get_trending_topicsGet cross-vertical trending topicsread-onlyReturn storyflo's current cross-vertical trending snapshot: top stories ranked by recency + velocity, active publishers in the last 24h, the featured daily-brief compilation, and per-vertical hot lists. Use when the agent needs to surface 'what's hot on storyflo right now' to its human, or to decide which vertical landscape to dig into next. Public — no auth required.
get_vertical_briefingGet per-vertical premium briefingread-onlyFetch a stitched audio briefing of the top-25 trending articles in a single vertical from the last 24h. Premium — settles in USDC on Base via x402. Vertical must be one of the canonical 7 buckets: tech, finance, news, science, health, young_moms, yoga. First call without an X-Payment header returns the x402 challenge; sign + retry.
get_vertical_landscapeGet one-shot vertical landscaperead-onlyReturn everything an agent needs to onboard a listener for a single vertical in one tool call: top stories, the named host persona (with sample-audio URL and tone), the premium-briefing URL the agent can deep-link (x402-gated), and the public RSS feed the listener can paste into any podcast player. Use after the agent has decided which vertical to set up — saves a follow-up `get_personas` + `search_articles` + `get_premium_briefing` round trip. Public — no auth required.
list_podcastsList all Storyflo podcast showsread-onlyReturn the public catalog of Storyflo podcast shows — the Declassified archive plus 6 daily-brief shows hosted by Theo (tech), Mason (markets), Jessica (news), Chloe (health), Brock (sports), and Wit (comedy). Each entry includes the show title, host name, vertical, RSS feed URL (paste into Apple Podcasts / Spotify / Overcast), and a deep-link to the storyflo.com listen surface. Use to surface every audio show an agent can offer its user without re-deriving the catalog from /v1/podcasts/* URL patterns. Public — no auth required.
list_subscriptionsList active subscriptionsread-onlyReturn the listener feed(s) this agent has minted on the human's behalf.
publisher_attach_audioAttach uploaded audio to an episodeConfirm a finished upload and mark that episode live. Verifies the file really landed in storage before changing anything, then points the episode at it so it appears in your RSS feed on the next build. Attaches ONE upload to ONE episode you own.
publisher_connect_folderConnect a recordings folderConnect a Google Drive folder of recordings so storyflo can match them to episodes automatically — the alternative to uploading a back catalogue file by file. Call with NO folder argument first to get the setup instructions, including the address to share the folder with. Then call again with folder=<the Drive URL>. Recording the connection moves no audio; the scan happens afterwards.
publisher_episodesMy episodesread-onlyList a publisher's episodes newest-first with their real state: 'live' (has finished audio and appears in the RSS feed) or 'awaiting' (storyflo knows the episode exists but has no finished audio yet). Filter with status=live or status=awaiting to answer 'what is still pending?'.
publisher_folder_statusConnected folder statusread-onlyWhat the connected folder has produced: files seen, files matched and attached, and — most usefully — the files storyflo could read but would NOT auto-attach because the filename did not clearly identify an episode. Those are listed with the reason so they can be renamed and picked up on the next scan.
publisher_statsMy listening statsread-onlyPlays over a window (default 30 days, max 365) plus the episodes driving them. Answers 'how did last month go' and 'which episode is working'. Zero plays on a new feed is normal — directories take days to index a fresh RSS URL.
publisher_statusMy storyflo statusread-onlyWhere a publisher stands right now: their RSS feed URL (the one to submit to Apple Podcasts and Spotify), how many episodes storyflo holds, how many already have finished audio, and how many are still awaiting source audio. Use this for 'what is my feed URL', 'is anything stuck', or as the first call when a publisher asks how things are going.
publisher_upload_audioUpload source audioGet a one-time upload URL for an episode's source audio — your own recording (StreamYard, Riverside, Zoom, a local file). Use this when an episode shows as 'awaiting': storyflo knows it exists but has no audio for it. Returns a presigned PUT URL plus a ready-to-paste curl command. Nothing changes in storyflo until you upload and then call publisher_attach_audio — this tool alone moves no bytes and mutates nothing.
quote_partnershipQuote a partnership tierread-onlyReturn the indicative partnership tier (starter / growth / scale / enterprise) + monthly fee + storyflo revenue-share bps for a partner integrating storyflo into their agent product. Pure pricing-matrix lookup; no contract is created. The agent should hand the returned contact_url to the human to open a formal partnership thread. Public — no auth required.
register_embedderGet embedder onboarding URLread-onlyResolve the storyflo embedder onboarding URL prefilled with the partner's name + email + optional vertical. Returns the URL the human must visit to complete signup (storyflo emails a magic link to verify ownership; the embedder slug + ref_token are minted on verification). DOES NOT create a DB row + DOES NOT send email — the MCP tool is a discovery + handoff surface so an agent can call it speculatively without triggering inbox-bound email to the human. Public — no auth required.
search_articlesSearch Storyflo articlesread-onlySearch Storyflo's article corpus. Returns slug, title, publisher, vertical, snippet, audio_url, and listen_seconds for each match. Use vertical to scope (tech / finance / science / media / sports / culture).
search_declassifiedSearch Declassified libraryread-onlySearch Storyflo's Declassified archive — narrated cases drawn from FBI, CIA, NSA, NASA, DOJ, AARO, war.gov and other publicly-released government documents. Substring match across case title + synopsis. Use when the agent needs to find a Declassified case matching a topic (e.g. 'UAP', 'JFK', 'COINTELPRO', 'Roswell') before fetching the full case via `get_declassified_case` or handing the audio_url to a player. Public — no auth required.
search_unifiedUnified search (news + declassified + signals)read-onlySearch ALL of Storyflo in one call and get results back as separate per-corpus buckets: `news` (the narrated article archive), `declassified` (government-document cases), and `signals` (Atlas's book of positions off the Divergence Index). Use this when you do not already know which corpus holds the answer, or when a topic spans several — e.g. a macro question with both coverage and a live position. Results are ranked WITHIN each corpus and never blended, so a large corpus cannot drown a small one. `profile=desk` leads with signals (news/declassified as supporting evidence); `profile=publisher`…
stream_briefing_render_eventsStream briefing render events (SSE)read-onlySubscribe to real-time briefing-render events. Returns the SSE endpoint URL with the chosen filters as query params — the agent's MCP client should open it with EventSource (browser), httpx.stream / aiohttp (Python), or `curl -N` (CLI). Event types: `briefing.rendered` (daily-brief lands), `declassified.published` (new Declassified episode), `persona_briefing.rendered` (persona brief synthesised / audio rendered). Frame shape: {event_type, seq, slug, vertical, persona_slug, audio_url, published_at, metadata}. The endpoint replays the last ~1000 events on connect; a heartbeat is emitted every 3…
subscribe_declassified_topicSubscribe to Declassified topicread-onlyResolve a podcast-feed URL the user can paste into Apple Podcasts, Overcast, Pocket Casts, or Spotify to receive every new Declassified case automatically. Also returns a JSON `episodes_url` the agent can poll, plus a `matched_so_far` count of cases that already mention the topic. Read-only — does NOT store the user's email or any PII; the RSS feed is the subscription. Public — no auth required.
subscribe_topicSubscribe to topic feedMint or update the human's personal Storyflo podcast feed. Pass 1–6 vertical slugs from `tech`, `finance`, `science`, `media`, `sports`, `culture`. The server creates a private RSS feed scoped to those verticals — or updates the existing feed in place if the listener already has one. Returns the RSS URL the listener can paste into Spotify, Apple Podcasts, Pocket Casts, or any podcast client. Behavior • Persistent server-side side-effect — a `ListenerSubscription` row is created or updated. The returned RSS URL stays stable across calls for the same listener (the listener doesn't need to re-pa…
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 1
- Last commit
- Jul 2, 2026 (4 months ago)
- Last release
- Jul 1, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- Registry name
io.github.Alisammour/storyflo-mcp- Version
- 1.2.0
- Auth
- Auth not stated
- License
- MIT
- Repository
- github.com/Alisammour/storyflo-mcp
- Website
- www.storyflo.com
- First seen
- Oct 24, 2026
- Last checked
- Nov 1, 2026
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get Storyflo running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
Storyflo MCP server. Agent Mart. https://agentmart.dev/connectors/alisammour-storyflo-mcp (last updated 2026-11-01)