MCP server and API
Work with your Needle leads from your AI assistant
Needle finds people on Reddit, Hacker News, forums and other communities who need a product like yours, scores them by buying intent, and drafts replies you post yourself. The MCP server lets Claude Code, Cursor, Windsurf and other MCP clients do that work with your account.
On Growth and Scale. Needle never posts on your behalf.
What you can ask
Talk to your assistant the way you would talk to a teammate. Here is what happens behind a few common requests.
“Who should I reply to today?”
The assistant calls get_leads. By default it returns only actionable leads (hot leads and posts worth engaging) that are still in your inbox, newest first.
“Draft replies for my top 5 leads”
It reads each lead with get_lead, then calls draft_reply. You get two drafts per lead, a best and an alternate, in your brand voice. Each draft call uses one of your daily reply drafts.
“Find people switching from <competitor> this week”
get_leads filters by intent type, including switching, and by date. For a competitor you do not monitor yet, search runs a fresh live search.
“Summarise this week’s pain points with quotes”
It pulls this week’s pain leads and their full post text, and can add get_trending_problems for problems people are discussing across communities.
“Search Reddit and Hacker News for “crm for freelancers””
search takes 1 to 5 keywords and returns up to 10 leads per network and 40 in total. It can take a few minutes, so the assistant checks back with get_search.
The 9 tools
Your assistant picks the right tool for each request. Each successful call counts as one API call, except get_usage and get_search, which are free.
| Tool | What it does | Effect | Quota |
|---|---|---|---|
| list_brands | Lists the brands (products) your account monitors, with their keywords, networks and schedule. | Read-only | 1 call |
| get_leads | Returns saved leads, newest first. Filter by brand, intent type, network and date. Up to 50 per page. | Read-only | 1 call |
| get_lead | Returns one lead with its full post text (up to 4,000 characters), tier, intent and the evidence sentence. | Read-only | 1 call |
| update_lead_status | Marks up to 100 leads as inbox, replied, done or dismissed. | Changes triage status in Needle only. Nothing is posted. | 1 call |
| search | Runs a live search for 1 to 5 keywords across community networks. Returns a search_id and the best leads found. | Starts a search. Uses one daily search run. | 1 call |
| get_search | Returns the status and leads of a search. Used to check back on a search that is still running. | Read-only | Free |
| draft_reply | Writes two reply drafts (best and alternate) for one lead, in your brand voice. | Uses one daily reply draft. Nothing is posted. | 1 call |
| get_trending_problems | Lists problems people are discussing across communities, ranked by how much they are trending. Not tied to your brands. | Read-only | 1 call |
| get_usage | Shows your plan, API calls left this month, and searches and drafts left today. | Read-only | Free |
A search can take a few minutes. search returns a search_id straight away, and the assistant calls get_search about every 30 seconds until the leads are ready. Full parameters and errors are in the MCP docs.
Set it up
Any MCP client that lets you set a request header can connect today.
Choose Growth or Scale
The API and MCP server come with Growth and Scale. Solo does not include API access.
Create a key
In Needle, open Settings → API & MCP and create a personal API key. It starts with ndl_live_.
Add Needle to your client
Paste one of the snippets below and replace ndl_live_… with your key.
Claude Code
Run this in your terminal.claude mcp add --transport http needle https://api.useneedle.net/mcp --header "Authorization: Bearer ndl_live_…"Cursor and Windsurf
Add this to your mcp.json.{
"mcpServers": {
"needle": {
"url": "https://api.useneedle.net/mcp",
"headers": {
"Authorization": "Bearer ndl_live_…"
}
}
}
}Other MCP clients
Use these details in any client that supports remote servers with custom headers.
- URL
- https://api.useneedle.net/mcp
- Transport
- Streamable HTTP, stateless
- Auth header
- Authorization: Bearer ndl_live_… (or x-api-key)
- MCP revisions
- 2025-11-25 and 2026-07-28
Coming soon: claude.ai and ChatGPT. One-click claude.ai custom connectors and ChatGPT apps are not available yet. They need OAuth sign-in, which we are adding. Until then, use Claude Code, Cursor, Windsurf or another client that accepts a header.
How keys work
Every request carries a personal API key. You decide what each key can do and how long it lives.
One personal key per use
Create keys in Settings → API & MCP. You can have up to 10 active keys, so each tool or script can get its own.
Scopes per key
Choose what each key may do. A key for reporting can stay read-only.
Optional expiry
Set a key to expire after 30, 90, or 365 days, or keep it until you revoke it.
Revoke anytime
A revoked key stops working within seconds. Create a new one when you need it.
Headers, never URLs
Send the key as Authorization: Bearer or x-api-key. Never put it in a URL, where it can end up in logs and browser history.
Same account, same limits
The assistant works with your brands and leads. Searches and drafts share your daily limits with the dashboard.
Limits and plans
The API and MCP server are on Growth and Scale. Solo has no API access.
Growth $49/mo
1,000
API calls a month
Scale $149/mo
10,000
API calls a month
- Each successful tool call counts as one. get_usage and get_search are free.
- Rate limits: 60 requests a minute per key, 300 a minute per account.
- Searches and reply drafts also use your plan’s daily limits, shared with the dashboard.
- Up to 10 active keys per account.
Security and privacy
Your assistant gets the access you give it, and nothing gets posted in your name.
Keys are hashed
Needle stores a hash of each key, never the key in plain text.
Needle never posts
No tool posts, replies or messages anyone. Drafts are text for you to review and post yourself.
Read-only keys
Scope a key to read-only tools when the assistant only needs to look.
Instant revoke
If a key leaks or a laptop goes missing, revoke the key and it stops working at once.
Prefer plain HTTP? Use the REST API
The same keys work with the REST API, for n8n, Make, Zapier, Clay and your own scripts.
- Base URL
- https://api.useneedle.net/v1
- OpenAPI 3.1 spec
- https://api.useneedle.net/v1/openapi.json
REST API
Leads from the last 24 hours.curl https://api.useneedle.net/v1/leads?since=24h -H "Authorization: Bearer ndl_live_…"Questions
What is the Needle MCP server?
Which AI assistants can I connect today?
Which plans include the MCP server and API?
How are API calls counted?
Can the assistant post replies for me?
How do I keep my API key safe?
Why does a search take a few minutes?
Can I use Needle from n8n, Make, Zapier or Clay?
Bring your leads into your assistant
Choose Growth or Scale, create a key in Settings, and ask your assistant who to reply to today.
Cancel anytime