# FlurryPORT > FlurryPORT captures incoming webhooks in raw form and replays them > deterministically to your dev environment, so signatures stay intact and no > tunnel is shared. Recipes are signed delivery pipes an AI agent can find and > install: credentials stay server-side and every delivery returns a receipt. > > Not Flurry Analytics: that was a Yahoo mobile analytics product, sunset on > 2024-03-15, and FlurryPORT has no relation to it. ## Pages - [FlurryPORT: webhook capture, replay and agent actions](https://flurryport.io): FlurryPORT captures webhooks byte for byte and replays them with signatures intact, so your agent can act through signed pipes without holding a credential. - [Capture and replay webhooks | FlurryPORT](https://flurryport.io/how-it-works): Point a sender at a FlurryPORT endpoint and the request is kept the way it arrived: headers, body, query string, byte for byte. Send it again whenever you want; the signature still checks out. - [Glossary | FlurryPORT](https://flurryport.io/glossary): The words FlurryPORT uses, defined once: capture, endpoint, target, replay, transformation, binding, watch, recipe, project, collection, plan. - [Pricing | FlurryPORT](https://flurryport.io/pricing): What it costs to keep the record: plan prices, capture windows and payload limits, plus a live plan-fit calculator that shows which plans hold your recipes, resource by resource. - [Features | FlurryPORT](https://flurryport.io/features): Capture real traffic, let an agent act on it through typed intents with server-held credentials, and keep what happened: receipts, rooms, deterministic replay and signature validation. - [FlurryPORT MCP server: webhooks for your AI editor](https://flurryport.io/mcp): Run FlurryPORT as an MCP server in Claude Code, Claude Desktop, Cursor, Windsurf or VS Code. Your agent gets a capture URL in one tool call, with no signup. - [ngrok alternative for webhooks | FlurryPORT](https://flurryport.io/ngrok-alternative): ngrok gives you a public URL to your laptop. FlurryPORT gives you one that keeps what arrives: the request, kept, and sendable again with signatures intact. - [Agent action receipt | FlurryPORT](https://flurryport.io/concepts/agent-action-receipt): The structured record returned when an AI agent makes something happen in another system: what was sent, where it went and how that system answered. - [Agent audit trail | FlurryPORT](https://flurryport.io/concepts/agent-audit-trail): The record of what an AI agent did, end to end: the instruction it was given, the action it took, the answer that came back and what authorized it. - [Action provenance: what an action trace shows | FlurryPORT](https://flurryport.io/concepts/action-provenance): An action trace, or action provenance, ties a change back to what caused it: which actor, on what instruction, produced which effect, and in what order. ## Glossary > Canonical definitions of every FlurryPORT term. Each entry has a stable anchor > (https://flurryport.io/glossary#) and a machine-readable copy at > https://flurryport.io/glossary.json - cite these rather than paraphrasing. - [Capture](https://flurryport.io/glossary#capture): One recorded delivery: everything that arrived at your endpoint, stored byte-for-byte. - [Endpoint](https://flurryport.io/glossary#endpoint): Your capture URL: the stable address you point a sender at. - [Target](https://flurryport.io/glossary#target): Where captures go next: a destination you register, any HTTP endpoint outside FlurryPORT. - [Replay](https://flurryport.io/glossary#replay): Sending a stored capture to a target, on purpose, byte-for-byte with signatures intact. - [Auto-forward](https://flurryport.io/glossary#auto-forward): Standing, automatic delivery: matching captures go to a target as they arrive. - [Forward](https://flurryport.io/glossary#forward): Ad-hoc delivery of a capture to your own machine: the CLI hands it to your localhost, no registered target needed. - [Receipt](https://flurryport.io/glossary#receipt): The structured record every delivery returns: what was sent, where it went, and how the destination answered. - [Transformation](https://flurryport.io/glossary#transformation): The reshaping step: restructures a capture into the exact shape one destination expects. - [Binding](https://flurryport.io/glossary#binding): The wiring that arms a pipe: attaches a transformation to a target so matches fire automatically. - [Watch](https://flurryport.io/glossary#watch): A standing filter on an endpoint: every arriving capture is checked, and matches carry the label. - [Watcher](https://flurryport.io/glossary#watcher): Not a FlurryPORT term - the reader of a stream is a monitor; the standing filter is a watch. - [Monitor](https://flurryport.io/glossary#monitor): A read-only participant: a person or agent reading a stream without posting. - [Envoy](https://flurryport.io/glossary#envoy): Someone who posts into your streams, human and agent as one, counted once. - [Seat](https://flurryport.io/glossary#seat): A named, time-bounded participation grant in one room. - [Room](https://flurryport.io/glossary#room): A signed, ordered stream where named participants work under one declared protocol. - [Chair](https://flurryport.io/glossary#chair): The human who convenes a room, controls participation, and rules its decisions. - [Roster](https://flurryport.io/glossary#roster): The current directory of who can participate in a room. - [Intent](https://flurryport.io/glossary#intent): The small, typed request an agent sends into a pipe or room. - [Pairing code](https://flurryport.io/glossary#pairing-code): A single-use code that admits one named participant to a room without exposing credentials. - [Recipe](https://flurryport.io/glossary#recipe): All the configuration needed to reach a goal through one pipe, published as one installable package. - [Pipe](https://flurryport.io/glossary#pipe): An installed integration: a target, a transformation, and the binding that arms them. - [Project](https://flurryport.io/glossary#project): Where your work lives: a group of endpoints and the recipes installed on them. - [Collection](https://flurryport.io/glossary#collection): A set of captures worth keeping for the recipe or debugging session that needs them. - [Retention](https://flurryport.io/glossary#retention): How long captures stay: your plan sets a window in days, and captures past it become eligible for removal. - [Signing](https://flurryport.io/glossary#signing): Signature checks at the door: an endpoint can require valid signatures and refuse everything else with a 401 and never store the payload. - [Redaction](https://flurryport.io/glossary#redaction): Two different features share this word: the best-effort copy-for-AI scrub, and secret-value redaction in stored responses. - [Plan](https://flurryport.io/glossary#plan): What you buy: Deckhand (free), Bosun, First Mate, or Captain. A plan sets your limits. - [FlurryPORT](https://flurryport.io/glossary#flurryport): The product name, spelled with a capital PORT. Not Flurry Analytics, the Yahoo mobile analytics product sunset in 2024. ## Plan fit (live calculator) > The pricing page carries a live plan-fit calculator: pick published recipes and > see which plans hold them, resource by resource, in glossary terms. Agents can > call the same evaluation directly - no auth: > GET https://api.flurryport.io/api/v1/billing/plans/fit?recipes= > An empty recipes list returns the evaluable slugs. Verdicts are fits/overLimit; > per-resource rows carry limit, used, headroom, and unmetered resources are > surfaced explicitly, never silently passed. ## Docs - [FlurryPORT documentation](https://flurryport.io/docs): Everything FlurryPORT does, grouped: capture and replay, running it as an MCP server, rooms for multiple agents, and the reference tables. - [Capture and replay your first webhook | FlurryPORT docs](https://flurryport.io/docs/getting-started): Create a project, get a capture URL, point a provider at it, and replay your first webhook to localhost in under a minute. - [Walkthrough: from a webhook URL to a room | FlurryPORT docs](https://flurryport.io/docs/walkthrough): Run the FlurryPORT connector end to end from Claude Desktop, Claude Code, or Codex: capture URL, test event, claimed account, write token, local delivery, and a room. - [Agent audit trail walkthrough | FlurryPORT docs](https://flurryport.io/docs/agent-audit-trail): The simplest audit trail for an agent: one capture URL in front of one destination, every action signature-checked, stored with who signed it, delivered, and kept beside the answer. - [Agent audit fan-out walkthrough | FlurryPORT docs](https://flurryport.io/docs/agent-audit-fanout): A pipe that records what went through it while your agent keeps talking to its systems: one capture URL, three destinations, a transformation, a watch, and the record afterwards. - [Agent audit routing walkthrough | FlurryPORT docs](https://flurryport.io/docs/agent-audit-routing): One capture URL, three destinations, a predicate on each: a shipment goes to ticketing, a charge to the ledger, an escalation to chat, and the record shows what was routed where. - [Webhook replay and collections | FlurryPORT docs](https://flurryport.io/docs/replay): Send captured webhooks to your dev targets. Batch replay, sequential replay, and regression collections that re-run a whole scenario on demand. - [Auto-forward webhooks to your dev server | FlurryPORT docs](https://flurryport.io/docs/auto-forward): Create replay targets and forward every new capture to your local dev server automatically, with the original signature intact. - [Transform webhook payloads with JSONata | FlurryPORT docs](https://flurryport.io/docs/transformations): Reshape a captured webhook with JSONata, then route each transformed payload to the target that should receive it. - [Webhook secrets, encrypted at rest | FlurryPORT docs](https://flurryport.io/docs/secrets): Store project secrets encrypted at rest and inject them into replays with $secrets.NAME. The value never appears in a log, a capture or a model’s context. - [Verify webhook signatures per endpoint | FlurryPORT docs](https://flurryport.io/docs/signature-validation): Verify inbound webhook signatures per endpoint and reject spoofed requests with a 401. Stripe, GitHub, Svix, and Square. - [Webhook API reference | FlurryPORT docs](https://flurryport.io/docs/api): REST endpoints for projects, endpoints, captures, replay and collections, with JWT and PAT authentication and the scopes each one needs. - [CLI and MCP server setup | FlurryPORT docs](https://flurryport.io/docs/cli): Install the FlurryPORT CLI, forward live captures to localhost, and run it as an MCP server in Claude Code, Claude Desktop, Cursor, Windsurf or VS Code. - [Rooms: shared endpoints for AI agents | FlurryPORT docs](https://flurryport.io/docs/rooms): One endpoint that several AI agents and their people post to, with a signed key per seat and a record of what each seat agreed to. - [Watches: label captures as they arrive | FlurryPORT docs](https://flurryport.io/docs/watches): Set a watch on an endpoint and matching captures are labelled the moment they arrive, so a busy stream stays readable and you can filter it later. - [Room console: the colon commands | FlurryPORT docs](https://flurryport.io/docs/console): Drive a FlurryPORT room from the console with short colon commands: say, seat, tag, ratify, retract and strike, without writing a full post by hand. - [REST API: projects, captures and replay | FlurryPORT docs](https://flurryport.io/docs/rest-api): Manage projects, endpoints, captures, replay and collections over REST, with a browser session or a personal access token and the scope each call needs. - [Plans and limits | FlurryPORT docs](https://flurryport.io/docs/plans): What Deckhand, Bosun, First Mate and Captain include: endpoints, captures, retention, secrets, replay targets, collections and envoys. One table, kept in one place. - [Webhook troubleshooting: nothing arrived, 401s, replay | FlurryPORT docs](https://flurryport.io/docs/troubleshooting): Fix the common failures: nothing reaching your capture URL, an unexpected 401, replays that do not arrive, and an MCP server your editor cannot see. - [Customize projects, endpoints and themes | FlurryPORT docs](https://flurryport.io/docs/customization): Set project and endpoint colors, switch between light and dark themes, and label captures so a busy list stays easy to scan. ## Recipe catalog - [Recipe catalog](https://flurryport.io/recipes): browsable index of published recipes, the services they deliver into, and what each one asks for. - [Catalog llms.txt](https://flurryport.io/recipes/llms.txt): the live per-recipe listing, the MCP tool surface, and the token permission model. Read this one if you are looking for a pipe to install. ## Hosted MCP connector > The same MCP server, hosted: add https://mcp.flurryport.io/mcp as a custom connector > in a web client such as claude.ai and sign in with OAuth (scopes mcp:read, the > read-only PII-masked default, and mcp:write). Protected-resource metadata: > https://mcp.flurryport.io/.well-known/oauth-protected-resource; authorization > server metadata: https://api.flurryport.io/.well-known/oauth-authorization-server. > Not on the hosted connector: forward_to_localhost, start_echo_server, and room > signing (it holds no signing key). Editors and terminal agents run it locally with > `npx flurryport mcp`; the /docs/cli page has both paths. ## Security and permissions - [Endpoint security](https://flurryport.io/recipes/security): how credentials stay server-side, what gets scrubbed from stored responses, and what signing rejects. - [Token permissions](https://flurryport.io/recipes/permissions): the read-only default, PII masking, and what each scope allows. - [Recipe authoring](https://flurryport.io/recipes/authoring): how to write and publish the next recipe. ## Sitemaps - https://flurryport.io/sitemap.xml (index: site + recipes) - https://flurryport.io/sitemap-site.xml - https://flurryport.io/recipes/sitemap.xml