Alerts don't have to stop at your inbox. Every saved search can also post to Slack or feed a Clay table, and ChatGPT or Claude can answer from the same data once you paste in one link. Nothing here needs a developer: each recipe below is a couple of steps, mostly copy-and-paste.
Pick your recipe
| You want | Recipe | Effort | Plan |
|---|---|---|---|
| New raises announcing themselves in a team channel | Slack | Two steps | Any paid plan |
| Filings landing in a Clay table, enriched, then pushed to your CRM | Clay | Two steps | Max |
| A reason to call back when the hiring budget lands | The +60-day second touch | One checkbox | Any paid plan |
| To know who on an existing client list just filed | Bulk list match | One upload | Max |
| To ask ChatGPT or Claude about new filings | MCP | Paste one link | MCP |
| Filings inside your own CRM, dashboard, or scripts | The API reference | Three steps | MCP |
New here? Start with Slack. It works end to end in five minutes, the whole team sees the result, and every other recipe reuses the same Save-this-territory dialog you'll have just learned.
Slack: a territory channel that pings itself
One message per alert per day, the night after the nightly run picks up the filing.
- In Slack: Apps → Incoming Webhooks → Add to Slack, pick the channel
(say
#new-raises-tx), copy the webhook URL (https://hooks.slack.com/services/…). - On the feed, set your filters, hit Save this territory, and paste the URL into Slack webhook.
Each matching company arrives as one line: name, city/state, amount (or undisclosed), sector with its provenance, filed date, site and EDGAR links. Available on every paid plan, same as email alerts.
Clay: the Form D source for Clay tables
Point a saved search at a Clay webhook and every matching company lands as a table row the night we pick up its filing. Then enrich with your own Clay credits (emails, headcount, tech stack) and push to your CRM. You bring the enrichment; we bring the filing-dated signal, fresh from EDGAR.
- In Clay: New table → Import data → Monitor a webhook; copy the webhook URL.
- On the feed, save your search with the URL in Outbound webhook (Max plan).
One JSON POST per company, one Clay row each, no parsing: the filing fields the CSV export carries, already split into columns Clay understands.
Each POST carries event, filter, matched_on,
company, location, state, filed,
amount_usd, stage, sector,
sector_provenance, description, website,
edgar_url, accession and takeoff_url.
The same field names as the CSV export; amount_usd: null means the filer
declared an indefinite amount, never zero. takeoff_url is there only for
filings that have a published page on this site. Any HTTPS endpoint works the same way
(the alert's name rides in an X-TakeoffRadar-Filter header).
Webhooks carry fresh filings only (no +60-day replays, so your table never needs deduping), up to 20 companies per alert per day.
The second touch: +60 days
Founders drown in "congrats on the raise" the week the news breaks. Then the inbox goes quiet right as the hiring budget lands. Tick Second touch at +60 days on any alert and the companies you saw at filing time come back exactly two months later, flagged as second-touch, in your email and Slack. The counter-play, on a timer.
Bulk list match: "who on my list filed?"
Upload a CSV of company names on your My radar page (first column, up to 5,000 names) and get back a CSV with a row per match (filed date, amount, sector, website, EDGAR link) and a No row for everything else. One upload, one download, no setup at all. Max plan.
Also scriptable, for a recurring check:
curl -X POST -H "Authorization: Bearer YOUR_SESSION_TOKEN" \
--data-binary @accounts.csv "https://form-d-radar-paid.nicholas-9e7.workers.dev/match.csv"
Matching is deliberately conservative: we match names exactly, ignoring capitals,
punctuation, and endings like Inc or LLC, and we never guess at near matches,
because two different companies can share a name. A shared name returns every
match; the match_type column and the EDGAR link tell you what you're
looking at before you call.
MCP: ask an AI assistant about new filings
The data speaks the Model Context Protocol, so ChatGPT, Claude, or any MCP client can pull filings in the middle of a conversation: who filed in Illinois this week, and draft me an intro to the top three. It is the MCP plan's namesake, at 1,000 calls a day.
Setup, without a terminal
- On your My radar page, under API keys, click
Create connector link. You get a URL that looks like
https://form-d-radar-paid.nicholas-9e7.workers.dev/mcp/tkc_…. It is shown once, so copy it before you leave the page, and treat it like a password: anyone holding it can read filings on your account. - In your assistant, add it as a custom connector and paste the link as the server URL. In Claude this is Settings, then Connectors, then Add custom connector; in ChatGPT it is Settings, then Connectors. The exact wording moves around as those apps change, but the field you want is the one asking for a URL.
- Ask it something. What was filed in Illinois this week? is enough to prove it is connected.
Setting up a second app? Create a second link rather than reusing the first. Each one revokes on its own, so losing a laptop costs you one connector instead of all of them. Revoke any of them from the same panel; the change takes effect immediately.
Setup, if you live in a terminal
An API key in a header works too, and is the better fit for scripts and servers:
claude mcp add --transport http takeoff https://form-d-radar-paid.nicholas-9e7.workers.dev/mcp \
--header "Authorization: Bearer tkr_YOUR_KEY"
Connector links reach the MCP server only. An API key on the MCP plan also reaches the REST API.
What it can do
Three tools: new_this_week (the open question, no arguments needed),
search_filings (state, sector, minimum amount, date range,
cursor-paginated) and get_filing (one accession). Three ready-made
prompts come with it, so a client that shows them gives you Build my call list for
this week, What was filed in my state, and Draft outreach about a
filing as one click. Same rows, same provenance fields, same daily budget as the
REST API.
search_filings and get_filing also
return two more objects per row: what the company's own public job board showed the last
time we read it, and whether it sponsors work visas, each carrying the date it was read.
Both are left off a company we have not observed rather than returned as zeros. The
API reference says what each one holds and how long an observation
counts for.
No connector, no setup: the feed's Copy for ChatGPT (or any AI) button puts your filtered view on your clipboard as a table, up to 100 filings at a time, ready to paste into whichever assistant you already have open. Each row carries who to ask for, the company's site and what it does, so a paste is enough to build a call list.