fetchYoutube
Retrieve all videos from the Goose YouTube channel using Content Fetcher MCP to track content updates across sessions.
Instructions
Fetch ALL YouTube videos from the Goose channel.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/server.ts:70-82 (handler)The handler function that fetches YouTube videos from the specified channel using RSS parser and maps them to ContentItem objects.async function fetchYoutube(): Promise<ContentItem[]> { const feed = await rssParser.parseURL( `https://www.youtube.com/feeds/videos.xml?channel_id=${YOUTUBE_CHANNEL_ID}` ); return feed.items.map((item) => ({ id: item.id || item.link || "", title: item.title || "", url: item.link || "", published_at: item.pubDate || "", type: "video" as const, })); }
- src/server.ts:133-138 (registration)Registration of the fetchYoutube tool with FastMCP server, including empty input schema and execution that calls the handler.server.addTool({ name: "fetchYoutube", description: "Fetch ALL YouTube videos from the Goose channel.", parameters: z.object({}), execute: async () => JSON.stringify(await fetchYoutube()), });
- src/server.ts:30-36 (schema)Type definition for ContentItem used as output type for fetchYoutube and other fetch tools.interface ContentItem { id: string; title: string; url: string; published_at: string; type: "video" | "blog" | "release"; }
- src/server.ts:136-136 (schema)Zod input schema for the tool (empty object, no parameters).parameters: z.object({}),