linkedin-buying-signals

Find B2B prospects showing buying signals on LinkedIn and draft the outreach.

使うべきか

品質と安全性

A
説明の品質
95%
スキーマの完全性
75%
命名の品質
96%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(1)

  • LOWTool 'get_prospect' description lacks action verbget_prospect 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~1,961トークン数(ツール定義)
~794 B一般的なレスポンスサイズ
注意への影響は中程度(128k コンテキストの 1.53%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "linkedin-buying-signals": {
      "url": "https://www.getcleed.com/api/mcp"
    }
  }
}

リモートエンドポイント

https://www.getcleed.com/api/mcpstreamable-http

できること

ツール一覧

ツール(15)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢list_prospects(search, company, industry, title, country, ...)

Search the saved prospects in the account. Filter by company, industry, job title, country, signal type, minimum number of signals, whether an email address is known, enrichment state, or whether they have been contacted. Ordered by signal count, then most recently saved.

入力スキーマ

{
  "type": "object",
  "properties": {
    "search": {
      "type": "string",
      "description": "Free text matched against first name, last name, company and title"
    },
    "company": {
      "type": "string"
    },
    "industry": {
      "type": "string"
    },
    "title": {
      "type": "string",
      "description": "Job title contains this text"
    },
    "country": {
      "type": "string"
    },
    "signalType": {
      "type": "string",
      "description": "Only prospects carrying a signal of this type (see list_signals)"
    },
    "minSignals": {
      "type": "integer",
      "description": "Only prospects with at least this many signals"
    },
    "hasEmail": {
      "type": "boolean"
    },
    "enrichmentStatus": {
      "type": "string",
      "enum": [
        "pending",
        "enriched",
        "failed"
      ]
    },
    "notContacted": {
      "type": "boolean",
      "description": "Only prospects with no email sent yet"
    },
    "limit": {
      "type": "integer",
      "description": "How many to return (max 50)",
      "default": 20
    },
    "offset": {
      "type": "integer",
      "default": 0
    }
  },
  "additionalProperties": false
}
🟢get_prospect(prospectId, linkedinUrl)

Everything known about one prospect: role, company, location, language, every detected signal with the verbatim quote from its source and the LinkedIn URL it came from, any existing email or LinkedIn draft, and outreach state.

入力スキーマ

{
  "type": "object",
  "properties": {
    "prospectId": {
      "type": "string",
      "description": "The prospect id from list_prospects"
    },
    "linkedinUrl": {
      "type": "string",
      "description": "Their LinkedIn profile URL, if the id is unknown"
    }
  },
  "additionalProperties": false
}
🟢get_pipeline_stats

How the pipeline stands: how many prospects, how many carry signals, enrichment state, how many have an email address, how many were contacted, what was added in the last 7 days, the most common signal types, and the remaining plan quota.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢list_signals(enabledOnly)

The buying signals this account looks for: the predefined ones and the custom ones, each with the definition used to detect it and whether it is enabled. Use the returned type values with list_prospects and find_leads_from_signals.

入力スキーマ

{
  "type": "object",
  "properties": {
    "enabledOnly": {
      "type": "boolean",
      "default": true
    }
  },
  "additionalProperties": false
}
🟢get_icp

The active ICP: target roles, industries, countries, company sizes, relevant keywords and any exclusions. This is what sourcing and scoring filter against.

入力スキーマ

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟡add_leads_from_urls(linkedinUrls, listId)

Save LinkedIn profiles as prospects and enrich them (name, role, company, industry, location, language). Skips anyone already saved. Counts against the import quota.

入力スキーマ

{
  "type": "object",
  "properties": {
    "linkedinUrls": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "LinkedIn profile URLs"
    },
    "listId": {
      "type": "string",
      "description": "Optional list to add them to (see get_icp for list ids)"
    }
  },
  "required": [
    "linkedinUrls"
  ],
  "additionalProperties": false
}
🟢find_leads_from_signals(signalType, postsPerSignal)

Search recent LinkedIn posts on the topics of this account's own signal definitions, keep only posts a check can prove are on topic, and return the people who wrote, commented on or reacted to them, filtered against the ICP (role, industry, country) and ranked. Nothing is saved: pass the returned candidates to import_sourced_leads. Spends a little of the monthly sourcing budget.

入力スキーマ

{
  "type": "object",
  "properties": {
    "signalType": {
      "type": "string",
      "description": "Which signal to source for; omit to use the first enabled one (see list_signals)"
    },
    "postsPerSignal": {
      "type": "integer",
      "default": 3
    }
  },
  "additionalProperties": false
}
🟡import_sourced_leads(signalType, tokens, listId)

Save candidates returned by find_leads_from_signals. They arrive already enriched and with the signal attached, including the verbatim quote from the post that surfaced them. Counts against the import quota.

入力スキーマ

{
  "type": "object",
  "properties": {
    "signalType": {
      "type": "string",
      "description": "The signalType returned by find_leads_from_signals"
    },
    "tokens": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "The token values of the candidates to import"
    },
    "listId": {
      "type": "string"
    }
  },
  "required": [
    "signalType",
    "tokens"
  ],
  "additionalProperties": false
}
🟢analyze_prospects(prospectIds, limit)

Run the signal pipeline on prospects: enrich anyone missing company data, read their recent LinkedIn activity, and detect buying signals. Every signal kept must quote its source verbatim. Counts against the monthly analysis quota. Slow: expect up to a few minutes.

入力スキーマ

{
  "type": "object",
  "properties": {
    "prospectIds": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Which prospects to analyze; omit to take those with no signals yet"
    },
    "limit": {
      "type": "integer",
      "description": "Cap when prospectIds is omitted",
      "default": 10
    }
  },
  "additionalProperties": false
}
🟡draft_email(prospectId, linkedinUrl, signalIndex, regenerate, language)

Write a personalised email for a prospect, built from their detected signals, in their language. Saves the draft on the prospect and returns it. Does not send.

入力スキーマ

{
  "type": "object",
  "properties": {
    "prospectId": {
      "type": "string"
    },
    "linkedinUrl": {
      "type": "string"
    },
    "signalIndex": {
      "type": "integer",
      "description": "Which signal to lead with",
      "default": 0
    },
    "regenerate": {
      "type": "boolean",
      "description": "Ignore any cached draft",
      "default": false
    },
    "language": {
      "type": "string",
      "enum": [
        "english",
        "french"
      ]
    }
  },
  "additionalProperties": false
}
🟡draft_linkedin_message(prospectId, linkedinUrl, regenerate, language)

Write a short LinkedIn connection note for a prospect from their detected signals, in their language. Saves the draft and returns it. Does not send.

入力スキーマ

{
  "type": "object",
  "properties": {
    "prospectId": {
      "type": "string"
    },
    "linkedinUrl": {
      "type": "string"
    },
    "regenerate": {
      "type": "boolean",
      "default": false
    },
    "language": {
      "type": "string",
      "enum": [
        "english",
        "french"
      ]
    }
  },
  "additionalProperties": false
}
🔴send_email(prospectId, linkedinUrl, subject, body)

Send an email to a prospect from the connected mailbox. This reaches a real person immediately and cannot be undone. Pass the subject and body you want sent, or omit them to send the saved draft. Requires a mailbox connected in getcleed under Integrations.

入力スキーマ

{
  "type": "object",
  "properties": {
    "prospectId": {
      "type": "string"
    },
    "linkedinUrl": {
      "type": "string"
    },
    "subject": {
      "type": "string",
      "description": "Omit to use the saved draft"
    },
    "body": {
      "type": "string",
      "description": "Omit to use the saved draft"
    }
  },
  "additionalProperties": false
}
🔴send_linkedin_message(prospectId, linkedinUrl, message)

Send a LinkedIn connection request with a note to a prospect from the connected LinkedIn account. This reaches a real person immediately and cannot be undone. Pass the note you want sent, or omit it to use the saved draft. Requires LinkedIn connected in getcleed under Integrations.

入力スキーマ

{
  "type": "object",
  "properties": {
    "prospectId": {
      "type": "string"
    },
    "linkedinUrl": {
      "type": "string"
    },
    "message": {
      "type": "string",
      "description": "The note, max 300 characters. Omit to use the saved draft"
    }
  },
  "additionalProperties": false
}
⚪mark_email_sent(prospectId, linkedinUrl)

Record that a prospect was emailed outside getcleed, so reporting and follow-ups stay correct.

入力スキーマ

{
  "type": "object",
  "properties": {
    "prospectId": {
      "type": "string"
    },
    "linkedinUrl": {
      "type": "string"
    }
  },
  "additionalProperties": false
}
🟡create_custom_signal(name, detects, exampleTitle, exampleDetail)

Teach the account a new buying signal to look for, described in plain language (for example "people complaining their onboarding takes too long"). Future analyses and sourcing will use it.

入力スキーマ

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Short display name"
    },
    "detects": {
      "type": "string",
      "description": "What to look for, in plain language"
    },
    "exampleTitle": {
      "type": "string"
    },
    "exampleDetail": {
      "type": "string"
    }
  },
  "required": [
    "name",
    "detects"
  ],
  "additionalProperties": false
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 15 件
検証済みバージョンは記録されていませんツール 15 件