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

# MCP tools

> Reference the workflow and direct API tools exposed by The Hog MCP.

The MCP server exposes workflow tools for GTM jobs and API tools for direct control over a specific endpoint.

## Workflow tools

Use these first when your request maps to a GTM job rather than one API call:

| Tool                             | Use it for                                                                                   |
| -------------------------------- | -------------------------------------------------------------------------------------------- |
| `build_prospect_list`            | Search target companies, find relevant people, and optionally enrich contacts.               |
| `find_people_at_target_accounts` | Find contacts at a known list of company domains or names.                                   |
| `enrich_prospect_list`           | Enrich a batch of known prospects with requested contact fields or signals.                  |
| `research_company`               | Crawl a company site, search recent web results, and run structured deep research.           |
| `research_person`                | Build a structured research dossier for a person or prospect.                                |
| `monitor_topic`                  | Create monitors for a topic, company, profile, or post, and optionally run them immediately. |
| `analyze_social_profile`         | Fetch and summarize bounded public Instagram or TikTok profile data.                         |
| `scrape_and_extract`             | Scrape one URL and optionally extract structured data with deep research.                    |

### Target account people search

`find_people_at_target_accounts` accepts company domains, company names, or company LinkedIn URLs. Prefer domains or names when you know the account. A LinkedIn URL is useful when you already know the exact company page, but the tool should not silently replace the requested account with a different company page.

When the workflow waits for the people-search operation to finish, the underlying result can include:

| Field                     | Meaning                                                                                                                                                                   |
| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `targetAccountSearchMode` | `linkedin_company_page`, `profile_current_company`, or `unavailable`.                                                                                                     |
| `targetAccountOutcome`    | The LinkedIn company-handle resolution outcome: supplied, verified, unavailable/conflicting, or unresolved. Use `targetAccountSearchMode` to see how people were matched. |
| `companyMatchEvidence`    | Per-person evidence summary: `company_page` or `profile_current_job`.                                                                                                     |

If the workflow returns an operation ID instead of final people, call `get_operation` with that ID and read the same fields from the operation result.

## API tools

Use these when you want direct control over a specific public API endpoint:

| Area                    | Tools                                                                                                                                                                               |
| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Companies and people    | `search_companies`, `search_people`                                                                                                                                                 |
| Enrichment              | `enrich_contact`, `enrich_contacts`, `get_enrichment`                                                                                                                               |
| Research and operations | `start_deep_research`, `get_operation`                                                                                                                                              |
| Search                  | `submit_search`, `get_search_result`, `list_searches`                                                                                                                               |
| Web scraping            | `search_web`, `crawl_website`, `scrape_web_page`                                                                                                                                    |
| Social scraping         | `get_instagram_profile`, `list_instagram_posts`, `get_instagram_post`, `list_instagram_post_comments`, `list_instagram_followers`, `list_instagram_following`, `get_tiktok_profile` |
| Monitors                | `create_monitor`, `list_monitors`, `get_monitor`, `update_monitor`, `delete_monitor`, `run_monitor_now`, `list_monitor_events`                                                      |

## Example prompts

```text theme={null} theme={"theme":{"light":"github-light","dark":"github-dark"}}
Build a prospect list of 20 Series B fintech companies in the US and find Heads of Partnerships at each company.
```

```text theme={null} theme={"theme":{"light":"github-light","dark":"github-dark"}}
Research Acme Corp and return products, customers, competitors, recent signals, and sources.
```

```text theme={null} theme={"theme":{"light":"github-light","dark":"github-dark"}}
Create a weekly monitor for mentions of our brand on web search and run it once now.
```

## Async results

Many The Hog API calls run asynchronously. MCP tools may return an operation ID, poll URL, child operation IDs, warnings, and partial step results. If a tool returns an operation ID instead of final data, ask your client to call `get_operation` with that ID.

Deep-research-bearing tools (`research_company`, `research_person`, `scrape_and_extract`, `start_deep_research`) are **async-first**: because deep research runs for minutes, they return an operation ID immediately (status `queued`) rather than blocking. Poll `get_operation` until the status is `completed` to fetch the result. You may set `waitForResult: true` to wait inline, but the wait is capped at \~50s (below the \~60s MCP client/gateway ceiling); if it does not finish in time you still receive the operation ID to poll. Re-attaching with `get_operation` does not consume additional credits — do not re-issue the call to retry.

Slow LinkedIn profile post scrapes use the same pattern: `list_linkedin_profile_posts` queues work and returns an operation ID immediately. Poll `get_operation` until status is `succeeded` to fetch the posts.
