Docs
Full API. Bring your own AI agent: connect ChatGPT, Claude, Gemini, Cursor, LangChain, n8n or any agent to Harbilo's data and tools.
UpdatedQuick start
- Start 7-day free trial (no card required). Your workspace opens configured for your industry.
- Create an API key under API keys in the app.
- Call the REST API from your code, or connect your AI agent below.
Connect your AI agent
Harbilo is not an agent; it is the data and tools your agents use. Any client that speaks the Model Context Protocol gets every Harbilo capability as a tool: company search, hot leads, email finding and verification, lists and alerts. Code can call the same capabilities over REST. Calls use your plan's credits and API allowance exactly as the app does.
ChatGPT
Add Harbilo as a custom connector (remote MCP server) in ChatGPT's connector settings, with your API key as a bearer token.
Connector type: MCP server (remote)
Server URL: https://harbilo-mcp-7pjak44h2q-uc.a.run.app/mcp
Authentication: Bearer token
Token: hb_live_…Claude
Claude Code, Claude Desktop and the Claude Agent SDK all connect to Harbilo's MCP server.
claude mcp add --transport http harbilo https://harbilo-mcp-7pjak44h2q-uc.a.run.app/mcp \
--header "Authorization: Bearer hb_live_…"Gemini CLI
Add the server to ~/.gemini/settings.json.
{
"mcpServers": {
"harbilo": {
"httpUrl": "https://harbilo-mcp-7pjak44h2q-uc.a.run.app/mcp",
"headers": {
"Authorization": "Bearer hb_live_…"
}
}
}
}Cursor
Add the server to .cursor/mcp.json in your project (or the global Cursor settings).
{
"mcpServers": {
"harbilo": {
"url": "https://harbilo-mcp-7pjak44h2q-uc.a.run.app/mcp",
"headers": {
"Authorization": "Bearer hb_live_…"
}
}
}
}OpenAI Agents SDK
Give your agent Harbilo's tools through the SDK's streamable-HTTP MCP client.
from agents import Agent, Runner
from agents.mcp import MCPServerStreamableHttp
async with MCPServerStreamableHttp(params={"url": "https://harbilo-mcp-7pjak44h2q-uc.a.run.app/mcp", "headers": {"Authorization": "Bearer hb_live_…"}}) as harbilo:
agent = Agent(name="Prospecting", instructions="Use Harbilo to find and qualify leads.", mcp_servers=[harbilo])
result = await Runner.run(agent, "Contractors in New Jersey with new permits this month")
print(result.final_output)Python
Plain HTTP against the REST API (OpenAPI at /v1/openapi.json if you prefer a generated client).
import requests
r = requests.get("https://api.harbilo.com/v1/companies/", params={"states": "NJ", "industry": "construction"},
headers={"Authorization": "Bearer hb_live_…"})
print(r.json()["results"][:3])TypeScript
fetch works everywhere; generate typed clients from /v1/openapi.json.
const r = await fetch("https://api.harbilo.com/v1/companies/?states=NJ&industry=construction", {
headers: { Authorization: "Bearer hb_live_…" },
});
console.log((await r.json()).results.slice(0, 3));curl
Every capability is a REST call. Paid calls take an Idempotency-Key header.
curl -H "Authorization: Bearer hb_live_…" \
"https://api.harbilo.com/v1/companies/?states=NJ&industry=construction"Also works with Copilot, LangChain, n8n, Zapier and any other MCP client or HTTP tool: use the MCP URL https://harbilo-mcp-7pjak44h2q-uc.a.run.app/mcp or the REST base https://api.harbilo.com/v1 with Authorization: Bearer <key>.
Reference
- API reference (OpenAPI: openapi.json)
- Guide for AI agents: how an agent should use Harbilo's tools
- API overview and plans and API allowances