CCM
/MCP
SkillsMCPMarketplacesDigestToolsAdvertise

This week in Claude

Every Monday: Claude Code, Agent SDK, MCP, and the Anthropic platform moves worth your time.

Skills by Category
Frontend DevelopmentBackend & APIsTesting & QASecurityDevOps & CI/CDGit & Pull RequestsDocumentationCode Review & QualityAI & Agent BuildingSkill Development
MCP Servers by Category
Sales & MarketingWeb & Browser AutomationDatabasesAI & LLM ToolsCloud & InfrastructureCommunication & MessagingDeveloper ToolsDesign & CreativeDocuments & KnowledgeSearch & Web Crawling
Marketplaces by Category
AI Agents & OrchestrationLLM IntegrationDevelopment ToolsFrontend & UIBackend & APIsDatabasesTesting & Code QualityDevOps & CloudSecurity & ComplianceGit & Version Control

Claude Code Marketplaces

Discover Claude Code plugins, extensions, and tools. Automatically updated directory of Anthropic Claude AI marketplaces with development tools, productivity plugins, and integrations.

Resources

  • Browse Skills
  • Browse MCP Servers
  • Browse Marketplaces
  • Skill index
  • MCP index
  • Marketplace index
  • Plugins Reference

Community

  • About
  • Tools
  • Feedback
  • Privacy Policy
  • Advertise

Built for the Claude Code community with Claude Code by mertbuilds.com

Independent project, not affiliated with Anthropic
liplus-project avatar

Github Webhook Mcp

liplus-project/github-webhook-mcp
STDIOregistry active
Summary

Connects Claude to GitHub events through Cloudflare Workers instead of running a local webhook receiver. Install the GitHub App on your repos, then use MCP tools like get_pending_status, list_pending_events, and mark_processed to query and triage webhooks stored in a Durable Object. Handles push, pull request, and check run events with optional WebSocket streaming for real-time notifications in Claude Code CLI. The local bridge polls the edge storage over HTTP, so no tunneling or exposed ports. Useful when you want Claude to monitor CI results, PR activity, or commit notifications without setting up ngrok or a dedicated server.

CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →

github-webhook-mcp

Real-time GitHub webhook notifications for Claude via Cloudflare Worker + Durable Object.

Architecture

GitHub ──POST──▶ Cloudflare Worker ──▶ Durable Object (SQLite)
                                           │
                                           ├── MCP tools (Streamable HTTP)
                                           ├── WebSocket real-time stream
                                           │
                          ┌────────────────┘
                          │
     Desktop / Codex: .mcpb local bridge ──▶ polling via MCP tools
     Claude Code CLI: .mcpb local bridge ──▶ WebSocket → channel notifications
  • Cloudflare Worker receives GitHub webhooks, verifies signatures, stores events in a Durable Object with SQLite.
  • Local MCP bridge (.mcpb) proxies tool calls to the Worker and optionally connects via WebSocket for real-time channel notifications.
  • No local webhook receiver or tunnel required.

Breaking change: MCP protocol revision 2026-07-28

From this release the Worker serves MCP protocol revision 2026-07-28 only. It keeps no compatibility lane for the previous revision.

  • Bridge versions older than this release stop working. They open a session with initialize, which the Worker no longer answers. The failure is quiet: the bridge does not crash, it returns the protocol error as tool output text.
  • Real-time channel notifications keep arriving, which hides the breakage. The /events stream is not MCP and is unaffected, so a stale bridge still pushes event summaries while every tool call — including mark_processed — fails. The pending queue stops being cleared even though notifications look healthy.
  • Restart the MCP client to pick up the new bridge. The bridge is launched with npx, and @latest is resolved at process start — an already-running Claude Desktop, Claude Code, or Codex keeps the copy it started with, however new the published version is. Quit it fully and reopen.
  • Pinning the bridge version leaves you stuck. If your MCP client config pins a version older than this release, restarting does not help; remove the pin (or move it forward) first.

The Worker and the bridge ship together, so a bridge from this release or later needs no configuration change.

Prerequisites

ComponentRequired
Node.js 18+MCP server
Cloudflare accountWorker deployment (self-hosting)

Getting Started

1. Install the GitHub App

Install the GitHub Webhook MCP app on your GitHub organization or account:

  1. Visit the GitHub App installation page
  2. Select the organization or account to install on
  3. Choose which repositories to grant access to (or all repositories)
  4. Approve the requested permissions

Note: When the app requests new permissions after an update, you must approve them in your GitHub notification or the app's installation settings. Webhooks will not be delivered until permissions are accepted.

Important: Do not create a separate repository webhook for the same endpoint. The GitHub App handles all webhook delivery — a repository webhook would cause duplicate or malformed requests.

2. Set up the MCP client

Continue to the Installation guide to connect your AI assistant to the webhook service.

Installation

See the Installation wiki page for the full setup guide, including:

  • Quick Start with the preview instance
  • MCP Client Setup for Claude Desktop, Claude Code CLI, and Codex
  • Self-Hosting Guide for Cloudflare Workers deployment

Updating

A published release does not reach a running client on its own. npx resolves the package version once, when the process starts — including when the client config pins @latest — so an MCP client that is already running keeps the version it started with no matter what the registry serves. Restart the MCP client (Claude Desktop, Claude Code, Codex) to pick up a new release. The restart is what moves the client onto the new version.

Check what the registry actually has with --prefer-online. The npm CLI caches registry metadata, so a bare npm view can still report the previous version shortly after a publish:

npm view github-webhook-mcp version --prefer-online

Usage Examples

Example 1: Check pending webhook status

User prompt:

"Are there any new GitHub notifications?"

Expected output: The AI calls get_pending_status and returns a summary:

You have 3 pending webhook events:
- 2 push events
- 1 pull_request event

Example 2: Inspect a specific event

User prompt:

"Show me the details of the latest pull request event."

Expected output: The AI calls list_pending_events to find the PR event, then get_event with the event ID to retrieve the full payload:

PR #42 "Fix login timeout" was opened by @alice in repo acme/web-app
  Branch: fix/login-timeout → main
  Status: open
  Changed files: 3

Example 3: Process events after review

User prompt:

"I've reviewed all the push notifications, mark them as done."

Expected output: The AI calls list_pending_events to find push events, then clears them with a single mark_processed({ event_ids: [...] }) call:

Marked 2 push events as processed:
- Push to main by @bob (3 commits)
- Push to develop by @alice (1 commit)

Example 4: Monitor CI status via webhooks

User prompt:

"Did the CI checks pass on my latest PR?"

Expected output: The AI calls list_pending_events to find check_run events related to the PR, then get_event for details:

CI results for PR #42 "Fix login timeout":
- build (ubuntu-latest): ✓ passed
- lint: ✓ passed
- test (node-18): ✓ passed
All checks passed.

MCP Tools

ToolDescription
get_pending_statusLightweight snapshot of pending event counts by type
list_pending_eventsSummaries of pending events (no full payloads)
get_eventFull payload for a single event by ID
get_webhook_eventsFull payloads for all pending events
mark_processedMark events as processed (event_id for one, event_ids for a batch)

Event Retention

Stored events are purged automatically to bound Durable Object storage. The Worker runs a time-based sweep on a Durable Object Alarm (daily), so cleanup happens even for tenants that never call mark_processed:

Event classRetention windowEnv varDefault
Processed (mark_processed called)older than the window is deletedPURGE_AFTER_DAYS3 days
Unprocessed (never marked)older than the window is deletedUNPROCESSED_PURGE_AFTER_DAYS90 days
  • The longer window for unprocessed events is intentional: unprocessed means user-unseen, so the safety margin before dropping is wide (the 3-day vs 90-day asymmetry is by design).
  • The sweep runs via a Durable Object Alarm on a daily cadence and reschedules itself, so it fires independently of consumption. Processed events are also purged immediately on mark_processed for promptness; the Alarm sweep is the guarantee that covers abandoned tenants.
  • Both windows are configurable in worker/wrangler.toml ([vars]). Setting a value to 0 purges that class immediately on sweep.
  • Known limitation: the windows bound event age, not volume. A high-rate, never-consumed tenant can still reach Cloudflare's 1 GB-per-DO ceiling before the 90-day window applies. A volume-based hard cap is tracked separately.

Monorepo Structure

worker/       — Cloudflare Worker + Durable Objects
local-mcp/    — Local stdio MCP bridge (TypeScript, dev)
mcp-server/   — .mcpb package for Claude Desktop
shared/       — Shared types and utilities

Privacy Policy

Events are stored in a Cloudflare Durable Object (edge storage). The local MCP bridge proxies tool calls to the Worker and does not store event data locally.

  • Extension privacy policy: https://smgjp.com/privacy-policy-github-webhook-mcp/

Support

  • GitHub Issues: https://github.com/Liplus-Project/github-webhook-mcp/issues
  • Wiki (EN / JA)
  • Requirements: docs/0-requirements.md

Related

  • Liplus-Project/liplus-language — Li+ language specification
Featured
CodeRabbit
CodeRabbit
AI writes the code. CodeRabbit catches the slop.
Try For Free →
inference shell
inference shell
create and run specialised agents in minutes
build now →
MCP-ready Email SendingMCP-ready Email Sending
MCP-ready Email Sending
Plug Mailtrap into your AI workflow and let it handle the email.
Connect Mailtrap MCP →
Make your agent a DeFi expert
Make your agent a DeFi expert
Agent, run crypto. Access onchain data & trade routes via 1inch.
Install now →
Capacitor - Shared memory for your team’s coding agents.
Capacitor - Shared memory for your team’s coding agents.
Make coding agent sessions - Searchable, Shareable, Vendor-neutral & Scored.
Try For Free →
CodeScene MCP ServerCodeScene MCP Server
CodeScene MCP Server
Your agent targets a perfect 10 Code Health score. Deterministic. Every commit.
Try For Free →
Give your AI the whole web as clean markdownGive your AI the whole web as clean markdown
Give your AI the whole web as clean markdown
Integrate web data into your AI product. One API to scrape website & brand data.
Get API Key Now →
belt - the only tool your agent needs
belt - the only tool your agent needs
belt cli automatically finds the best tools and skills for your agent. image, video, music, tts...
one prompt install →

Configuration

WEBHOOK_WORKER_URL

URL of your deployed Cloudflare Worker endpoint (default: https://github-webhook.smgjp.com)

WEBHOOK_CHANNEL

Set to '0' to disable SSE channel notifications (default: enabled)

Categories
Cloud & InfrastructureDeveloper ToolsAutomation & WorkflowsMedia & Entertainment
Registryactive
Packagegithub-webhook-mcp
TransportSTDIO
UpdatedApr 2, 2026
View on GitHub

Related Cloud & Infrastructure MCP Servers

View all →
loved0543 avatar
kdata-gate

loved0543/kdata-gate

Korean market data for AI agents and e-commerce sellers sourcing from Korea — K-beauty/K-food/K-pop product search, Naver search trends, Korean stocks with English DART disclosure summaries, apartment transactions, tourism, and weather. English JSON. 13 tools. Free pilot: preview works without any key; self-serve free keys at https://kdata-gate.vercel.app
loved0543 avatar
kdata-gate

loved0543/kdata-gate-271c2c5b

Korean market data for AI agents and e-commerce sellers sourcing from Korea — K-beauty/K-food/K-pop product search, Naver search trends, Korean stocks with English DART disclosure summaries, apartment transactions, tourism, and weather. English JSON. 13 tools. Free pilot: preview works without any key; self-serve free keys at https://kdata-gate.vercel.app
malkreide avatar
Zh Education Mcp

malkreide/zh-education-mcp

Canton and City of Zurich education data: schools, statistics, infrastructure
mcp-dir avatar
Wise

mcp-dir/wise-mcp-f4daba88

# Wise MCP da Wise (https://wise.com), acesso à conta multi-moeda via Personal Token + chave SCA. Lê profiles, balances, transferências, atividades e, crucialmente, extratos completos por moeda incluindo CARD_TRANSACTION (compras com o cartão Wise), que o conector Open Finance brasileiro (Pluggy) não sincroniza. Servidor stateless rodando em Cloudflare Workers; credenciais ficam só na WCA da plataforma. Funciona em qualquer cliente MCP. Servidor remoto: `https://api.mcp.ai/p_wise`
moda.ai avatar
Remote Camera

moda.ai/remote-camera

Capture photos remotely from mobile devices via S3-backed upload URLs
mishaal-cloud avatar
Ascend GTM Gateway

net.ascendgtm/gateway

34-tool GTM gateway: CRMs, ad platforms, analytics, Google Workspace, AWS, and LLM orchestration.