# Claude Code MCP for Email & Contact Data — Ravn

Canonical: https://askravn.com/integrations/claude-code

Integrations · Claude Code

# Ravn in Claude Code, one command

Run claude mcp add --transport http ravn https://api.askravn.com/mcp, then type /mcp inside Claude Code and choose Authenticate. Claude Code can then call every Ravn tool, or drive the CLI to enrich whole CSV files.
[Start free: 1,000 lookups](https://askravn.com/#start) [Read the docs](https://askravn.com/docs)

Setup
## Connect the MCP server

- / 01
### Add the server
In your terminal run `claude mcp add --transport http ravn https://api.askravn.com/mcp`. Add `--scope user` if you want it in every project, not just the current one.
- / 02
### Authenticate
Start Claude Code, type `/mcp`, pick ravn and choose Authenticate. A browser tab asks for your email code; click Allow and return to the terminal.
- / 03
### Or use a key instead of OAuth
On a server or in CI there is no browser. Add the server with a header instead (see the code below). Keep the key in an environment variable, never in a committed file.
- / 04
### Install the skill (optional)
Run `npx ravn skill install`. It writes `~/.claude/skills/ravn/SKILL.md`, which teaches Claude Code the CLI so it can process files with `npx ravn enrich` rather than one call at a time.
- / 05
### Test it
Ask Claude Code: “Use Ravn to check my account.” It should call `get_account` and print your plan.
Config
## Both ways to connect
OAuth suits your laptop. The header form suits headless machines. Both reach the same tools.
```
# Interactive: sign in with your email code via /mcp
claude mcp add --transport http ravn https://api.askravn.com/mcp --scope user

# Headless: pass your API key as a header
export RAVN_API_KEY=rw_live_…
claude mcp add --transport http ravn https://api.askravn.com/mcp --scope user \
--header "Authorization: Bearer $RAVN_API_KEY"

# Confirm it is registered
claude mcp list

# Optional: teach Claude Code the CLI
npx ravn skill install
```

Recipes
## What to ask Claude Code

- / 01
### Enrich a file in the repo
“Find work emails for everyone in data/leads.csv using the Name and Website columns. Dry-run first.” With the skill installed Claude Code runs `npx ravn enrich` with `--dry-run`, shows you the cost, then runs it. See [the CSV guide](https://askravn.com/integrations/csv).
- / 02
### Validate signup data in tests
Ask it to write a fixture check that calls `validate_email` on seed addresses and fails on `invalid`. It can read the tool schemas from `GET /v1/tools`.
- / 03
### Build an integration
Ask it to wire Ravn into your app. Point it at [the error reference](https://askravn.com/docs#errors) so it handles 403 and 429 properly, or start from [the JavaScript guide](https://askravn.com/integrations/javascript).
FAQ
## Common questions.
[All questions →](https://askravn.com/faq)Should I use the MCP server or the CLI from Claude Code?Use MCP for single questions (“is this address good?”). Use the CLI for files, because `enrich` saves progress every 25 rows and resumes, which a long chain of tool calls cannot. The skill lets Claude Code choose.Where does Claude Code store the API key?With `--header`, the value is stored in your Claude Code MCP config for the scope you chose. With OAuth there is no key to store in your project. Never use project scope with a header key in a repo others can read.The /mcp menu shows ravn as failed. What now?Check the URL ends in `/mcp` and the transport is `http`. If you used a header, a 401 means the key is wrong or revoked; run `npx ravn whoami` to test the key on its own.

## More in [integrations](https://askravn.com/integrations)
Every page uses the same account, plan and tools. [See pricing →](https://askravn.com/pricing)
- [Clay Email Verification via HTTP APIAdd Ravn to a Clay table with the HTTP API enrichment: verify emails, find work addresses and pull company facts into new columns..](https://askravn.com/integrations/clay)
- [CSV Email Verification & EnrichmentVerify or enrich any CSV with npx ravn enrich: keeps every column, adds rw_* results, saves progress every 25 rows and resumes after a stop..](https://askravn.com/integrations/csv)
- [Cursor MCP Server for Contact DataConnect Ravn to Cursor with a few lines in mcp.json, so Cursor’s agent can verify emails, find work addresses and look up companies while you code..](https://askravn.com/integrations/cursor)
- [Google Sheets Email VerificationVerify a column of emails in Google Sheets with an Apps Script custom function that calls Ravn, with your key kept in Script Properties..](https://askravn.com/integrations/google-sheets)
- [HubSpot Email Verification & EnrichmentVerify and enrich HubSpot contacts with Ravn: export a CSV, run npx ravn enrich, import the results back, or let Claude do it with both connectors..](https://askravn.com/integrations/hubspot)
- [JavaScript & Node.js Email Verification APICall Ravn from Node with built-in fetch: a small typed-free client that branches on status, waits on 429 Retry-After and throws clear error codes..](https://askravn.com/integrations/javascript)
