productivity
Hunter CLI for AI Agents
Use the Hunter CLI from KosmoKrator to call Hunter tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.Hunter CLI Setup
Hunter can be configured headlessly with `kosmokrator integrations:configure hunter`.
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash
# Configure and verify this integration.
kosmokrator integrations:configure hunter --set api_key="$HUNTER_API_KEY" --enable --read allow --write ask --json
kosmokrator integrations:doctor hunter --json
kosmokrator integrations:status --json Credentials
Authentication type: API key api_key. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.
| Key | Env var | Type | Required | Label |
|---|---|---|---|---|
api_key | HUNTER_API_KEY | Secret secret | yes | API Key |
Command Patterns
The generic command is stable across every integration. The provider shortcut is shorter for humans.
kosmo integrations:call hunter.hunter_domain_search '{"domain":"example_domain","limit":1,"offset":1,"type":"example_type"}' --json kosmo integrations:hunter hunter_domain_search '{"domain":"example_domain","limit":1,"offset":1,"type":"example_type"}' --json Discovery
These commands return structured output for coding agents that need to inspect capabilities before choosing a function.
kosmo integrations:docs hunter --json
kosmo integrations:docs hunter.hunter_domain_search --json
kosmo integrations:schema hunter.hunter_domain_search --json
kosmo integrations:search "Hunter" --json
kosmo integrations:list --json Automation Contexts
The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.
CLI Functions
Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.
hunter.hunter_domain_search
Search for professional email addresses associated with a domain. Returns email addresses found for the company, along with contact names, positions, and social profiles. Supports filtering by email type (personal or generic).
read - Parameters
- domain, limit, offset, type
kosmo integrations:call hunter.hunter_domain_search '{"domain":"example_domain","limit":1,"offset":1,"type":"example_type"}' --json kosmo integrations:hunter hunter_domain_search '{"domain":"example_domain","limit":1,"offset":1,"type":"example_type"}' --json hunter.hunter_email_finder
Find the most likely professional email address for a person based on their name and company domain. Returns the email with a confidence score and sources where the email was found.
read - Parameters
- domain, first_name, last_name
kosmo integrations:call hunter.hunter_email_finder '{"domain":"example_domain","first_name":"example_first_name","last_name":"example_last_name"}' --json kosmo integrations:hunter hunter_email_finder '{"domain":"example_domain","first_name":"example_first_name","last_name":"example_last_name"}' --json hunter.hunter_email_verifier
Verify the deliverability of an email address. Checks whether the email is valid, the mailbox exists, and accepts mail. Returns a result status (deliverable, undeliverable, risky, or unknown) along with confidence scores and SMTP details.
read - Parameters
kosmo integrations:call hunter.hunter_email_verifier '{"email":"example_email"}' --json kosmo integrations:hunter hunter_email_verifier '{"email":"example_email"}' --json hunter.hunter_email_count
Get the total number of email addresses Hunter.io has found for a domain. Returns counts broken down by email type (personal, generic) and department. This endpoint does not consume API credits.
read - Parameters
- domain
kosmo integrations:call hunter.hunter_email_count '{"domain":"example_domain"}' --json kosmo integrations:hunter hunter_email_count '{"domain":"example_domain"}' --json hunter.hunter_list_leads
List leads stored in your Hunter.io account. Supports pagination with limit and offset parameters. Returns lead details including email, name, and associated lists.
read - Parameters
- limit, offset
kosmo integrations:call hunter.hunter_list_leads '{"limit":1,"offset":1}' --json kosmo integrations:hunter hunter_list_leads '{"limit":1,"offset":1}' --json hunter.hunter_get_lead
Retrieve detailed information about a single lead by its ID. Returns the lead's email address, name, company, and any associated lists or custom fields.
read - Parameters
- id
kosmo integrations:call hunter.hunter_get_lead '{"id":1}' --json kosmo integrations:hunter hunter_get_lead '{"id":1}' --json hunter.hunter_create_lead
Create a new lead in Hunter.io. Requires an email address. Optionally include first name, last name, and a list ID to add the lead to a specific lead list. Returns the created lead object with its ID.
write - Parameters
- email, first_name, last_name, list_id
kosmo integrations:call hunter.hunter_create_lead '{"email":"example_email","first_name":"example_first_name","last_name":"example_last_name","list_id":1}' --json kosmo integrations:hunter hunter_create_lead '{"email":"example_email","first_name":"example_first_name","last_name":"example_last_name","list_id":1}' --json hunter.hunter_get_current_user
Get information about the authenticated Hunter.io account, including the user's name, email, plan details, and API usage (requests made and remaining). Useful for verifying the API key works and checking usage limits.
read - Parameters
- none
kosmo integrations:call hunter.hunter_get_current_user '{}' --json kosmo integrations:hunter hunter_get_current_user '{}' --json Function Schemas
Use these parameter tables when building CLI payloads without calling integrations:schema first.
hunter.hunter_domain_search 4 parameters
kosmo integrations:schema hunter.hunter_domain_search --json | Parameter | Type | Required | Description |
|---|---|---|---|
domain | string | yes | The domain to search (e.g., "example.com"). |
limit | integer | no | Maximum number of results to return (default: 10, max: 100). |
offset | integer | no | Number of results to skip for pagination. |
type | string | no | Filter by email type: "personal" or "generic". |
hunter.hunter_email_finder 3 parameters
kosmo integrations:schema hunter.hunter_email_finder --json | Parameter | Type | Required | Description |
|---|---|---|---|
domain | string | yes | The company domain (e.g., "example.com"). |
first_name | string | no | The person's first name. |
last_name | string | no | The person's last name. |
hunter.hunter_email_verifier 1 parameters
kosmo integrations:schema hunter.hunter_email_verifier --json | Parameter | Type | Required | Description |
|---|---|---|---|
email | string | yes | The email address to verify. |
hunter.hunter_email_count 1 parameters
kosmo integrations:schema hunter.hunter_email_count --json | Parameter | Type | Required | Description |
|---|---|---|---|
domain | string | yes | The domain to count emails for (e.g., "example.com"). |
hunter.hunter_list_leads 2 parameters
kosmo integrations:schema hunter.hunter_list_leads --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Maximum number of leads to return (default: 20, max: 100). |
offset | integer | no | Number of leads to skip for pagination. |
hunter.hunter_get_lead 1 parameters
kosmo integrations:schema hunter.hunter_get_lead --json | Parameter | Type | Required | Description |
|---|---|---|---|
id | integer | yes | The lead ID. |
hunter.hunter_create_lead 4 parameters
kosmo integrations:schema hunter.hunter_create_lead --json | Parameter | Type | Required | Description |
|---|---|---|---|
email | string | yes | The lead's email address. |
first_name | string | no | The lead's first name. |
last_name | string | no | The lead's last name. |
list_id | integer | no | ID of the lead list to add this lead to. |
hunter.hunter_get_current_user 0 parameters
kosmo integrations:schema hunter.hunter_get_current_user --json | Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
Permissions
Headless calls still follow the integration read/write permission policy. Configure read/write defaults with
integrations:configure. Add --force only for trusted automation that should bypass that policy.