getwork.dev
Search developer jobs read straight from employers' hiring systems: stack, level, remote, salary.
我该使用它吗
质量与安全性
发现(4)
- LOW在 get_job 中
- LOW在 similar_jobs 中
- LOW在 list_companies 中
- LOW在 fetch 中
基于对工具定义和协议合规性的自动分析。
上下文开销
这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。
安装
一键安装
将以下内容添加到你的 `claude_desktop_config.json` 文件中:
{
"mcpServers": {
"jobs": {
"url": "https://getwork.dev/mcp"
}
}
}远程端点
https://getwork.dev/mcpstreamable-http它能做什么
工具清单
工具(8)
🟢search_jobs(collapse, company, countries, currency, exclude, ...)
Search active developer jobs. Returns compact JobSpecs (no description) sorted by relevance or recency. Use get_job for details.
输入模式
{
"type": "object",
"properties": {
"collapse": {
"default": true,
"description": "Group the same role posted for several locations into one result; same_role_other_locations tells how many more exist.",
"type": "boolean"
},
"company": {
"description": "Company slug from list_companies.",
"type": "string"
},
"countries": {
"description": "ISO 3166-1 alpha-2 codes, e.g. NL, DE, GB.",
"items": {
"type": "string"
},
"type": "array"
},
"currency": {
"description": "ISO currency code (EUR, USD, GBP). Restricts to jobs that publish pay in this currency.",
"type": "string"
},
"exclude": {
"description": "Leave out jobs matching any of these: a stack tag (not in the primary stack or title), a role family, or a topic like 'crypto' or 'gambling' (not mentioned anywhere, synonyms included).",
"items": {
"type": "string"
},
"type": "array"
},
"limit": {
"default": 20,
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"min_salary": {
"description": "Minimum yearly salary (upper end of the published range must reach it). Combine with currency.",
"type": "integer"
},
"offset": {
"default": 0,
"minimum": 0,
"type": "integer"
},
"posted_within_days": {
"minimum": 1,
"type": "integer"
},
"query": {
"description": "Free text, e.g. 'distributed systems' or 'payments'. Every word must match (a word also matches its synonyms).",
"type": "string"
},
"regions": {
"description": "Any of these regions. Worldwide-remote jobs are always included.",
"items": {
"enum": [
"europe",
"north_america",
"latam",
"apac",
"mea",
"global"
],
"type": "string"
},
"type": "array"
},
"remote": {
"enum": [
"remote",
"hybrid",
"onsite",
"remote_or_hybrid"
],
"type": "string"
},
"role_family": {
"items": {
"enum": [
"software",
"frontend",
"backend",
"fullstack",
"mobile",
"infra",
"data",
"ml",
"security",
"embedded",
"qa",
"management",
"founding"
],
"type": "string"
},
"type": "array"
},
"salary_required": {
"description": "Only jobs that publish a salary range.",
"type": "boolean"
},
"seniority": {
"items": {
"enum": [
"intern",
"junior",
"mid",
"senior",
"staff",
"principal",
"lead",
"manager",
"unspecified"
],
"type": "string"
},
"type": "array"
},
"stack": {
"description": "Technology tags that must all be in the role's primary stack, lowercase: rust, go, typescript, python, react, postgres, kubernetes, ... Passing mentions (stack_mentioned) do not match.",
"items": {
"type": "string"
},
"maxItems": 10,
"type": "array"
}
},
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"jobs": {
"items": {
"properties": {
"apply_url": {
"type": "string"
},
"company": {
"type": "object"
},
"getwork_url": {
"type": "string"
},
"id": {
"type": "string"
},
"injection_flag": {
"type": "boolean"
},
"location": {
"type": [
"string",
"null"
]
},
"remote": {
"type": "string"
},
"salary": {
"type": [
"object",
"null"
]
},
"title": {
"type": "string"
}
},
"required": [
"id",
"title",
"company",
"getwork_url",
"apply_url"
],
"type": "object"
},
"type": "array"
},
"next_offset": {
"type": [
"integer",
"null"
]
},
"offset": {
"type": "integer"
},
"security_notice": {
"type": "string"
},
"total": {
"type": "integer"
}
},
"required": [
"total",
"jobs"
]
}🟢get_job(id)
Full JobSpec for one job, including the employer's description as untrusted_description.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"apply_url": {
"type": [
"string",
"null"
]
},
"company": {
"type": "object"
},
"getwork_url": {
"type": "string"
},
"id": {
"type": "string"
},
"injection_flag": {
"type": "boolean"
},
"security_notice": {
"type": "string"
},
"title": {
"type": "string"
},
"untrusted_description": {
"type": "string"
}
},
"required": [
"id",
"title",
"company",
"untrusted_description"
]
}🟢similar_jobs(id, limit)
Roles similar to a given job (title, stack and description overlap), excluding the same role at other locations.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"limit": {
"default": 10,
"maximum": 25,
"minimum": 1,
"type": "integer"
}
},
"required": [
"id"
],
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"jobs": {
"items": {
"properties": {
"apply_url": {
"type": "string"
},
"company": {
"type": "object"
},
"getwork_url": {
"type": "string"
},
"id": {
"type": "string"
},
"injection_flag": {
"type": "boolean"
},
"location": {
"type": [
"string",
"null"
]
},
"remote": {
"type": "string"
},
"salary": {
"type": [
"object",
"null"
]
},
"title": {
"type": "string"
}
},
"required": [
"id",
"title",
"company",
"getwork_url",
"apply_url"
],
"type": "object"
},
"type": "array"
},
"security_notice": {
"type": "string"
},
"similar_to": {
"type": "object"
}
},
"required": [
"similar_to",
"jobs"
]
}🟢search(query)
Natural-language job search, e.g. 'remote senior Rust jobs in Europe'. Understands salary floors ('over €120k') and exclusions ('no crypto'). Returns ids, titles and URLs, the total, filters: how the query was read (as search_jobs arguments), and broadened: filters it dropped to find any results. Use fetch for details. Prefer search_jobs when you can set filters directly.
输入模式
{
"type": "object",
"properties": {
"query": {
"type": "string"
}
},
"required": [
"query"
],
"additionalProperties": false
}🟢fetch(id)
Full text and metadata for one job id returned by search.
输入模式
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
},
"required": [
"id"
],
"additionalProperties": false
}🟢salary_insights(company, countries, currency, exclude, posted_within_days, ...)
Yearly salary percentiles per currency for active jobs matching the filters, from employer-published ranges.
输入模式
{
"type": "object",
"properties": {
"company": {
"description": "Company slug from list_companies.",
"type": "string"
},
"countries": {
"description": "ISO 3166-1 alpha-2 codes, e.g. NL, DE, GB.",
"items": {
"type": "string"
},
"type": "array"
},
"currency": {
"description": "ISO currency code (EUR, USD, GBP). Restricts to jobs that publish pay in this currency.",
"type": "string"
},
"exclude": {
"description": "Leave out jobs matching any of these: a stack tag (not in the primary stack or title), a role family, or a topic like 'crypto' or 'gambling' (not mentioned anywhere, synonyms included).",
"items": {
"type": "string"
},
"type": "array"
},
"posted_within_days": {
"minimum": 1,
"type": "integer"
},
"query": {
"description": "Free text, e.g. 'distributed systems' or 'payments'. Every word must match (a word also matches its synonyms).",
"type": "string"
},
"regions": {
"description": "Any of these regions. Worldwide-remote jobs are always included.",
"items": {
"enum": [
"europe",
"north_america",
"latam",
"apac",
"mea",
"global"
],
"type": "string"
},
"type": "array"
},
"remote": {
"enum": [
"remote",
"hybrid",
"onsite",
"remote_or_hybrid"
],
"type": "string"
},
"role_family": {
"items": {
"enum": [
"software",
"frontend",
"backend",
"fullstack",
"mobile",
"infra",
"data",
"ml",
"security",
"embedded",
"qa",
"management",
"founding"
],
"type": "string"
},
"type": "array"
},
"seniority": {
"items": {
"enum": [
"intern",
"junior",
"mid",
"senior",
"staff",
"principal",
"lead",
"manager",
"unspecified"
],
"type": "string"
},
"type": "array"
},
"stack": {
"description": "Technology tags that must all be in the role's primary stack, lowercase: rust, go, typescript, python, react, postgres, kubernetes, ... Passing mentions (stack_mentioned) do not match.",
"items": {
"type": "string"
},
"maxItems": 10,
"type": "array"
}
},
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"by_currency": {
"items": {
"properties": {
"currency": {
"type": "string"
},
"median_range": {
"type": "object"
},
"midpoint": {
"type": "object"
},
"sample_size": {
"type": "integer"
}
},
"required": [
"currency",
"sample_size"
],
"type": "object"
},
"type": "array"
},
"note": {
"type": "string"
},
"period": {
"type": "string"
}
},
"required": [
"by_currency"
]
}🟢list_companies
Companies in the index with their number of active developer jobs.
输入模式
{
"type": "object",
"properties": {},
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"companies": {
"items": {
"properties": {
"active_dev_jobs": {
"type": "integer"
},
"claimed": {
"type": "boolean"
},
"name": {
"type": "string"
},
"slug": {
"type": "string"
},
"website": {
"type": [
"string",
"null"
]
}
},
"required": [
"slug",
"name"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"companies"
]
}🟢market_overview
Totals and the most requested technologies across all active jobs.
输入模式
{
"type": "object",
"properties": {},
"additionalProperties": false
}输出模式
{
"type": "object",
"properties": {
"active_jobs": {
"type": "integer"
},
"companies": {
"type": "integer"
},
"jobs_with_salary": {
"type": "integer"
},
"top_stack": {
"items": {
"properties": {
"jobs": {
"type": "integer"
},
"tag": {
"type": "string"
}
},
"required": [
"tag",
"jobs"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"active_jobs",
"top_stack"
]
}社区
证据