SGU MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_transcriptsA | Full-text search across all SGU episode transcripts and topic pages on sgutranscripts.org. Use for questions like 'every time they discussed CRISPR' or 'what did they say about cold fusion'. Returns matching pages with snippets, the episode number, and a wiki URL. |
| get_episodeA | Get a structured overview of one episode by number: title, date, rogues present, guests, quote of the week, the segment outline (with timestamps), news items (with source links), Science or Fiction, audio URL, and links. Combines the RSS feed (recent metadata + audio) with the transcript wiki (segments + details). Use get_transcript for the full text. |
| get_latest_episodesA | List the most recent episodes from the podcast RSS feed: number, title, date, summary, audio URL. Use to find the newest episode or recent ones. Note: transcripts lag a few weeks behind release. |
| get_science_or_fictionA | Get the Science or Fiction segment for an episode: the theme, the items (with source links), and which item was the fiction WHEN it is machine-encoded (answerKnown=true). When answerKnown=false, the reveal isn't in structured data — the transcript of the segment is included so the answer can be read off the discussion. |
| search_news_itemsA | Search the science news items the show has covered. Each news item is its own topic page tagged with the episode number. Returns topic title, episode number, and link. Use to find which episode covered a topic, or to survey coverage of a subject. |
| get_transcriptA | Get the cleaned transcript text of an episode. By default returns the full transcript (can be long). Pass a 'section' substring (e.g. 'Science or Fiction', a news item title, or 'Intro') to return only that section's text. Use get_episode first to see the segment outline. |
| search_episodesA | Fast, bm25-ranked full-text search over the LOCAL archive of episode transcripts (the indexed .md corpus). Prefer this over search_transcripts for general questions — it's instant, offline, and ranked, and it returns highlighted snippets with episode metadata. Optionally restrict to a field: 'transcript' (default scope is all), 'news' (news-item titles), or 'title'. Falls back with a note if the index hasn't been built yet (run |
| get_episode_markdownA | Return the full Markdown document (YAML frontmatter + clean transcript) for an episode from the local archive. Frontmatter includes date, rogues, guests, theme, the Science-or-Fiction answer, news items with links, audio URL, and source. Use after search_episodes to read the full text. |
| search_segmentsA | Fine-grained full-text search over individual speaker turns in the local archive. Unlike search_episodes (which returns whole episodes), this returns the exact moments — each result has the episode, date, segment/section, the timestamp to jump to, the speaker, and a highlighted snippet. Use for 'find the moment when…', quoting who said what, or narrowing within an episode. Optional filters: episode, speaker (e.g. 'Steve', 'Cara'), year. |
| count_mentionsA | Count how many times a word or phrase is actually said across the whole archive — a real occurrence count, not just how many episodes match. Returns the total, segments/episodes matched, and breakdowns by year, by speaker, and the top episodes by frequency. Use for questions like 'how many times have they said homeopathy?' or 'who says "awesome" the most?'. Matches the stem and its inflections (e.g. homeopath → homeopathy, homeopathic). Covers transcribed episodes only (a few weeks behind release). |
| semantic_searchA | Concept-level search that finds episodes by meaning, not just keywords — ask in natural language (e.g. 'episodes about the ethics of de-extinction' or 'when they got frustrated with science denial'). Blends vector similarity with keyword (BM25) ranking via reciprocal-rank fusion. Returns episodes with title, date, theme, and a fused relevance score. Requires the embedding index ( |
| archive_statsA | Report how many episodes are in the local indexed archive and the date range covered. Use to check whether the archive is built and how complete it is. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Each tool has a clearly distinct purpose. Tools like get_episode, get_episode_markdown, and get_transcript serve different retrieval needs; search tools are differentiated by scope and method (full-episode vs. segment, keyword vs. semantic). Descriptions further clarify overlap.
All tool names follow a consistent verb_noun pattern using snake_case (e.g., get_episode, search_segments). The convention is uniform across all 12 tools, enhancing predictability.
12 tools is well-scoped for a podcast archive and search server. It covers browsing, detailed retrieval, multiple search strategies, and statistics without being bloated or sparse.
The tool set covers core operations: episode retrieval, transcript access, various searches, and mention counting. A minor gap is the lack of a direct 'list all episodes' tool, but search tools can compensate.