Skip to main content
MCP server CX Codex

OpenHire · 哨兵 — MCP server for Claude Code: job search with real dates

Searches jobs on employers' own ATS and returns the true posting date and days open to your agent. Your résumé stays on your machine.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env OPENHIRE_DATABASE_URL=<OPENHIRE_DATABASE_URL> --transport stdio openhire -- uvx openhire
Open on GitHub

What OpenHire · 哨兵 does

The server gives your assistant a job search over listings that employers published themselves on career pages and public ATS platforms such as Greenhouse, Lever, Ashby, Beisen and Moka. Each row from search_jobs carries the company, location, the posting date reported by the employer's system, how many days the role has been open, and a link to the employer's apply form. That is the point: the agent reasons about the age of a listing instead of trusting a board's refreshed “2 days ago” label.

The index sits on your own machine. On first start the server fetches it in the background; only an anonymous fingerprint and a job id travel to the server. There is no field for a résumé in the protocol. Applications are never submitted — the server stops at the employer's own page. Result order is a pure function of match and freshness, so nobody can buy a slot.

You need uv on the machine, since the config launches the server through uvx openhire; some setups also pass OPENHIRE_DATABASE_URL. What ghost_score measures is time on the market. A role open for months may simply be hard to fill, and that is a question to put to the employer, not a verdict.

What it helps with

  • drop listings that have sat open for months
  • get the employer's real posting date instead of a board's label
  • find roles in AI, infrastructure, autonomous driving and robotics
  • reach the employer's own apply form in one hop
  • search jobs without handing a résumé to a third party

Example prompts for the agent

  • Use OpenHire to find senior Python roles that are still open and skip anything on the market for more than three months
  • Search openhire for robotics jobs in Shanghai with company, posting date, days open and the apply link

How to install OpenHire · 哨兵

Platform CLI

claude mcp add --env OPENHIRE_DATABASE_URL=<OPENHIRE_DATABASE_URL> --transport stdio openhire -- uvx openhire

Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from openhire <command>

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about OpenHire · 哨兵

How do I install OpenHire · 哨兵 in Claude Code?

Run claude mcp add openhire -- uvx openhire. With a database: claude mcp add --env OPENHIRE_DATABASE_URL=<OPENHIRE_DATABASE_URL> --transport stdio openhire -- uvx openhire.

What does OpenHire · 哨兵 do?

It exposes a search_jobs tool over vacancies taken from employer ATS platforms. Rows include the posting date, days the role has been open and the apply link.

Do I have to upload a résumé?

No. The protocol has no résumé field and an extra résumé argument is refused. Matching happens on your machine.

Similar MCP servers

All MCP servers for Agent setup: memory, context, orchestration →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor