Onsa is a remote MCP server that gives an AI agent 13 tools, among them continue_campaign, fetch_leads, find_leads. It answers at https://api.onsa.ai/api/mcp over streamable HTTP, and it listed its tools to an anonymous client, so no sign-in was needed for that. Our probes reached it 7 of 7 times since 8 September 2026; the last check, on 18 October 2026, succeeded.
Find scored B2B leads, read campaign replies and send approved LinkedIn outreach.
Description as the publisher wrote it.
| Tool | What it does |
|---|---|
continue_campaign | Sends an instruction to the agent inside an existing campaign and returns a jobId to read with fetch_leads. This is the tool that grows or steers a cohort in place - 'find 5 more like these', 'look at Singapore and the Gulf instead of US in Inputs: campaignId, message |
fetch_leads | Returns the status and any results of a find_leads job, by jobId. Status values: "pending" - the search is still running, though `leads` may already hold a partial list; "completed" - the agent delivered a batch, which is not a guarantee th Inputs: jobId, limit |
find_leads | Starts a live B2B lead search with Onsa's agent, matching real people (with LinkedIn profiles) against the workspace's ICP. Takes a natural-language brief - titles, company type, geography, e.g. 'find 5 fintech founders in NYC'. Returns a j Inputs: query, limit |
get_campaign | Returns one campaign's ICP - the ideal-customer profile the agent derived and scores leads against - plus its outreach template and settings. The ICP comes back exactly as stored, in snake_case: `perfect_lead` and `reachable_market` are one Inputs: campaignId |
get_campaign_leads | Returns the leads of any campaign by campaignId, with the same fields as fetch_leads, including score and scoreExplanation. It covers campaigns not started in this session, which fetch_leads cannot reach because fetch_leads requires a jobId Inputs: campaignId, leadIds, limit |
get_campaign_stats | Returns the outreach funnel for one campaign: invites sent, invites accepted, messages sent, and replies split into positive / negative / other by sentiment. LinkedIn and email are merged, as on Onsa's Overview page. These count leads rathe Inputs: campaignId |
get_lead_memo | Returns the research memo Onsa's agent wrote about one lead: role history, company size and stage, what they have said publicly, and the angle on them. It is usually far richer than scoreExplanation, and it is the source material for outrea Inputs: leadId |
list_campaigns | Lists the campaigns (past lead searches) in this workspace that the user takes part in, newest first. Returns the newest `limit` of them, default 50; `returned` against `total` shows whether older campaigns were omitted. Each entry has id, Inputs: limit |
list_next_steps | Returns what this campaign still needs from a human, as a ranked to-do list: people who replied, people who accepted an invite but were never messaged, drafts waiting for approval, leads found but never contacted, and setup that is missing. Inputs: campaignId |
list_pending_outreach | Lists outreach messages the agent has drafted that are waiting for a human to approve - the 'a message for X is ready' queue. Each entry carries the draft text, the lead it is for, and why that lead scored as it did. Omitting campaignId cov Inputs: campaignId, limit |
list_replies | Returns the text of what prospects replied, for every lead in the campaign that answered, paired with the outbound message it answers. get_campaign_stats counts replies and labels them; this returns the words. `sentiment` is Onsa's own labe Inputs: campaignId, limit |
rewrite_outreach | Replaces the text of an outreach draft that is waiting for approval. The current draft and the lead's scoreExplanation come from list_pending_outreach; get_lead_memo carries the richer research on that person. The rewritten draft stays in t Inputs: leadId, text, subject |
send_outreach | Queues one already-approved outreach draft for delivery to a real person on LinkedIn. It requires `confirmText`, the draft body character-for-character as stored, and `confirmName`, the recipient's name: drafts are often near-identical betw Inputs: leadId, confirmText, confirmName |
Every block below points at https://api.onsa.ai/api/mcp. Pick your client and copy.
claude mcp add --transport http onsa https://api.onsa.ai/api/mcp
{
"mcpServers": {
"onsa": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://api.onsa.ai/api/mcp"]
}
}
}{
"mcpServers": {
"onsa": {
"url": "https://api.onsa.ai/api/mcp"
}
}
}{
"servers": {
"onsa": {
"type": "http",
"url": "https://api.onsa.ai/api/mcp"
}
}
}{
"context_servers": {
"onsa": {
"url": "https://api.onsa.ai/api/mcp"
}
}
}{
"mcpServers": {
"onsa": {
"serverUrl": "https://api.onsa.ai/api/mcp"
}
}
}{
"mcpServers": {
"onsa": {
"url": "https://api.onsa.ai/api/mcp"
}
}
}name: Onsa
version: 0.0.1
schema: v1
mcpServers:
- name: Onsa
type: streamable-http
url: https://api.onsa.ai/api/mcp{
"mcpServers": {
"onsa": {
"httpUrl": "https://api.onsa.ai/api/mcp"
}
}
}{
"mcpServers": {
"onsa": {
"type": "http",
"url": "https://api.onsa.ai/api/mcp"
}
}
}{
"mcpServers": {
"onsa": {
"url": "https://api.onsa.ai/api/mcp"
}
}
}goose://extension?url=https%3A%2F%2Fapi.onsa.ai%2Fapi%2Fmcp&type=streamable_http&id=onsa&name=Onsa
It answered our last check on 18 October 2026 in 283 ms. Over 7 checks since 8 September 2026 it answered 7. Status here comes from Neuronto's own probes, not from the publisher.
Yes. It is published by onsa.ai and served from api.onsa.ai, the vendor's own domain: https://api.onsa.ai/api/mcp.
13, as returned by the server's own tools/list on 8 September 2026: continue_campaign, fetch_leads, find_leads, get_campaign, get_campaign_leads, get_campaign_stats, get_lead_memo, list_campaigns, and 5 more.
It answered our last check on 18 October 2026 in 283 ms. Over 7 checks since 8 September 2026 it answered 7.
Put the server under mcpServers in ~/.cursor/mcp.json with the URL https://api.onsa.ai/api/mcp. The exact JSON is above, with the same setup for Claude Code, Claude Desktop, VS Code, Windsurf, Zed, Gemini CLI and the rest.
It listed its tools to an anonymous client, so reading the tool list needs no key. Individual tools can still ask for credentials in their own inputs.
Publisher: ai.onsa. Endpoint host: api.onsa.ai. ARD identifier: urn:air:ai.onsa:mcp:onsa.
First indexed 8 September 2026. The tools are exactly what the server returned; nothing on this page
is inferred from its name. Ranking in Neuronto search is never for sale.