For developers and GTM engineers

The graph8 API, MCP server and SDK

Find buyers, enrich contacts, launch campaigns and book meetings from your own code or AI agent. It is the same system the graph8 app runs on: 700M+ contacts, 100M+ companies, and email, phone, LinkedIn, SMS and WhatsApp.
Connect the MCP server
terminal
curl 'https://be.graph8.com/api/v1/contacts?limit=3' \
  -H "Authorization: Bearer $G8_API_KEY"

Base URL https://be.graph8.com/api/v1. MCP URL https://be.graph8.com/mcp/

01 / Start

Start in three steps

Sign-up gives you a working account. Create a key and make a call in the same session.

  1. Step 1

    Sign up

    About ten seconds with Google or Microsoft. No credit card.

  2. Step 2

    Create a key

    In the graph8 app, open Settings > MCP & API and create an API key. Test keys are free.

  3. Step 3

    Make your first call

    Send one request with the key, or paste the MCP URL into your AI client.

02 / Capabilities

What you can do, and the call for each

Each job has an SDK method, a REST route and an MCP tool. REST routes are relative to https://be.graph8.com/api/v1.

What it does SDK REST MCP tool
Find buyers in the 700M+ contact index g8.enrich.search() POST /search/contacts g8_find_contacts
Enrich a person or company g8.enrich.person() POST /enrichment/lookup/person g8_lookup_person, g8_enrich_contacts
Build lists g8.lists.create() POST /lists g8_create_list, g8_add_to_list
Add contacts to a sequence g8.sequences.add() POST /sequences/{id}/contacts g8_add_to_sequence
Create and launch campaigns g8.campaigns.create(), .launch() POST /campaigns, POST /campaigns/{id}/launch g8_gtm_create_campaign, g8_gtm_launch_campaign
Read meetings g8.meetings.list() GET /inbox/meetings g8_list_meetings
Read and answer the inbox g8.inbox.list(), .send() GET /inbox, POST /inbox/{id}/send g8_list_inbox, g8_send_reply
Start a dialer session g8.voice.createSession() POST /voice/dialer/sessions g8_voice_create_dialer_session
Run workflows g8.workflows.execute() POST /workflows/{id}/execute g8_workflow_execute and other g8_workflow_* tools
Receive webhooks g8.webhooks.constructEvent() POST /webhooks Use the SDK or REST
03 / Your app and graph8

Who runs what

Your app owns the product and the UI. graph8 runs the data, sending, inbox, meetings and agents.

Your product your UI, your workflow, your business logic you own this SDK . REST . MCP . CLI graph8 graph8 runs this data sending inbox meetings agents
04 / Pick your path

Four ways in: SDK, REST, MCP and CLI

The SDK for your app, REST for your backend, MCP for your AI agent, the CLI for your terminal. All four reach the same account and the same data.

SDK your app g8.enrich .search() find buyers REST your backend POST /search /contacts find buyers MCP your agent g8_find_ contacts find buyers CLI your terminal g8 find- contacts find buyers same graph8 account, same data graph8

Which should I use?

I am building Use Why
A browser app (React, Next.js, Vue) JavaScript SDK Typed, SSR-safe, React hooks and widgets
A server script or backend REST API or CLI Direct HTTP or terminal commands
AI-powered workflows MCP server 500+ tools, in natural language
A quick prototype CLI Fastest to test, JSON output
terminal
$ npm install @graph8/sdk# SDK$ pip install g8-mcp-server# CLI (the g8 command)# MCP: paste https://be.graph8.com/mcp/ into your AI client
05 / Launch a campaign

A campaign in four steps

Create, attach an audience, check readiness, launch. Before launch, the campaign needs steps, copy and an active mailbox.

Launching sends real outreach.

1 Create 2 Attach audience 3 Check readiness 4 Launch real outreach
campaign.ts
import { g8 } from "@graph8/sdk";

g8.init({ apiKey: process.env.G8_API_KEY! });

// 1. Create the campaign
const campaign = await g8.campaigns.create({
  name: "Q4 Push",
  goal: "Book discovery calls",
});

// 2. Attach the audience (a list of contacts)
await g8.api.gtmCampaigns.attachAudienceToCampaign({
  path: { campaign_id: campaign.id },
  body: { list_id: String(listId) },
});

// 3. Check readiness: safe to send, has steps, not launched
const verdict = await g8.api.deliverability.getSafeToSend();
const full = await g8.api.gtmCampaigns.getCampaignFull({
  path: { campaign_id: campaign.id },
});

// 4. Launch. This sends real outreach.
await g8.campaigns.launch(campaign.id);
06 / Security and limits

Security, limits and logs

The facts a security review asks for. Each one links to its docs page where there is one.

07 / Pricing

Pricing

Free to start. Every plan has API keys.

Free

$0

No credit card. 500 execution actions and 1,000 contact reveals, then $0.05 per credit.

MCP Unlimited

$25

Per user a month.

Team

$99

A month. 10,000 execution credits, unlimited users, 7-day free trial.

Platform

$499

A month. 75,000 credits, then $0.00666 a credit.

See pricing
08 / Start building

Get an API key and make your first call.

Free to start. No credit card. Free test keys.

Get API key