git404hub

what is mcp-signal fr?

roee-tsur/mcp-signal — explained in plain English

Analysis updated 2026-05-18

2TypeScriptAudience · developerComplexity · 3/5Setup · easy

tl;dr

A tiny, dependency-free telemetry SDK for tracking usage inside sandboxed MCP widgets in Claude, ChatGPT, and similar AI apps, forwarding events past the host's security limits.

vibe map

mindmap
  root((mcp-signal))
    What it does
      Tracks widget usage
      Auto-captures lifecycle events
      Bridges past sandbox CSP
      Custom track events
    Tech stack
      TypeScript
      MCP
      PostHog adapter
    Use cases
      Analyze how an MCP widget is used
      Send events to PostHog or a webhook
      Debug widget errors in a sandbox
    Audience
      Developers building MCP widgets
      Claude and ChatGPT app builders
    Privacy
      No user identity tracked
      No fingerprinting
      Developer controls what is sent

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Track whether an interactive MCP widget loads and which controls users click.

VIBE 2

Route widget analytics events through your own MCP server to PostHog without changing sandbox security settings.

VIBE 3

Catch uncaught errors happening inside a sandboxed AI app widget.

what's the stack?

TypeScriptMCPPostHog

how it stacks up fr

roee-tsur/mcp-signal4ssh1/mine-sweeperachawla19/intuitcode-extension
Stars222
LanguageTypeScriptTypeScriptTypeScript
Last pushed2026-01-31
MaintenanceMaintained
Setup difficultyeasymoderatemoderate
Complexity3/52/54/5
Audiencedevelopervibe coderdeveloper

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · easy time til it works · 30min

Production use with the bridge requires registering a tool on your own MCP server.

in plain english

mcp-signal is a small analytics toolkit built specifically for interactive widgets that run inside AI assistant apps like Claude or ChatGPT, or other tools that use the Model Context Protocol, known as MCP. These widgets run inside a locked down sandbox for security, which normally blocks the regular web analytics scripts developers are used to. This project fills that gap: it tracks how a widget is being used, such as whether it loads, which buttons people click, and where users stop engaging, without needing any dependencies and adding very little to the page's size. The core idea is a small piece of code you add to your widget that automatically captures basic lifecycle events, like the widget loading, becoming visible, being hidden, or encountering an error, and lets you record your own custom events for anything else worth tracking. Getting started can be as simple as printing events to the browser console for testing. For real production use, the recommended approach is what the project calls a bridge. Because the sandboxed widget usually cannot make its own network requests to an outside analytics service, events are instead sent through a special tool call on your own MCP server, which is invisible to the AI model and does not appear in its context, and your server then forwards the data wherever you want it to go, such as PostHog or a custom webhook. This avoids needing to change security settings on the widget and keeps any analytics keys safely on the server rather than exposed in the widget's code. There is also a more direct option where the widget sends data straight to a destination itself, though that path requires explicitly allowing that destination through the widget's security policy, and the package can generate that configuration for you. The project is built with production use in mind, batching events together, retrying failed sends with increasing delays, and offering a hook to redact or drop sensitive data before it is sent. It states plainly that it does not track individual user identity or fingerprint devices, and that developers control exactly what data gets collected. It ships with adapters for a few common destinations already built in, and documents how to write a custom one if needed.

prompts (copy fr)

prompt 1
Show me how to add mcp-signal's console adapter to my MCP widget to see my first tracked events.
prompt 2
Help me set up the bridge adapter so my widget's events reach PostHog through my MCP server.
prompt 3
Explain how mcp-signal keeps analytics events invisible to the AI model when using the bridge.
prompt 4
Walk me through writing a custom adapter for mcp-signal to send events to my own backend.

Frequently asked questions

what is mcp-signal fr?

A tiny, dependency-free telemetry SDK for tracking usage inside sandboxed MCP widgets in Claude, ChatGPT, and similar AI apps, forwarding events past the host's security limits.

What language is mcp-signal written in?

Mainly TypeScript. The stack also includes TypeScript, MCP, PostHog.

How hard is mcp-signal to set up?

Setup difficulty is rated easy, with roughly 30min to a first successful run.

Who is mcp-signal for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.