boss WebMCP
Browser tool configuration for boss
Tools (2)
boss_detail()
获取 BOSS直聘职位详情(JD、公司信息)
Parameters
JavaScript Handler
(params) => {
const run = async function(args) {
if (!args.securityId) return {error: 'Missing argument: securityId', hint: 'Run boss/search first to get securityId'};
const resp = await fetch('/wapi/zpgeek/job/detail.json?securityId=' + encodeURIComponent(args.securityId), {credentials: 'include'});
if (!resp.ok) return {error: 'HTTP ' + resp.status};
const d = await resp.json();
if (d.code !== 0) return {error: d.message || 'API error', code: d.code};
const job = d.zpData?.jobInfo || {};
const brand = d.zpData?.brandComInfo || {};
const boss = d.zpData?.bossInfo || {};
return {
job: {
name: job.jobName, salary: job.salaryDesc, experience: job.experienceName,
degree: job.degreeName, location: job.locationName, address: job.address,
skills: job.showSkills, description: job.postDescription, status: job.jobStatusDesc,
url: job.encryptId ? `https://www.zhipin.com/job_detail/${job.encryptId}.html` : undefined
},
company: {
name: brand.brandName, stage: brand.stageName, scale: brand.scaleName,
industry: brand.industryName, intro: brand.introduce
},
boss: {
name: boss.name, title: boss.title
}
};
};
return run(params || {});
}
boss_search()
BOSS直聘搜索职位
Parameters
JavaScript Handler
(params) => {
const run = async function(args) {
if (!args.query) return {error: 'Missing argument: query', hint: 'Provide a job search keyword'};
const city = args.city || '101010100';
const page = parseInt(args.page) || 1;
const params = new URLSearchParams({
scene: '1', query: args.query, city, page: String(page), pageSize: '15',
experience: args.experience || '', degree: args.degree || '',
payType: '', partTime: '', industry: '', scale: '', stage: '',
position: '', jobType: '', salary: '', multiBusinessDistrict: '', multiSubway: ''
});
const resp = await fetch('/wapi/zpgeek/search/joblist.json?' + params.toString(), {credentials: 'include'});
if (!resp.ok) return {error: 'HTTP ' + resp.status};
const d = await resp.json();
if (d.code !== 0) return {error: d.message || 'API error', code: d.code};
const zpData = d.zpData || {};
const jobs = (zpData.jobList || []).map(j => ({
name: j.jobName, salary: j.salaryDesc, company: j.brandName,
city: j.cityName, area: j.areaDistrict, district: j.businessDistrict,
experience: j.jobExperience, degree: j.jobDegree,
skills: j.skills, welfare: j.welfareList,
boss: j.bossName, bossTitle: j.bossTitle, bossOnline: j.bossOnline,
industry: j.brandIndustry, scale: j.brandScaleName, stage: j.brandStageName,
jobId: j.encryptJobId, securityId: j.securityId,
url: j.encryptJobId ? `https://www.zhipin.com/job_detail/${j.encryptJobId}.html` : undefined
}));
return {query: args.query, city, page, total: zpData.totalCount, count: jobs.length, jobs};
};
return run(params || {});
}
🔌 Chrome MCP Server Extension
Use these tools with Claude, ChatGPT, and other AI assistants.
How to Use WebMCP
WebMCP tools are designed for browser extensions or automation frameworks. The browser extension matches the current URL against the pattern and executes the JavaScript handler when the tool is invoked.
API Endpoint:
GET /api/webmcp/match?url=https://www.boss.com/...