linkedin

LinkedIn: The LinkedIn Data API offers access to detailed information on individuals, companies.

사용해야 할까요

품질 및 안전성

A
설명 품질
95%
스키마 완전성
98%
이름 품질
86%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (6)

  • LOWTool 'get_company_companyId_employees' doesn't follow camelCase/snake_caseget_company_companyId_employees에서
  • LOWTool 'get_company_companyId_employees' name length outside 3-30 rangeget_company_companyId_employees에서
  • LOWTool 'get_company_companyId_jobs' doesn't follow camelCase/snake_caseget_company_companyId_jobs에서
  • LOWTool 'get_jobs_detail_jobId' doesn't follow camelCase/snake_caseget_jobs_detail_jobId에서
  • LOWTool 'get_posts_postId_comments' doesn't follow camelCase/snake_caseget_posts_postId_comments에서
  • LOWTool 'get_posts_postId_reactions' doesn't follow camelCase/snake_caseget_posts_postId_reactions에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,024토큰 (도구 정의)
~1.3 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.58%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "linkedin": {
      "url": "https://mcp.jojapi.com/linkedin"
    }
  }
}

원격 엔드포인트

https://mcp.jojapi.com/linkedinstreamable-http

할 수 있는 일

도구 목록

도구 (12)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_person_profile(memberId)

Returns a full profile including experience, education, and skills. Obtain a `memberId` from `/people/search` or `/company/{companyId}/employees`. Note that profiles which are private or outside your network cannot be retrieved; these appear in listings with the name `LinkedIn Member`. Group: Person. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "memberId": {
      "type": "string",
      "example": "ACoAAAEkwwAB9KEc2TrQgOLEQ-vzRyZeCDyc6DQ",
      "description": "A LinkedIn member identifier, returned by `/people/search` and\n`/company/{companyId}/employees`."
    }
  },
  "required": [
    "memberId"
  ],
  "additionalProperties": false
}
🟢get_person_profile_posts(memberId, start, count)

Returns an empty list if the person has not posted. Group: Person. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "memberId": {
      "type": "string",
      "example": "ACoAAAEkwwAB9KEc2TrQgOLEQ-vzRyZeCDyc6DQ",
      "description": "A LinkedIn member identifier, returned by `/people/search` and\n`/company/{companyId}/employees`."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 10,
      "description": "Number of posts per page."
    }
  },
  "required": [
    "memberId"
  ],
  "additionalProperties": false
}
🟢get_people_search(keyword, companyId, geoUrn, title, start, ...)

All filters are optional and can be combined. Returns the same person structure as `/company/{companyId}/employees`. Returns an empty list when nothing matches. Group: Person. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "keyword": {
      "type": "string",
      "example": "software engineer",
      "description": "Free-text search term."
    },
    "companyId": {
      "type": "string",
      "description": "Restrict results to people at this company."
    },
    "geoUrn": {
      "type": "string",
      "example": "102105699",
      "description": "Location code. Türkiye is `102105699`."
    },
    "title": {
      "type": "string",
      "example": "engineer",
      "description": "Restrict results by job title."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 25,
      "description": "Number of results per page."
    }
  },
  "additionalProperties": false
}
🟢get_company(slug, companyId)

Provide either `slug` or `companyId`. If neither is given, the request fails with `400 VALIDATION_ERROR`. Take the `slug` from a `/company/search` result rather than guessing it from the company name — a company's slug often differs from its display name. Group: Companies. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "example": "intel-corporation",
      "description": "The company's short name, as it appears in its LinkedIn URL.\nRequired unless `companyId` is provided."
    },
    "companyId": {
      "type": "string",
      "example": "1035",
      "description": "The company's numeric identifier. Required unless `slug` is provided."
    }
  },
  "additionalProperties": false
}
🟢get_company_search(keyword, start, count)

Use the `slug` or `companyId` from a result to fetch full details from `/company`, the employee list, or the job list. Group: Companies. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "keyword": {
      "type": "string",
      "example": "teknoloji",
      "description": "Free-text search term."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 25,
      "description": "Number of results per page."
    }
  },
  "required": [
    "keyword"
  ],
  "additionalProperties": false
}
🟢get_company_companyId_employees(companyId, start, count)

Returns people who list this company as their employer. Results may include private or out-of-network profiles, which appear with the name `LinkedIn Member`. Full profiles cannot be retrieved for those records, so check the name before calling `/person-profile` with the returned `memberId`. Group: Companies. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "example": "1035",
      "description": "The company's numeric identifier, from `/company/search` or `/company`."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 25,
      "description": "Number of results per page."
    }
  },
  "required": [
    "companyId"
  ],
  "additionalProperties": false
}
🟢get_company_companyId_jobs(companyId, start, count)

Returns an empty list if the company has no open postings. Use the `jobId` from a result with `/jobs/detail/{jobId}`. Group: Companies. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "companyId": {
      "type": "string",
      "example": "1035",
      "description": "The company's numeric identifier, from `/company/search` or `/company`."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 25,
      "description": "Number of results per page."
    }
  },
  "required": [
    "companyId"
  ],
  "additionalProperties": false
}
🟡get_company_posts(slug, start, count)

Returns the same post structure as `/person-profile/posts`. This endpoint is addressed by `slug` only. Group: Companies. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "example": "microsoft-azure",
      "description": "The company's short name, as it appears in its LinkedIn URL."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 10,
      "description": "Number of posts per page."
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}
🟢get_jobs_search(keyword, geoId, start, count)

Use the `jobId` from a result with `/jobs/detail/{jobId}`. Group: Jobs. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "keyword": {
      "type": "string",
      "example": "backend",
      "description": "Search term for the job title or description."
    },
    "geoId": {
      "type": "string",
      "example": "102105699",
      "description": "Location code. Türkiye is `102105699`; worldwide is `92000000`."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 25,
      "description": "Number of results per page."
    }
  },
  "required": [
    "keyword"
  ],
  "additionalProperties": false
}
🟢get_jobs_detail_jobId(jobId)

Returns the full description for a posting. Several fields are only present on some postings; the company name is most reliably taken from the search result that provided the `jobId`. Group: Jobs. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "jobId": {
      "type": "string",
      "example": "4458090637",
      "description": "The posting's identifier, from `/jobs/search` or `/company/{companyId}/jobs`."
    }
  },
  "required": [
    "jobId"
  ],
  "additionalProperties": false
}
🟡get_posts_postId_comments(postId, start, count)

Returns an empty list when the post has no comments. Group: Posts. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "postId": {
      "type": "string",
      "example": "7499133701344083968",
      "description": "The post's `ugcPostId`, taken from `/person-profile/posts` or `/company/posts`.\nUse `ugcPostId` here, not `activityId`."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 25,
      "description": "Number of results per page."
    }
  },
  "required": [
    "postId"
  ],
  "additionalProperties": false
}
🟡get_posts_postId_reactions(postId, start, count)

Returns an empty list when the post has no reactions. Group: Posts. Billing per call: 1 Credits.

입력 스키마

{
  "type": "object",
  "properties": {
    "postId": {
      "type": "string",
      "example": "7499133701344083968",
      "description": "The post's `ugcPostId`, taken from `/person-profile/posts` or `/company/posts`.\nUse `ugcPostId` here, not `activityId`."
    },
    "start": {
      "type": "integer",
      "default": 0,
      "description": "Offset of the first result. Pass the `cursor` value from the previous response to\nfetch the next page."
    },
    "count": {
      "type": "integer",
      "default": 25,
      "description": "Number of results per page."
    }
  },
  "required": [
    "postId"
  ],
  "additionalProperties": false
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 12개
검증됨버전이 기록되지 않음도구 12개