MCP
MarkdownMCP is how an AI agent talks to Sputnik. Connect it once and your agent can search the corpus, read transcripts, look up people and publications, and manage alerts.
This is how most customers use Sputnik.
Connecting
https://sputnikintelligence.com/mcp
In Claude, add that URL as a custom connector. You sign in through the browser once. After that your agent acts as you, for your team. Other MCP clients that support remote servers with OAuth work the same way.
The app has a Connect MCP page with screenshots.
MCP does not use API keys
The MCP server signs you in through the browser. An API key will not work against it. If your agent runs somewhere it cannot open a browser, such as a scheduled job or a container, use the REST API or the CLI.
Tool names
Tool names follow one pattern, so you can usually guess them.
| Prefix | Meaning | Example |
|---|---|---|
search_ |
A ranked list for a query. | search_posts |
list_ |
A plain list. | list_posts |
get_ |
One item, by slug. | get_post |
create_ update_ delete_ |
Act on one item. | create_alert |
add_ remove_ |
Membership only: which publications sit in a collection. | add_sources_to_collection |
Every tool matches one REST endpoint.
The tools
Reading the corpus
search_posts— full-text search across everything.list_posts— a chronological feed filtered by collection, publication, person and/or sponsor; filters combine, so a post must match all of them.get_post— one post in full.get_transcript— a podcast episode as readable Markdown, or as speaker turns withformat=turns.search_people,get_personsearch_sources,get_sourcesearch_topics,get_topicsearch_sponsors,get_sponsor
Collections
list_collections,get_collection,create_collection,update_collection,delete_collectionadd_sources_to_collection,remove_sources_from_collection
Monitoring
list_projects,get_project,create_project,update_project,delete_project. A project holds the email addresses (emails) and how often they are emailed (email_frequency: hourly, daily or weekly);update_projectsets them.list_alerts,get_alert,create_alert,update_alert,delete_alert.create_alertandupdate_alerttake an optionalcontext_filter, a plain-English filter such as "only about artificial intelligence in the context of its politics" (see Alerts).preview_alert_filter— try a context filter on an alert's recent passages before you save it. It scores them now and shows which would be kept and which hidden. Nothing is saved.list_alert_searches,create_alert_search,update_alert_search,delete_alert_searchlist_alert_destinations,create_alert_destination,delete_alert_destination(webhook and Slack only; email is set on the project)list_alert_hits— what your alerts have found. Each post appears once, with every matched excerpt and the search that found it. When an alert has a context filter, only posts and passages the filter keeps are returned, withhidden_excerpt_countfor the rest. Passinclude_hiddento get the hidden ones too, each passage with itsfilter_score,filter_text(the filter wording it was scored against) andshown. A post appears once its filter has been decided, normally within the hour, and the page stops before any post still waiting, so the cursor never skips one.
Things worth telling your agent
Search returns slugs. Use get_ for detail. A search result carries enough to decide whether a post is worth fetching in full.
Link things by their sputnik_url. Every item carries one. Use it as given rather than building a URL from the slug.
A podcast's words come from get_transcript. For a newsletter or blog post, get_post returns the text.
Follow next_cursor until it is null. The exceptions are search_topics and search_sponsors, which are capped at 100 rows.
Usage
MCP tool calls count against the same daily allowance as API calls. Listing the tools is free. See API intro.