> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gravitygtm.com/llms.txt
> Use this file to discover all available pages before exploring further.

# MCP Install

> Connect Horizon as an MCP server to Claude, Cursor, or any MCP client

Horizon runs a [Model Context Protocol](https://modelcontextprotocol.io)
server alongside the REST API. It exposes the same 11 billed capabilities
as MCP tools — same validation, same credit pipeline, same prices — so an
agent can call them directly without you writing any HTTP glue.

## Endpoint

The Streamable HTTP MCP endpoint is:

```
https://horizon.gravitygtm.com/api/mcp/mcp
```

Authenticate with the same Bearer API key you use for REST — see
[Authentication](/horizon/authentication).

## Add to Claude Code

```bash theme={null}
claude mcp add --transport http gravity https://horizon.gravitygtm.com/api/mcp/mcp \
  --header "Authorization: Bearer YOUR_KEY"
```

## Other MCP clients

Any client that supports a remote Streamable HTTP MCP server (Cursor, and
others) can connect the same way: point it at
`https://horizon.gravitygtm.com/api/mcp/mcp` and set an `Authorization: Bearer
YOUR_KEY` header. Consult your client's docs for where it wants the URL and
custom header configured — the values are the same regardless of client.

A session with a missing or invalid key is rejected before any tool is
reachable, same as a REST call with a bad key.

## Available tools

| Tool                     | Description                                                                                                                                                               |
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `enrich_person`          | Look up a LinkedIn profile by URL, or by name + company                                                                                                                   |
| `find_email`             | Find a verified work email for a person, by LinkedIn URL or name + domain                                                                                                 |
| `search_people`          | Search LinkedIn profiles by name/keyword and get back the full candidate list — use this to disambiguate an ambiguous name before calling `enrich_person` or `find_email` |
| `verify_email`           | Verify whether an email address is deliverable                                                                                                                            |
| `enrich_company`         | Look up a company's LinkedIn page by URL, name, or domain                                                                                                                 |
| `find_people_at_company` | Find people at a company by LinkedIn company URL, or by company name/domain (resolved internally first), optionally filtered by job title and/or the person's own name    |
| `search_companies`       | Search LinkedIn companies by keyword and/or location                                                                                                                      |
| `get_linkedin_posts`     | Fetch recent posts from a LinkedIn profile or company page                                                                                                                |
| `get_post_engagement`    | Fetch reactions or comments on a LinkedIn post                                                                                                                            |
| `search_jobs`            | Search LinkedIn job postings by keyword and location                                                                                                                      |
| `web_search`             | Run a web search and return ranked results                                                                                                                                |

Each tool's inputs mirror its REST equivalent's request body, and each call
debits credits the same way a REST call would — see
[Credits & Pricing](/horizon/credits-and-pricing) for exact costs, and the
**API Reference** section in the sidebar for full parameter details on each
underlying endpoint.

Tool results are returned as JSON text content. A failed call (invalid
arguments, insufficient credits, vendor error, etc.) comes back as an MCP
tool error carrying the same error body a REST call would return — see
[Errors & Rate Limits](/horizon/errors-and-rate-limits).
