Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

Anjin

БесплатноНе проверен

MCP server for anjin.tech — Japan tech jobs, searchable by LLM agents

GitHubEmbed

Описание

MCP server for anjin.tech — Japan tech jobs, searchable by LLM agents

README

CI License: MIT

MCP server for anjin.tech, a Japan tech-jobs aggregator that pulls from Findy, Green, HERP and Levtech. Roughly 7,700 listings with parsed salaries across ~3,500 companies, machine-translated to English. Gives an agent a way to search the Japanese job market, pull up a listing, and match a profile against open roles.

Things you can ask for:

"Find me remote Rust jobs in Japan paying over ¥10M"

"What's the salary distribution for backend roles?"

"Which companies are hiring TypeScript engineers in Osaka?"

Tools

Tool What it does
search_jobs Filter by tech tags, role, remote policy, min salary, prefecture, recency, board, English-friendly. Returns short cards with job ids.
get_job Full listing by id: requirements, tech stack, work style, compensation, apply link.
search_companies Name / category / prefecture search over the cached company dataset.
get_company Profile + open jobs, by slug or exact company name.
get_market_report Market stats by topic: salary, roles, tech demand, remote split, top employers, AI adoption.
match_jobs Takes a candidate profile (skills, roles, salary floor, remote, location) and returns ranked matches with a note on why each one scored.

Install

Requires Node.js 20+ and git.

npm install -g github:egegungordu/anjin-mcp

This puts an anjin-mcp command on your PATH. Then register it with your client:

Claude Code

claude mcp add anjin -- anjin-mcp

Codex

codex mcp add anjin -- anjin-mcp

opencode, in opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "anjin": { "type": "local", "command": ["anjin-mcp"], "enabled": true }
  }
}

VS Code

code --add-mcp "{\"name\":\"anjin\",\"command\":\"anjin-mcp\"}"
Other clients (Claude Desktop, Cursor, Gemini CLI, Windsurf, Zed)

Same block for all of them, just a different file:

{
  "mcpServers": {
    "anjin": { "command": "anjin-mcp" }
  }
}
Client File
Claude Desktop claude_desktop_config.json (Settings → Developer → Edit Config)
Cursor ~/.cursor/mcp.json, or .cursor/mcp.json per project
Gemini CLI ~/.gemini/settings.json
Windsurf ~/.codeium/windsurf/mcp_config.json
Zed settings.json, under context_servers
Run from a local clone instead
git clone https://github.com/egegungordu/anjin-mcp.git
cd anjin-mcp && npm install     # builds via the prepare script
claude mcp add anjin -- node /absolute/path/to/anjin-mcp/dist/index.js

No API key or account needed. anjin.tech is public.

How it works

anjin.tech has no API, no sitemap and no feeds, so this server fetches the site's Next.js pages and reads the JSON that's already sitting inside them: the RSC flight payload on list pages, streamed Suspense HTML on detail pages. Parsing the streaming protocol instead of CSS selectors means a redesign of the site won't break anything here.

Requests go out one at a time with a 400 ms gap between them. Pages are cached for 5 minutes, the company dataset for 12 hours. Everything times out at 20 s and retries once if the failure looks transient.

The tool surface follows Anthropic's tool-design guidance. Six tools shaped around a whole task each, instead of one tool per endpoint. Responses are short by default, with a detailed flag when you want the rest. Ids are readable. Enums and defaults cover the common case so the model only has to spell out what it actually cares about, and romaji prefecture names map to Japanese on the way in. Errors say what to try next instead of printing a stack trace. Scraped listing text is labeled as data, not instructions, so a job post can't steer the model.

Known limits, all of them upstream. There's no free-text keyword search over jobs, only the filter vocabulary. Wantedly listings can't be browsed. About 68% of the headline job count has detail data that parses. The company index is mostly stub records (name, HQ, a few metrics, categories on maybe 7%), so a question like "which companies use Go" has to go through search_jobs instead. Report figures come from the site's daily snapshot, so they lag live search counts.

Development

npm install          # installs deps and builds
npm test             # offline parser tests against captured fixtures
npm run test:handshake   # offline MCP protocol handshake + tool surface
npm run test:smoke       # live end-to-end suite (hits anjin.tech)
npm run test:protocol    # live MCP round-trip
src/index.ts          server entry: tool registration (stdio transport)
src/lib/http.ts       fetch layer: serialization, rate gap, TTL cache, retry
src/lib/flight.ts     RSC flight payload + React streamed-HTML resolution
src/lib/jobs.ts       job search params/parsing + job detail parsing
src/lib/companies.ts  company dataset cache, search, resolution, detail
src/lib/report.ts     market report section extraction
src/lib/match.ts      multi-search candidate matching + scoring
src/lib/format.ts     concise/detailed renderers shared by tools

License

MIT. This is an unofficial client for a public site and isn't affiliated with anjin.tech.

from github.com/egegungordu/anjin-mcp

Установить Anjin в Claude Desktop, Claude Code, Cursor

Рекомендуется · одна команда, все IDE
unyly install anjin

Ставит в Claude Desktop, Claude Code, Cursor и VS Code — сам разбирается с npx, uvx и сборкой из исходников.

Впервые? Поставь CLI: curl -fsSL https://unyly.org/install | sh

Или настроить вручную

Выполни в терминале:

claude mcp add anjin -- npx -y github:egegungordu/anjin-mcp

Пошаговые гайды: как установить Anjin

FAQ

Anjin MCP бесплатный?

Да, Anjin MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для Anjin?

Нет, Anjin работает без API-ключей и переменных окружения.

Anjin — hosted или self-hosted?

Self-hosted: сервер запускается локально на твоей машине командой из раздела установки.

Как установить Anjin в Claude Desktop, Claude Code или Cursor?

Открой Anjin на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare Anjin with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории ai