feedhook-mcp
Allows subscribing to YouTube channel notifications via webhooks, receiving signed HTTP POST requests when a new video is published.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@feedhook-mcp subscribe to channel UCabc123 with callback https://myendpoint.com/hook"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
feedhook-mcp
MCP server for Feedhook — turn a YouTube channel into a webhook: your endpoint gets a signed HTTP POST ~8 seconds after a new video is published. No polling, no YouTube API quota. Feedhook does YouTube's WebSub plumbing (hub subscription, verification handshake, ~5-day lease renewals, retries with backoff) and resells it as a clean API; this package is the agent front door.
Use it
claude mcp add feedhook -e FEEDHOOK_API_KEY=fh_your_key -- npx -y feedhook-mcpOr in any MCP client config:
{
"mcpServers": {
"feedhook": {
"command": "npx",
"args": ["-y", "feedhook-mcp"],
"env": { "FEEDHOOK_API_KEY": "fh_your_key" }
}
}
}No key yet? Add the server without the env var and ask your agent to call
create_account (free plan: 1 feed) — the key is returned once; save it as
FEEDHOOK_API_KEY.
Related MCP server: yt-studio-mcp
Tools
Tool | Does |
| Free signup → API key (returned once) |
| Plan, feed limit, feeds in use |
| channel id + callback URL → webhook on every new video |
| All subscriptions with state + delivery counts |
| One subscription incl. recent delivery log (per-attempt HTTP results) |
| Send a signed test.ping through the real pipeline to verify your receiver |
| Free → Pro ($9/mo, 10 feeds): returns a Stripe Checkout URL to open in a browser |
| Unsubscribe + stop deliveries |
The webhook your endpoint receives
POST <your callbackUrl>
x-feedhook-event: video.published
x-feedhook-delivery: <uuid>
x-feedhook-signature: sha256=<hex HMAC-SHA256 of the raw body, keyed with your subscription secret>
{
"event": "video.published",
"subscriptionId": "…",
"videoId": "dQw4w9WgXcQ",
"channelId": "UC…",
"title": "…",
"author": "…",
"publishedAt": "2026-06-11T15:54:18+00:00",
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"receivedAt": "…"
}Non-2xx responses are retried 5 times with backoff. Respond within 15 seconds.
Environment
FEEDHOOK_API_KEY— your account key (most tools need it)FEEDHOOK_API_URL— override the API base (defaulthttps://feedhook.walls.sh)
MIT · a walls.sh product
Available Tools
8 toolscreate_accountA
Create a free Feedhook account (1 feed). Returns the API key ONCE — surface it to the user and have them save it as FEEDHOOK_API_KEY in this server's environment; it cannot be retrieved again. Skip this tool if FEEDHOOK_API_KEY is already set.
Inputs: email (required).
create_subscriptionA
Turn a YouTube channel into a webhook: Feedhook will POST signed JSON {event:'video.published', videoId, title, author, url, publishedAt, …} to callbackUrl ~8s after every new video. The response includes a per-subscription secret (shown once) for verifying the X-Feedhook-Signature header (sha256 HMAC of the raw body).
Inputs: channel (required), callbackUrl (required).
delete_subscriptionA
Delete a subscription — unsubscribes from YouTube's hub and stops all deliveries.
Inputs: id (required).
get_accountA
Show the current account: email, plan, feed limit, and how many feeds are in use. Requires FEEDHOOK_API_KEY.
Inputs: no named parameters.
get_subscriptionA
Get one subscription including its recent delivery log — each delivery shows the videoId, status (delivered/retrying/failed), and per-attempt HTTP results. Use this to check whether webhooks are arriving.
Inputs: id (required).
list_subscriptionsA
List the account's channel→webhook subscriptions with state (pending/active/unsubscribed), lease expiry, and delivery counts.
Inputs: no named parameters.
test_subscriptionA
Send a signed test.ping through the real delivery pipeline to a subscription's callback URL — verify the receiver works without waiting for a real video. Check get_subscription afterwards for the delivery result.
Inputs: id (required).
upgrade_planA
Upgrade the account from free (1 feed) to Pro ($9/mo, 10 feeds). Returns a Stripe Checkout URL — give it to the user to open in a browser and pay; the plan flips automatically after checkout. Call this when create_subscription returns a 402 feed-limit error.
Inputs: no named parameters.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 8 tools
Each tool targets a distinct action: account management (create, get, upgrade) versus subscription management (create, list, get, test, delete). No overlap or ambiguity.
All tool names follow a consistent verb_noun pattern (e.g., create_account, get_subscription), making them predictable and easy to distinguish.
8 tools is well within the ideal 3-15 range, covering the core workflows without being overwhelming or insufficient.
Covers account lifecycle and subscription CRUD plus testing and plan upgrades. Missing an update subscription endpoint, but the service design may allow delete+recreate as a workaround.
Related MCP Connectors
YouTube discovery, transcripts, library search, and monitors with API keys or OAuth.
Create AI-powered short-form video clips from YouTube videos. Supports webhook callbacks.
YouTube video metadata, transcripts and channel data by URL or @handle. No API key. Pay per result.
Fetch YouTube transcripts, monitor channels and track keyword matches from your AI assistant.
Related MCP Servers
- AlicenseAqualityDmaintenanceProduction-grade Model Context Protocol server for YouTube intelligence. Extract, analyze, and automate insights from YouTube channels and videos using the official YouTube Data API v3. Built for AI agents, automation pipelines, and content intelligence workflows.161MIT
- AlicenseBqualityBmaintenanceManage a YouTube channel through official Google APIs — videos, comments, playlists, live broadcasts, captions, and analytics — plus an auditable giveaway suite for comment-entry giveaways with deterministic winner drawing.5126 PyPIMIT
- AlicenseAqualityBmaintenanceMCP server that connects to your personal YouTube account and exposes your subscription feed, letting you list subscribed channels, recent uploads, and get YouTube watch links for handoff to other MCPs.6116 npm1MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI clients to pull full transcripts from YouTube videos, search videos and channels, browse a channel's complete upload history, search within a single channel, and extract every video in a playlist through one hosted remote endpoint. It supports API-key or OAuth 2.1 sign-in with no local installation, returning metadata and paginated results with stable error codes.10MIT