Skip to main content
Glama

Indeed MCP 서버

Claude, Cursor, Windsurf 등 모든 MCP 클라이언트에 읽기 전용 Indeed 도구 두 가지를 제공하는 호스팅형 Model Context Protocol(MCP) 서버입니다. 키워드와 위치로 채용 공고를 검색하고, 개별 공고를 전체로 읽을 수 있으며, 모두 JSON 형태로 제공됩니다. Indeed 개발자 계정이나 파트너 승인 없이 이용할 수 있습니다.

로그아웃 상태의 방문자가 볼 수 있는 공개 채용 공고를 읽습니다.

https://mcp.hasdata.com/api/mcp?apis=indeed

Glama score tool contract MCP Tools License

목차

Related MCP server: JobDataLake MCP Server

필요한 것

MCP 클라이언트와 대시보드에서 발급받은 HasData API 키가 필요합니다. 카드 없이도 무료로 만들 수 있으며, 체험용 크레딧은 5크레딧 기준으로 약 200회 호출을 충당합니다. 이 서버는 원격 서버이므로 URL과 x-api-key 헤더만 있으면 됩니다. 실행할 컨테이너도, 어디에도 Indeed 개발자 계정이 필요 없습니다. stdio만 지원하는 클라이언트는 npm의 @hasdata/indeed-mcp와 PyPI의 hasdata-indeed-mcp로 배포된 경량 런처를 통해 이 서버에 접속하면 됩니다. 아래에 설명합니다.

빠른 시작

서버 URL은 모든 클라이언트에서 동일합니다. 저희는 Claude Code와 Claude Desktop에서 직접 실행 확인을 했습니다. 다른 클라이언트 블록은 각 클라이언트가 원격 서버에 대해 문서화한 방식을 따릅니다.

필드

URL

https://mcp.hasdata.com/api/mcp?apis=indeed

전송

HTTP, streamable

인증 헤더

x-api-key: HASDATA_API_KEY

OAuth를 지원하는 클라이언트는 같은 URL을 커넥터로 추가하고, 설정 파일에 키를 넣지 않고 로그인할 수 있습니다.

claude mcp add --transport http indeed "https://mcp.hasdata.com/api/mcp?apis=indeed" \
  --header "x-api-key: HASDATA_API_KEY"

설정(Settings) > Connectors > Add custom connector 순서로 이동한 다음, https://mcp.hasdata.com/api/mcp?apis=indeed를 붙여넣고 로그인하세요.

설정 파일을 쓰는 방식에서는 Claude Desktop이 로컬(stdio) 서버만 불러오므로, stdio 런처를 통해 원격 서버에 접속합니다. @hasdata/indeed-mcp 패키지가 그 런처 역할을 하며, 키를 환경 변수에서 읽습니다. 이 내용을 claude_desktop_config.json에 추가하세요:

{
  "mcpServers": {
    "indeed": {
      "command": "npx",
      "args": ["-y", "@hasdata/indeed-mcp"],
      "env": { "HASDATA_API_KEY": "YOUR_KEY" }
    }
  }
}

Node.js 대신 Python을 쓴다면 런처를 PyPI 패키지로 바꾸면 됩니다. uvx가 수동 설치 없이 실행해줍니다:

{
  "mcpServers": {
    "indeed": {
      "command": "uvx",
      "args": ["hasdata-indeed-mcp"],
      "env": { "HASDATA_API_KEY": "YOUR_KEY" }
    }
  }
}

모든 프로젝트에서 쓰려면 ~/.cursor/mcp.json, 단일 프로젝트만 적용하려면 .cursor/mcp.json을 사용합니다:

{
  "mcpServers": {
    "indeed": {
      "url": "https://mcp.hasdata.com/api/mcp?apis=indeed",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}

~/.codeium/windsurf/mcp_config.json. Windsurf는 url이라는 이름 대신 serverUrl 필드를 사용합니다:

{
  "mcpServers": {
    "indeed": {
      "serverUrl": "https://mcp.hasdata.com/api/mcp?apis=indeed",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}

작업 공간의 .vscode/mcp.json 파일을 사용합니다:

{
  "servers": {
    "indeed": {
      "type": "http",
      "url": "https://mcp.hasdata.com/api/mcp?apis=indeed",
      "headers": { "x-api-key": "HASDATA_API_KEY" }
    }
  }
}

예시 프롬프트

코드가 아니라 프롬프트입니다. 하나를 붙여넣으면 에이전트가 도구를 직접 고릅니다. 각 프롬프트는 필요한 호출 횟수와 함께 설명되어 있습니다. 성공적인 호출마다 5크레딧이 들기 때문입니다.

Indeed에서 "python developer"를 날짜순으로 검색해서, 뉴욕에서 가장 최근 공고 10개를 회사와 급여와 함께 알려줘.

한 번 호출, 5크레딧. 목록 페이지에 회사, 급여, 게시 날짜가 이미 포함되어 있습니다.

그 검색의 최상단 공고를 가져와서 전체 설명과 지원 자격을 뽑아줘.

한 번 호출, 5크레딧. 목록에 공고 URL이 들어 있으며, 이 URL을 상세 도구가 그대로 사용합니다.

오스틴에서 "data analyst" 공고를 찾고, 급여를 명시한 세 건의 전체 상세 내용을 가져와줘.

네 번 호출, 20크레딧. 목록 한 번, 그리고 세 건 각각에 상세 호출 한 번씩입니다.

시카고에 게시된 "registered nurse" 급여를 휴스턴과 비교해줘.

두 번 호출, 10크레딧. 도시마다 목록 한 번입니다.

급여는 공고에 명시되어 있을 때만 목록에 포함됩니다. 그래서 "급여 있는 채용" 프롬프트는 급여가 있다고 단정하지 않고 해당 필드 값을 기준으로 필터링합니다. 페이지 이동은 start 오프셋을 사용하며, 이동할 때마다 호출 한 번이 필요합니다.

도구

읽기 전용 도구 두 개입니다. 아래 샘플은 실제 호출에서 일부만 보여주며, Indeed가 업데이트되면서 숫자는 달라질 수 있습니다. 형태를 보여주는 예로 읽으시면 됩니다. 각 도구 이름을 클릭하면 전체 필드 목록이 있는 엔드포인트 레퍼런스로 이동합니다.

샘플은 전체 응답이 아니라 페이로드입니다. tools/call 결과에는 텍스트 블록이 하나 담기며, 그 텍스트 자체가 url, status, text, json을 담는 JSON이고, 추출된 데이터는 json 아래에 있습니다. 원시 JSON-RPC 응답에서 접근 경로는 result.content[0].text 안분을 파싱한 다음 .json입니다. 채팅 클라이언트는 이 풀어주지만, 엔드포인트를 직접 호출하는 코드는 직접 처리해야 합니다.

Indeed 채용 목록 가져오기

hasdata_indeed_listing_getJobListings

키워드와 위치로 검색 결과 목록 한 페이지입니다.

파라미터

타입

필수

참고

keyword

string

yes

구직자가 입력 작성하는 방식 그대로 사용할 검색어

location

string

yes

시와 주, 또는 Indeed가 허용하는 어떤 위치 문자열

sort

string

기본값은 relevance, date로 지정하면 최신순

domain

string

au.indeed.com 같은 국가별 사이트. 기본은 미국 사이트

start

number

다음 페이지의 결과 오프셋. URL이 아니라 숫자입니다. 이전 응답의 pagination.nextPage에서 offset을 읽습니다

searchInformation, jobs 배열, peopleAlsoSearchFor, pagination을 반환합니다. 이 중 paginationnextPage는 다음 페이지의 URL입니다. 각 공고는 title, company, location, url, 짧은 description, sponsored, 상대 날짜 date와 절대 날짜 isoDate, Full-timeHybrid work 같은 라벨이 든 details 배열, benefits 배열, 그리고 공고에 급여가 명시되어 있을 경우 salary 객체를 담고 있습니다.

목록 조회에서 details는 단순 문자열 배열입니다. 아래의 채용 상세 도구에서는 detailsjobType 배열과 workSetting 배열을 가진 객체로서 반환됩니다. 이름은 같지만 형태가 다르므로, 각 도구의 형식에 따라 읽으셔야 합니다.

{
  "title": "Hedge Fund Application Developer",
  "company": "TBA",
  "location": "Stamford, CT 06901",
  "url": "https://www.indeed.com/pagead/clk?...",
  "sponsored": true,
  "date": "30+ days ago",
  "isoDate": "2025-06-03T17:22:54.869Z",
  "details": ["Full-time", "Hybrid work"],
  "benefits": ["Health insurance", "401(k)", "401(k) matching"],
  "salary": { "min": 80000, "max": 150000, "type": "YEARLY" }
}

Indeed 채용 상세 정보 가져오기

hasdata_indeed_job_getJobDetails

공고 URL로 하나의 채용 공고 전체를 읽어옵니다.

파라미터

타입

required

설명

url

string

yes

채용 공고 URL. 목록 결과의 url 필드 값입니다.

title, company, location, sponsored, details 객체("jobType"과 "workSetting" 배열을 가진 객체), 있다면 salary 객체, 그리고 공고 본문을 description(일반 텍스트)과 descriptionHtml(목록과 문단 마크업이 보존된 동일 내용) 두 가지로 반환합니다. 구조가 필요한 경우 descriptionHtml, 모델에 깨끗한 텍스트로 넣으려면 description을 사용하세요.

{
  "title": "Python Developer",
  "company": "Think IT Technologies",
  "location": "New York, NY 10114",
  "sponsored": false,
  "details": { "jobType": ["Contract"], "workSetting": ["In-person"] },
  "salary": { "min": 60.5, "max": 65, "type": "HOURLY" },
  "description": "Overview\nWe are seeking a Python Developer...",
  "descriptionHtml": "<p><b>Overview</b></p><p>We are seeking a Python Developer...</p>"
}

오류 및 실패 경로

먼저 확인할 것: 도구 호출에서 클라이언트는 HTTP 오류 코드를 보는 일이 거의 없습니다. MCP 계층은 200으로 응답하고 결과 내부에 실패를 넣습니다. isErrortrue가 설정되고 실패 사유는 텍스트로 담깁니다. 상태 코드가 있을 자리에 메시지가 에이전트에 도달합니다.

잘못된 키가 있다면 도구 출력에서 드러나며, 연결 실패는 아닙니다. tools/list는 비어 있지 않은 어떤 키도 받아들이고 두 도구를 모두 반환하므로, 클라이언트는 핸드셰이크를 마치고 정상으로 표시합니다. 그다음 첫 도구 호출에서 isError: true와 함께 텍스트 HasData API error: 401 Unauthorized가 돌아옵니다. 이 문자열을 주의하세요. 이후 흐름 어디에서도 문제를 일찍 알려주지 않으니 말입니다.

키가 없는 경우는 진짜 HTTP 오류가 하나 발생합니다. 인증은 어떤 도구보다 먼저 실행되며, 연결 자체가 401로 실패합니다. CORS 헤더가 포함되어 있으므로 브라우저 클라이언트는 불투명한 네트워크 실패가 아니라 상태 코드를 읽을 수 있습니다.

도구 스키마를 위반하는 인자는 스크레이핑하기 전에 거부됩니다. 서버는 isError: true와 텍스트 MCP error -32602: Input validation error를 반환하며, 어떤 인자가 문제인지 알려줍니다. 가져오는 데이터도 요금 청구도 없습니다.

검색 결과가 없으면 오류가 아니라 빈 jobs 배열과 함께 성공한 결과가 반환됩니다.keyword와 location 또는 combination how has "no openings" also comes back with requestMetadata.status set to ok. In 반복문을 돌리기 전에 배열 크기를 확인하세요.

expired 공고는 I’ll on the mark. requestMetadata.statuserror로 설정된 400을 반환됩니다. Indeed는 목록을 빨리 만료시키므로, 많은 함께 조회한 공고 URL이 사라져 있을 수 있습니다.

데이터가 담긴 결과에는 requestMetadata.id도 포함되어 있는데, 이를 알려 지원 문의할 때 참고하기 좋습니다.

요금, 무료 티어 및 한도

각 Indeed 도구는 성공적인 호출당 5크레딧입니다. 응답 크기는 요금에 영향을 주지 않습니다. 공고 50개가 담긴 목록 페이지나 2개가 담긴 목록 페이지나 동일 금액입니다.

무료 체험판은 카드 없이 30일간 1,000크레딧으로, Indeed 호출 200회에 해당합니다. 체험 후에는 활성 계정의 잔액이 100 미만으로 떨어지면 매일 100크레딧이 자동으로 채워지기 때문에, 호출량이 적은 에이전트는 무료 티어로 계속 사용할 수 있습니다.

유료 플랜은 월 $49에 200,000크레딧(40,000회 호출)부터 시작합니다. 단가(permalink capacity)은 볼륨에 따라 내려가서, 입문 요금제의 1천 호출당 $1.23에서 Business $0.50, Growth $0.42, 그리고 최대 규모 대량 플랜에서 $0.37까지 낮아집니다.

플랜에 따라 동시채 요청(concurrency가 정해집니다. 무료 체험판은 한 번에 1개 요청, Startup 15, Business 30, Growth 50, 그리고 대량 요금제은 200~1,500개 범위에서 실행됩니다. 무인으로 돌아가는 작업에서는 오버(초)에 대비한 방어 처리를에 넣으세요.

비정상(200이 아닌) 응답은 청구되지 않습니다. 성공했지만 결과가 없는 호출은 여전히 한 번의 호출로 계산됩니다.

도구 선택

apis 쿼리 파라미터는 에이전트가 보게 될 도구가 결정됩니다. 도구가 적을수록 편 정의에 쓰는 컨텍스트가 줄고, 모델이 잘못된 도구를 선택할 가능성도 줄어듭니다.

?apis=indeed                     the two tools in this repo
?apis=indeed,glassdoor           add Glassdoor jobs
?apis=indeed,google_serp         add Google search

파라미터에는 indeed 같은 provider 이름과 indeed_listing 같은 개별 API 이름을 사용할 수 있습니다. 이름을 잘못 쓰면 그 이름은 무시됩니다. 전부 오기를 잘못 쓴 경우에는 요청이 400으로 실패하고,응답 본문에 인식하지 못한 이름과 사용 가능한 전체 값을 함께 나열해줍니다.

파라미터 없이 호출하면 동일한 엔드포인트에서 57개의 HasData 도구 전체가 노출됩니다.

다른 방식과의 비교

Indeed는 공개 Publisher 및 Job Search API를 운영하지 않으며, 이제 프로그래밍 방식의 접근은 셀프서브 키가 아니라 승인된 파트너십과 ATS 통합을 통해서만 가능합니다. 공개 공고와 목록을 임의의 검색에 따라 읽을 수 있는 공식 개방 경로는 존재하지 않습니다.

공식 Indeed 접근

이 서버

접근

파트너 또는 ATS 승인

하나의 키와 하나의 URL

범위

파트너십이 부여하는 것은 모두

모든 공개 검색 또는 채용 공고

구서

비즈니스 검토

없음

출력

통합에 따른

구조화된 JSON, 급여 사전 파싱

쓰기

승인된 파트너용 지원 흐름

읽기 전용, 공개 데이터만

이 서버가 하지 않는 일. 지원서 제출, 고용주 대시보드, 후보자 데이터, 비공개 채용 정보는 없습니다. 로그아웃한 방문자가 볼 수 있는 내용만 읽습니다.

FAQ

공식 Indeed MCP 서버가 있나요?

Indeed는 공식 서버를 감/마하하지 않습니다. 이 서버는 HasData가 유지보수하며 공개 페이지를 읽기 때문에 Indeed 개발자 계정이 않이라요.

Indeed MCP 서버란 무엇인가요?

Most에 해용 데이터를 하는일 수 있는 도구로 노출하는 서버입니다. 클라인어는 Message Contection Protocol 통해 도구 호칭를 보내고, 서버는 데라를 로가와 구조화된 JSON을 반환하며, 모델은 결과를 사영합니다. 이 서버는 두 개의 도구를 제공하며 모 작성으로 동작합니다.

Indeed API 키나 파트너 어카운트가 필요한 것은?

아니입니다. 유일한 인증 정보는 귀하의 HasData 키입이다. 유일한 Publisher 계정을 신청할 필요가 없습니다. 이 도구들은 공개 Indeed 페이지를 읽을 기 때문입니다.

방법으로 화면을 하나 이상 하개의 결과를 보려면 어떻게 하나요?

start 오프셋트를 목록 도구에 URL이 아닌 숫자로 전달하세요. 응답은 pagination.nextPage를 반환하며, 이 값의 start가 다으 URL의 на 아님 오프셋트이므로 다시 전달하지 마세요. 그 읽은 그것을 그러서 다시 전달하세요.

급여가 가끔 누락된 결우는?

채용 공고에 급여가 명시되어 있지 아니기 때문입니다. 실제인 Indeed가 그 금ì를 보여주 때 salary 펼일드가 존재하며, 방어적으로 처리하세요.

Can I use this together with other Services?

예, apis 매개변수는 목록을 받고, ?apis=indeed,industry와 같이 사용하면 AI가 Indeed와 다른 AP를 얻습니다. 파개변수 생략하면 전체 서버를 사용합니다.

규준 준주 및 개인 데이터

HasData는 공개적으로 доступ한 데이터만 접근합니다. 해당 플랫품의 이용 약법이 자동 접근을 제한할 수 있으며, 귀하의 준법은 귀하 자신의 책임입니다. 극하가 채집하는 데이터에 개인 정보가 포함된 경우 귀하법, CCPA 또는 귀하 관지법규의 유사한 조고에 따라 합법한 근거를 확는하세요.

HasData 링크

and제품 페이지 및 요청 라이빠더

Indeed Scraper API

Servers documentation

MCP server docs

All 57 tools in one server

[HasData/hasdata-mcp](https://github.com/HasData/hasdata-mcp

Client walkthroughs

MCP clients and integrations

Everything else we scrape

Indeed Scraper API and 54 more

Plans and credit costs

Plans and credit costs

Keys and usage

HasData dashboard

개발

이 개요는 원격 서버에 대한 구성 및 문서입니다. 빌입니다. 구축 단계나 도커화라도 없습니다.

test/ 안의 테스트는 도구와 계약을 검증합니다. 계약은 커밋를 하지 않아도 깨을 수 있는 부분입니다. 다음 ?apis=indeed가 정확히 두 개의 도구를 반환하는지, 모든 도구가 매개변수를 정확히 나열하는지, 이름이 확실하지 않은지, 그리고 사용중인 키가 실을 사용자 검증되시는지 확인합나다. 마지막 검사는 실제 도구를 호출하며 5크레디터가 소모, 됩니다. 이것은 올은 멍유로 실패할 수 있는 카나 테스트입니다.

# macOS and Linux
HASDATA_API_KEY=your_key_here npm test

# Windows PowerShell
$env:HASDATA_API_KEY="your_key_here"; npm test

동일한 테스트 모니터링은 CI에서 모든 prush 및 한 주에 한 번 일정에 실행되며, 이는 upstream의 도구 목록 변경이 개인에 break하지 않고 발생할 수 있기 때문입니다. 테스트 실패에 도구 목록이 시프트되기, 열쇠stopped, 또는 엔드포트 알 수 없음을 나타내며, 의 assertion 메시지가 정확한 원인을 설명합니다.

기여

도대표 툴과 표와 응답 샘플에 대한 수정이 가장 유용한 기여입니다. 코드의 일반적인 변화를 넣어서 가져오세요. Pull requests에서 제공 non한 사편이 존재합니다, 반면 real-time checks canbe skipped.

라이선

MIT. See LICENSE.

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
1Releases (12mo)
Commit activity

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Enables users to search LinkedIn's public job listings with advanced filters like location, salary, and experience level. It allows MCP-compatible clients to retrieve real-time job opportunities without requiring LinkedIn authentication or API keys.
    1
    2
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Enables searching over 1 million enriched job listings from 20,000+ companies directly from MCP-compatible AI tools. Provides tools for job search, company profiles, and AI-powered similar job recommendations with real-time data updates.
    4
    81
    2
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Live Indeed job-postings data for AI agents via the RolesAPI REST API: search listings by keyword and location, and fetch role details, salary, description, company, and benefits. Available as drop-in agent skills or a hosted remote MCP server.
    MIT No Attribution
  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables searching real job listings from multiple job boards (Indeed, LinkedIn, Glassdoor, Google Jobs, etc.) through a single MCP tool, designed for use as a custom connector in Claude Cowork.

View all related MCP servers

Related MCP Connectors

  • Live job postings from 30+ ATS feeds and job boards, one schema. Live results need a Bearer key.

  • Google Jobs listings with direct apply links via the Apify Google Jobs Scraper, hosted MCP.

  • One MCP for 160+ live web-data APIs — clean JSON from sites that block scrapers.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/HasData/indeed-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server