
Taiwan Jobs 台灣求職
io.github.HsuanC0921Published by GitHub account HsuanC0921v1.2.1Updated Oct 26, 2026
Read-only Taiwan job search: 104, Yourator, and Greenhouse, Lever and Workday career sites.
Overview
Read-only MCP server that lets an assistant search Taiwan job postings on 104, Yourator, and foreign employers' Greenhouse, Lever and Workday career sites.
- What you can do
- Search postings across 104, Yourator, Greenhouse/Lever boards and Workday sites, merged and ranked, with filters for keyword, area, category, salary floor, experience, education, job type, remote and recency
- Read a full posting: description, requirements, pay, hours, leave, welfare, and how recently HR handled résumés; on 104 also applicant counts and background breakdowns, plus similar postings
- View company profiles with their current openings, optionally filtered by keyword
- Compute pay statistics (median, quartiles, min, max) over pages of a 104 search
- Check which sources are reachable and look up 104 area or category codes by name
- When to use it
- Useful when you want an assistant to find, compare or vet Taiwan job openings, including roles that foreign companies post only on their own career sites, and to judge competition and pay ranges before applying.
- Requirements
- Runs locally over stdio via uvx (uv required; the first run downloads dependencies). No account or API key. Network access to the job sites is needed. Optional environment variables configure transport, host/port, cache TTL, career-site lists and output format.
Installation
In SourceWeft
- Open Taiwan Jobs 台灣求職 in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
tw-jobs-mcp
English · 繁體中文
[test] [PyPI] [License: MIT] [Python 3.11+]
Search Taiwan job postings from any AI assistant. tw-jobs-mcp is a read-only MCP server that covers 104 人力銀行, Yourator, and the Taiwan openings on foreign companies' own career sites (Greenhouse, Lever, and 38 employers on Workday). Ask in plain Chinese or English; the assistant turns the request into precise filters.
No account and no API key are needed.
Unofficial. Not affiliated with or endorsed by 104 or any other site it reads. It calls the same public endpoints the sites' own pages use. Keep the request rate low and follow each site's terms. No job data ships with this project.
What you can ask
Find .NET backend jobs in Taipei paying at least 50,000 a month, and tell me what the market pays.
I have two years of experience. Show remote backend postings in New Taipei, read the top three, and compare the companies.
Is this posting worth applying to? How many people applied, and what are their backgrounds?
Which foreign chip companies are hiring hardware engineers in Hsinchu?
Does this company have any data roles, even ones whose title does not say so?
Behind the scenes the assistant chains the tools. The output below is illustrative; companies and ids are made up.
Why this server
- Reaches roles 104 does not have. Foreign companies often post Taiwan openings only on their own career sites. One search with
source="all"covers 104, Yourator, Greenhouse and Lever boards (Appier, Stripe, MongoDB, Pinkoi and more), and Workday sites of chip, hardware, pharma and finance employers (NVIDIA, Micron, Applied Materials, KLA, Cisco, Intel, NXP, GSK and more). Results from every source are merged and ranked together. - Finds the posting you half remember. Results are reordered by how many of your words the title and company cover. On 40 test searches built from real postings, the intended one ranked first 35 times, against 18 with 104's own order.
- Shows the competition. For a 104 posting,
get_job(applicants=true)reports how many people applied in the last two weeks and how they break down by education, experience, age, major, language, skills and certificates. Every posting shows how recently the employer handled résumés, a fair hint of whether anyone reads applications. - Filters that really filter. Keyword, area, job category, salary floor (monthly, yearly, daily or hourly), years of experience, education, job type, remote, and posted in the last 7 days. Every filter was checked against the live site, and a source that cannot apply one says so under the results.
- Made for capable models. Every allowed value is in the schema. The server instructions state principles, not long case lists. The server handles only what the model cannot see: it widens an ambiguous place name, turns an unmatched category into a keyword, and loosens filters one at a time when nothing matches. Each of these assumptions is listed under the results.
- Light on context. Replies are compact tables, not JSON: 20 postings take about 2,000 characters, under a fifth of the same data as JSON. All six tool definitions together are under 3,000 characters. Long texts are clipped unless you ask for
full. - Read-only and polite. It never logs in, applies or saves anything. It paces requests to each site (one per second on 104), caches responses for five minutes, and drops the two paid postings 104 pins to every page.
Install
Requires uv. These commands run the published package from PyPI. It is also listed in the official MCP Registry as io.github.HsuanC0921/tw-jobs-mcp.
Claude Code
OpenAI Codex CLI
or in ~/.codex/config.toml:
Claude Desktop: download tw-jobs-mcp-<version>.mcpb from Releases and open it, or use the JSON below.
Gemini CLI, Cursor, Windsurf, Cline and other mcpServers clients: add to ~/.gemini/settings.json, ~/.cursor/mcp.json, Windsurf's mcp_config.json, or the client's equivalent:
VS Code (GitHub Copilot): .vscode/mcp.json uses servers and needs a type:
Remote (HTTP) and Docker, for clients that connect by URL or a server shared by a team:
The HTTP server has no authentication. Keep it on localhost or a private network, or put an authenticating reverse proxy in front.
Unreleased code: uvx --from git+https://github.com/HsuanC0921/tw-jobs-mcp tw-jobs-mcp.
Agent skill
The server already tells a model how to use it. skills/tw-jobs gives agents that load skills more guidance: turning a request into arguments, picking a source, reading the notes, and reporting honestly. It follows the open Agent Skills format.
- Claude Code:
/plugin marketplace add HsuanC0921/tw-jobs-mcp, then/plugin install tw-jobs@tw-jobs-mcp(bundles the server and the skill). Or copyskills/tw-jobsto~/.claude/skills/. - Codex and other skill-aware agents: copy
skills/tw-jobsto~/.agents/skills/.
Tools
search_jobs arguments, all optional:
Sources
Ids tell where a posting lives: a bare id is 104, y: Yourator, g: / l: Greenhouse / Lever, w: Workday. Pass them back as listed.
Add or remove career sites with TW_JOBS_BOARDS (g:gitlab,l:kraken,-g:stripe) and TW_JOBS_WORKDAY (acme.wd1/External,-micron); a leading - removes one. Each Workday search reads the first 60 rows per company, so narrow deep searches with a keyword.
Left out on purpose: 1111 (the same kind of board as 104, smaller), Cake (a Cloudflare challenge on every request) and LinkedIn (its terms forbid automated access).
Configuration
How it works and its limits
104 sits behind Cloudflare, which answers ordinary HTTP clients with a 403. curl_cffi presents a real Chrome TLS fingerprint and gets through. Area and category names are resolved locally against 104's public code tables.
- Read-only. No login, applying or bookmarking. Giving an AI your job-board password is not worth the risk.
- No company-name search. 104 blocks that endpoint to scripts. Reach a company through the
company_idon a posting, or put its name inkeyword. - The applicant count is inferred. 104 publishes only percentages, so the count is the smallest number that fits them, a floor rather than an exact figure.
salary_overviewsamples the most relevant postings rather than the whole site, and many postings do not publish pay.
Development
License
MIT. Provided as is, without warranty.
Source: README.md at commit ea17a35
Tools
0Version history
2- v1.2.1LatestOct 20, 2026
- v1.1.2Oct 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
