# entra-news-podcast [Health: Active]

**Category:** 🎙️ Podcasts  
**Repository:** https://github.com/darrenjrobinson/EntraNewsPodcastMCPServer  
**GitHub Stars:** 2  
**npm Downloads (last month):** 460  
**Views:** 2  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/entra-news-podcast

## Description
Search Entra.Chat podcast transcripts — Merill Fernando's Microsoft Entra podcast on YouTube

## Tools
Capabilities this server exposes over MCP:

- **search_entra_podcasts** — Search all episode transcripts. Modes: `hybrid` (default, BM25 + semantic via RRF), `semantic`, `keyword`. Results include episode, guests, and timestamped YouTube links.
- **get_episode** — Full episode by `video_id` or `date` — metadata, guests with profile links, chapters with timestamped links, and the complete transcript with `[mm:ss]` markers.
- **list_episodes** — Browse the archive; filter by `year`, `month`, and/or `guest` name.
- **list_guests** — Directory of all podcast guests with profile links, appearance counts, and latest appearance.
- **get_guest** — One guest by name: profile links and **every episode they appeared on**.
- **find_tool_mentions** — Community tools discussed on the show, with timestamped links to hear the discussion.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "entra-news-podcast": {
    "command": "npx",
    "args": ["-y","entra-news-podcast-mcp"]
  }
}
```

## Documentation

## What entra-news-podcast does

entra-news-podcast indexes transcripts from the Entra.Chat podcast, Merill Fernando’s Microsoft Entra-focused YouTube series. It lets an MCP-compatible assistant search spoken discussions and open the relevant point in the video through timestamped YouTube URLs. The archive includes episode metadata, guests, chapters, complete transcripts, and references to community tools discussed during episodes.

The server is suited to questions such as where a topic was discussed, which episodes featured a particular guest, or what the show covered during a given month. It is also useful for locating discussions about Entra ID features, identity subjects, and tools mentioned by the host or guests.

## How it works

The package runs through Node.js and downloads a SQLite transcript database from GitHub Releases on first launch. The database is cached locally under `~/.entra-news-podcast-mcp/`, or under the equivalent Windows user directory, and update checks occur no more than once every seven days. A local database path can replace the downloaded file through `ENTRA_PODCAST_DB_PATH`.

Transcript search supports three modes:

- `keyword` uses BM25 matching with stemming and works without an API key.
- `semantic` uses OpenAI-generated embeddings.
- `hybrid` combines keyword and semantic rankings with Reciprocal Rank Fusion.

The published archive is refreshed weekly from the Entra.Chat YouTube playlist. Transcripts come from YouTube captions, preferring uploaded captions when available and using auto-generated captions otherwise.

## Setup and configuration

Node.js 22 or newer is required. For a standard installation, run the package through npx:

```bash
npx -y entra-news-podcast-mcp
```

Claude Desktop, Cursor, and VS Code configurations run that command as a stdio MCP server. Claude Code can add it with:

```bash
claude mcp add entra-podcasts -- npx -y entra-news-podcast-mcp
```

Set `OPENAI_API_KEY` when semantic or hybrid retrieval is needed. It is optional: keyword search remains available without it. Set `ENTRA_PODCAST_DB_PATH` to use a local SQLite database instead of the downloaded cache. Removing the cache directory forces a fresh database download.

## Tools and capabilities

- `search_entra_podcasts` searches all episode transcripts and returns episode details, guests, and timestamped video links.
- `get_episode` retrieves an episode by video ID or date, including metadata, guest profile links, chapters, and a full transcript with `[mm:ss]` markers.
- `list_episodes` browses episodes with optional year, month, and guest filters.
- `list_guests` returns guest profiles, appearance totals, and each guest’s latest appearance.
- `get_guest` finds a guest by name and lists every episode they appeared in.
- `find_tool_mentions` locates community tools discussed on the podcast and links to the relevant moments.

## Limitations and notes

Search quality depends on the available YouTube captions. The archive is refreshed weekly rather than continuously, so newly published episodes may not appear immediately. Semantic and hybrid modes require an OpenAI API key and incur embedding-query costs; keyword mode avoids that dependency.

The repository also includes ingestion workflows for maintaining the database. Local ingestion requires `yt-dlp`, and caption retrieval can require a configured Proof-of-Origin token provider when YouTube rejects caption requests. Those ingestion requirements apply to rebuilding or updating a database, not to using the packaged server with its downloaded release database.

_Full upstream README: https://allmcps.com/mcp/entra-news-podcast/readme_

