Skip to main content
Glama
linkedin-profile-scraper

linkedin-profile-scraper

Lakome LinkedIn MCP Server

Smithery

AIエージェントに、Lakome API を利用したリアルタイムのLinkedInプロフィール抽出機能を提供する、軽量なModel Context Protocol(MCP)サーバーです。

このサーバーは、LLMクライアント(Claude Desktop、Cursor、Cline、Roo Code、カスタムAIエージェントなど)と、LakomeのLinkedInインテリジェンスエンドポイントとの間のブリッジとして機能します。


⚡ 機能

  • 標準stdioトランスポート: 標準的なMCPクライアントと互換性があります。

  • 単一の専用ツール: extract_linkedin_profile を公開し、構造化された完全なプロフィール情報(職歴、学歴、スキル、ヘッドライン、サマリー、連絡先情報など)を抽出します。

  • バッチ処理: 単一または複数のLinkedInプロフィールURLを1回のリクエストで照会できます。

  • エラーハンドリング: 認証キーを検証し、整形されたエラーフィードバックを返します。


Related MCP server: SalesTouch

📋 前提条件

  • Node.js v18.0.0 以上

  • Lakome APIキー(mcp.lakome.in で取得できます)


🔑 LAKOME_API_KEY の設定

サーバーがLakome APIエンドポイントへのリクエストを認証するには、LAKOME_API_KEY が必要です。

macOS / Linux の場合

export LAKOME_API_KEY="your_actual_lakome_api_key_here"

Windows(PowerShell)の場合

$env:LAKOME_API_KEY="your_actual_lakome_api_key_here"

Windows(コマンドプロンプト)の場合

set LAKOME_API_KEY=your_actual_lakome_api_key_here

🚀 インストールとクライアント設定

1. Claude Desktop のセットアップ

サーバー設定を claude_desktop_config.json に追加してください:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "lakome-linkedin": {
      "command": "node",
      "args": [
        "/absolute/path/to/mcp-server/index.js"
      ],
      "env": {
        "LAKOME_API_KEY": "your_actual_lakome_api_key_here"
      }
    }
  }
}

Windowsユーザーへの注意: /absolute/path/to/mcp-server/index.js を、お使いのWindowsの絶対パスに置き換えてください(例: D:\\extensions and projects\\lakome API project\\mcp-server\\index.js)。


2. Cursor IDE のセットアップ

プロジェクトの .cursor/mcp.json またはグローバルMCP設定に、以下を追加してください:

{
  "mcpServers": {
    "lakome-linkedin": {
      "command": "node",
      "args": [
        "./mcp-server/index.js"
      ],
      "env": {
        "LAKOME_API_KEY": "your_actual_lakome_api_key_here"
      }
    }
  }
}

3. Smithery.ai CLI

Smithery 経由でサーバーを自動的にインストールして実行できます:

npx -y @smithery/cli install @lakome/linkedin-mcp --client claude

🛠️ ツールリファレンス

extract_linkedin_profile

1つ以上のLinkedInプロフィールURLから、包括的で構造化されたプロフィールデータとインテリジェンスを抽出します。

パラメータ

名前

型

必須

説明

profileUrls

string[]

はい

抽出対象のLinkedInプロフィールURLの配列(例: ["https://www.linkedin.com/in/williamhgates"])

呼び出し例

{
  "profileUrls": [
    "https://www.linkedin.com/in/williamhgates",
    "https://www.linkedin.com/in/satyanadella"
  ]
}

出力応答例

[
  {
    "url": "https://www.linkedin.com/in/williamhgates",
    "data": {
      "fullName": "Bill Gates",
      "headline": "Co-chair, Bill & Melinda Gates Foundation",
      "location": "Seattle, Washington, United States",
      "summary": "Co-chair of the Bill & Melinda Gates Foundation. Founder of Breakthrough Energy...",
      "experiences": [
        {
          "title": "Co-chair",
          "company": "Bill & Melinda Gates Foundation",
          "dateRange": "2000 - Present"
        }
      ],
      "education": [
        {
          "schoolName": "Harvard University",
          "degreeName": "Honorary Doctorate",
          "fieldOfStudy": "Law"
        }
      ],
      "skills": ["Philanthropy", "Software Development", "Global Health"]
    },
    "status": "success"
  }
]

🧪 ローカルでのテストと開発

  1. 依存関係をインストール:

    cd mcp-server
    npm install
  2. サーバーをローカルで実行:

    LAKOME_API_KEY="your_api_key" node index.js
  3. MCP Inspector で確認:

    npx @modelcontextprotocol/inspector node index.js

📄 ライセンス

MIT © Lakome

Available Tools

1 tool
extract_linkedin_profileA

Extracts comprehensive, structured profile data and intelligence from one or more LinkedIn profile URLs using the Lakome API.

NameRequiredDescriptionDefault
profileUrlsYesArray of full LinkedIn profile URLs to extract (e.g. ["https://www.linkedin.com/in/williamhgates"])

TDQS

A3.7/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

When annotations are absent, the description carries the full disclosure burden. It only says 'extracts' and 'using the Lakome API', but leaves out whether network access is required, whether authentication is needed, whether any state changes occur, and what 'intelligence' entails.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single sentence conveys the action, resource, input cardinality, and backend API. There is no fluff, and the key detail that this is a batch-style URL extraction is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The core purpose is clear, but the absence of an output schema and behavioral notes means the agent lacks information about the structure of the returned data, failure behavior, or what data is actually considered 'intelligence'. For such a simple tool, the bare-bones description is minimal but still has noticeable gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already documents the single parameter (profileUrls) with an example, giving 100% coverage. The description adds no new parameter-level information beyond restating the one-or-more constraint.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('extract') and identifies the resource clearly: comprehensive structured profile data and intelligence from LinkedIn profile URLs via the Lakome API. It distinguishes the tool's scope immediately, including the ability to handle one or more URLs.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The usage context is explicit: call this tool when you need structured LinkedIn profile data from the given profile URLs. No exclusions or alternative tools exist in the provided context, so the clear scenario description is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev1.0.0
    • First observedextract_linkedin_profile

TDQS

A3.9/5.0

Scored across 1 tool

Disambiguation5/5

Only one tool exists, so there is zero ambiguity between tools. The tool's purpose is clearly defined and distinct.

Naming Consistency5/5

The single tool follows a clear verb_noun pattern (extract_linkedin_profile), which is consistent and descriptive.

Tool Count3/5

A single tool is borderline for a server, but for a focused LinkedIn profile scraper it is not unreasonable. Still, the surface is minimal and offers no auxiliary capabilities.

Completeness5/5

The tool's description indicates it extracts comprehensive structured profile data from one or more URLs, which fully covers the server's stated purpose. No obvious gaps in the domain of LinkedIn profile scraping.

Maintenance

ActivityStale
ResponsivenessNo recent community issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    High-performance autonomous MCP server that turns LinkedIn into an API for AI workflows, enabling profile management, job search, content posting, and document generation.
    14
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for AI-native LinkedIn prospecting. It enables lead research, audience building, conversation management, and controlled outreach actions such as messaging and publishing through an OAuth-protected remote endpoint.
    2
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that lets AI assistants like Claude read LinkedIn data through your own logged-in browser session. Access profiles and companies, search for jobs, or get job details.
    17
    Apache 2.0