What it does
Account-based prospecting in one call: the decision makers at a named company.
This tool drives a real LinkedIn account
Arguments
| Name | Type | Required | Meaning |
|---|---|---|---|
| company | string | yes | Company name |
| roles | string | no | Titles or keywords, e.g. "VP Sales, Head of Revenue" |
| location | string | no | Comma-separated places |
| limit | number | no | 1–50 (default 20) |
| sales_navigator | boolean | no | Use Sales Navigator (needs the seat; matches company by name) |
| account | string | no | Sender account id or name to act as. Defaults to the healthiest connected account. |
This table is generated from the literal inputSchema that tools/list returns, so what your client sees and what this page says are the same object:
{
"type": "object",
"properties": {
"company": {
"type": "string",
"description": "Company name"
},
"roles": {
"type": "string",
"description": "Titles or keywords, e.g. \"VP Sales, Head of Revenue\""
},
"location": {
"type": "string",
"description": "Comma-separated places"
},
"limit": {
"type": "number",
"description": "1–50 (default 20)"
},
"sales_navigator": {
"type": "boolean",
"description": "Use Sales Navigator (needs the seat; matches company by name)"
},
"account": {
"type": "string",
"description": "Sender account id or name to act as. Defaults to the healthiest connected account."
}
},
"required": [
"company"
]
}Request
Paste this, swap the key, and you have called the tool.
curl -s https://topclozer.com/api/mcp \
-H "Authorization: Bearer tcz_live_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "find_company_people",
"arguments": { "company": "Northbeam", "roles": "VP Engineering, CTO, Head of Platform" }
}
}'Returns
{ company, searchedAs, count, people: [{ providerId, fullName, headline, company, location, profileUrl, networkDistance }] }
The payload arrives inside an MCP content block — one text block whose body is this JSON, pretty-printed. Parse the string; there is no structured-content field.
{ "company": "Northbeam", "searchedAs": "Marcus Feld", "count": 1, "people": [{ "providerId": "ACoAAB1x…", "fullName": "Dana Whitfield", "headline": "CTO at Northbeam", "company": "Northbeam", "networkDistance": "DISTANCE_2" }] }Worth knowing
People whose current company or headline does not name the company are dropped: classic search matches loosely, and a list of strangers from other firms is worse than a short list.
Rate limit
30 LinkedIn tool calls per 5 minutes, per workspace. Exceeding it returns HTTP 429 with JSON-RPC error -32002 and a Retry-After header. The budget is shared by every LinkedIn tool and counted per workspace, so minting a second key does not buy a second allowance.
The limit exists because an agent retrying in a loop is the request pattern that gets a LinkedIn account restricted, and a restricted account is a much worse outcome for you than a 429. Workspace tools do not spend this budget.
Related tools
get_company
A LinkedIn company page: description, industry, size, headquarters, followers, website, employee growth
check_reachability
Before reaching out: degree of connection, pending invitation, whether a connection request, a message or an InMail can go to this person — and whether the do-not-contact list or another account of the workspace already covers them
propose_connection_request
Propose a LinkedIn connection request. It is NOT sent: it waits in the workspace's Approvals queue until a person approves it, then goes out under the account's Smart Limits.
All 65 tools are listed on the tool index. Connecting a client is on the Claude setup page, and the protocol details are on the server page.