list_feeds
Get all your job feeds
Takes no parameters.

io.github.houtini-aiPublished by GitHub account houtini-aiv2.4.0Updated Nov 1, 2026
Build job feeds from careers pages; query enriched jobs and hiring stats. Needs a YubHub API key
YubHub MCP server lets an assistant create and manage job feeds built from company careers pages, inspect enriched job listings, and query hiring market…
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Follow the launch instructions in the repository.
Turn any careers page into a structured job feed. Straight from Claude, Cursor or any MCP client.
[npm version] [MIT License] [MCP Compatible] [npm downloads] [Socket Badge]
Developer docs for YubHub's API, feeds and this server are at yubhub.co/developers.
You'll need a YubHub account on the Pro Publisher plan first: the server needs an API key. Head to your account page to grab your User ID and API key (required).
Open your Claude Desktop config file:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.jsonAdd this block inside "mcpServers":
Restart Claude Desktop. That's it. Ask Claude to "list my YubHub feeds" and you should see your data come back.
Same idea. Drop the config into your MCP settings and point it at npx -y @houtini/yubhub with the same env vars.
YubHub watches careers pages. Point it at a company's jobs URL, and it will discover every open role, scrape the listings, enrich them with AI (title normalisation, category tagging, salary extraction, company research) and publish them as an XML feed.
This MCP server gives you full control over that pipeline from inside your AI assistant. Create feeds, trigger runs, check on jobs, view dashboards, browse market stats. No browser tab required.
Supported ATS platforms include Greenhouse, Lever, Workable, Workday, Oracle HCM, SmartRecruiters, Ashby, Pinpoint, Phenom and more. For platforms with public APIs (Greenhouse, Lever, Workable, Pinpoint), discovery skips scraping entirely and goes straight to enrichment.
23 tools across four areas.
These read the live market numbers behind yubhub.co straight into your chat. No feed and no account needed - the stats endpoints are open, so you can ask what the market's doing before you've built a thing. Ask in plain language ("which cities are hiring most?", "what's the remote-versus-onsite split?", "which titles are gaining demand?") and the server pulls the current aggregate and hands it back as a table. The same numbers power the public stats pages on the site, so what you see here is what a jobseeker sees there.
You: Create a feed for Mercedes F1 careers at https://www.mercedesamgf1.com/careers
Claude: Done. Feed created with ID
feed_abc123. Want me to trigger a run?You: Yes please.
Claude: Discovery started. I'll check back in a couple of minutes.
You: How did it go?
Claude: Found 47 jobs. 42 enriched successfully, 5 still processing. Here's a breakdown by category...
Tip: For best results, provide an example job URL when creating a feed. This helps YubHub identify the URL pattern for job listings on that site, significantly improving discovery accuracy. You can pass it as the optional exampleJobUrl parameter in create_feed.
The server compiles TypeScript to dist/ and runs as a stdio MCP server. Source lives in src/:
Or point your MCP client at the built output instead of using npx.
Issues and pull requests welcome. If you're adding a tool or changing behaviour, please test against a real YubHub account.
MIT - see LICENSE for details.
Source: README.md at commit d0db533
Get all your job feeds
Takes no parameters.
Create a new job feed for monitoring career pages
namerequiredcareersUrlrequiredexampleJobUrlGet detailed information about a specific feed including statistics
feedIdrequiredDisplay an interactive dashboard for monitoring a job feed
feedIdrequiredDisplay a comprehensive dashboard showing all feeds with stats, sortable columns, and XML feed links. Modern React UI with dark theme.
Takes no parameters.
Start job discovery for a specific feed
feedIdrequiredUpdate a feed's name, tag, or source URLs. Use tag to group feeds by site for filtering on the dashboard.
tagnamefeedIdrequiredcareersUrlexampleJobUrlDelete a feed and all associated jobs. This action cannot be undone.
feedIdrequiredDelete all jobs for a specific feed. This action cannot be undone.
feedIdrequiredGet the automatic run schedule configuration for a feed. Shows if auto-run is enabled, the run interval, and when the next automatic run is scheduled.
feedIdrequiredEnable automatic weekly runs for a feed. The scheduler worker runs hourly and will automatically trigger this feed at the configured interval (default: 7 days for weekly runs). Great for keeping job feeds updated without manual intervention.
feedIdrequiredintervalDaysDisable automatic runs for a feed. The feed will require manual triggering after this. Use this when you want full control over when a feed runs.
feedIdrequiredGet all jobs for a specific feed, optionally filtered by status
feedIdrequiredstatusGet detailed information about a specific job
jobIdrequiredRetry failed jobs for a feed. Jobs that failed during scraping (no content) are re-queued for scraping. Jobs that failed during enrichment (have content) are re-queued for enrichment.
feedIdrequiredGet high-level statistics: total enriched jobs, companies, and active feeds.
Takes no parameters.
Get top companies by enriched job count, with recent activity (last 7d and 30d).
Takes no parameters.
Get job counts by category/sector with experience level breakdown (entry, mid, senior).
Takes no parameters.
Get the most common job titles by volume (top 30).
Takes no parameters.
Get titles gaining or losing demand — compares the last 2 weeks vs prior 2 weeks.
Takes no parameters.
Get work arrangement distribution (remote, hybrid, onsite, etc.).
Takes no parameters.
Get experience level distribution (entry, mid, senior, etc.).
Takes no parameters.
Get the cities hiring most, ranked by live job count. Each links to /jobs/city/<slug> on yubhub.co.
min90% 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.
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
{ "mcpServers": { "yubhub": { "command": "npx", "args": ["-y", "@houtini/yubhub"], "env": { "YUBHUB_USER_ID": "your-user-id", "YUBHUB_API_KEY": "yh_your_api_key_here" } } }}Careers page URL → Discovery (ATS API / sitemap / crawl) → Scraping (page content extraction) → Enrichment (AI structuring + company research) → XML feed (ready for job boards, aggregators, your own site)git clone https://github.com/houtini-ai/yubhub.gitcd yubhubnpm installnpm run buildsrc/├── index.ts # MCP server, tool definitions and handlers├── api-client.ts # REST client for the YubHub API├── dashboard-generator.ts # React-based interactive dashboard builder└── types.ts # TypeScript interfacesYUBHUB_USER_ID=your-id YUBHUB_API_KEY=yh_your_key node dist/index.js