[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f4K-p0spT3AXYjGY47tmOTV7zhASM_vpAWI6v7wwHrug":3,"$fYajN8Trc82N6-zBK9RzHbnK_OO-4gYiNCLuPzQbHuD0":28},{"success":4,"data":5},true,{"id":6,"slug":7,"title":8,"excerpt":9,"content":10,"category":11,"tags":12,"author":18,"cover_image_url":19,"reading_time_minutes":20,"is_published":4,"published_at":21,"created_at":22,"updated_at":23,"author_avatar":19,"is_featured":24,"meta_title":25,"meta_description":26,"meta_keywords":27},"054143b3-93a6-4d18-91ae-2cb0061301d3","ai-job-search-stack-nicehire-mcp","He built his own AI job-search stack. You can add NiceHire to yours with one line.","A laid-off Danish geophysicist built an open-source, human-approved AI job-search framework that tens of thousands of people starred. The missing piece of every such stack is structured job data — and that's what NiceHire's new read-only MCP server provides, one line to connect.","\u003Cp>In late 2025, a Danish geophysicist named Mads Lorentzen lost his job. He holds a PhD in geophysics from the University of Copenhagen, and like a lot of highly specialized people suddenly on the market, he faced a job search that has become an industrial process: hundreds of postings, application portals, tailoring, tracking, follow-ups.\u003C\u002Fp>\n\n\u003Cp>Instead of grinding through it by hand, he built a system. Using Claude Code, he assembled an open-source job-search framework — \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FMadsLorentzen\u002Fai-job-search\" rel=\"noopener\">MadsLorentzen\u002Fai-job-search\u003C\u002Fa>, MIT-licensed — that interviews you about your background to build a structured profile, evaluates postings against that profile, tailors CVs and cover letters, and preps you for interviews. His own summary of the result, in his own words from the project README:\u003C\u002Fp>\n\n\u003Cblockquote>\u003Cp>\"Sixty-nine tailored applications, twenty first interviews, and one signed contract later, I started as an AI engineer in June 2026.\"\u003C\u002Fp>\u003C\u002Fblockquote>\n\n\u003Cp>Those numbers are his account of his own search — we haven't audited his spreadsheet, and neither has anyone else. But the repository speaks for itself: as of this writing (22 July 2026) it has roughly 25,000 stars and thousands of forks, making it one of the most-watched job-search projects on GitHub. Tens of thousands of people looked at how one person ran an AI-assisted job search and said: \u003Cem>that's the version I want.\u003C\u002Fem>\u003C\u002Fp>\n\n\u003Cp>Full disclosure before we go further: Mads Lorentzen has no connection to NiceHire. We've never spoken with him. We're writing about his project because it is the clearest public demonstration yet of where job searching is going — and because the principles he built into it are ones we recognize.\u003C\u002Fp>\n\n\u003Ch2>What his system actually does — and what it refuses to do\u003C\u002Fh2>\n\n\u003Cp>It would be easy to file this under \"AI applies to jobs for you.\" That is precisely what it is not, and the design choices are worth reading closely.\u003C\u002Fp>\n\n\u003Cp>\u003Cstrong>The profile comes first.\u003C\u002Fstrong> The system starts by interviewing the user in depth, because, as the README puts it, \"the single biggest factor in output quality is how much detail you put into your profile.\" Everything downstream — evaluation, tailoring, interview prep — is grounded in that structured record of what the person has actually done.\u003C\u002Fp>\n\n\u003Cp>\u003Cstrong>Match evaluation happens before any drafting.\u003C\u002Fstrong> Postings are scored against the profile first. Weak matches get filtered out before a single cover letter is written. The scarce resource isn't the ability to generate an application — AI made that nearly free — it's attention, both the applicant's and the hiring team's.\u003C\u002Fp>\n\n\u003Cp>\u003Cstrong>Nothing gets invented.\u003C\u002Fstrong> The README is explicit: \"All claims in the CV and cover letter are verified against your actual profile. The system never fabricates skills or experience.\" There's even an honesty rule for keyword matching: a keyword the profile doesn't support \"is acknowledged as a gap, never stuffed in.\"\u003C\u002Fp>\n\n\u003Cp>\u003Cstrong>A human presses send.\u003C\u002Fstrong> The apply workflow ends by presenting the final output with a verification checklist. The person reviews, the person approves, the person submits. And Mads says he was \"upfront about it with every employer\" — the system was something he could explain in an interview, not something he had to hide.\u003C\u002Fp>\n\n\u003Cp>Sixty-nine applications over a multi-month search is not spray-and-pray. It's roughly the volume of a diligent manual search — except each application was tailored, verified against a real profile, and reviewed by the human whose name was on it.\u003C\u002Fp>\n\n\u003Ch2>The spam war his design is answering\u003C\u002Fh2>\n\n\u003Cp>To see why those constraints matter, look at what the rest of the market is doing.\u003C\u002Fp>\n\n\u003Cp>Fortune reported in November 2025 that LinkedIn applications had spiked more than 45% year over year — at one point hitting 11,000 applications per minute, per The New York Times — and quoted Greenhouse CEO Daniel Chait describing talent acquisition as caught in an \"AI doom loop\": candidates use AI to mass-produce applications, employers respond with AI filters, candidates use more AI to beat the filters. \"This is the first time I can remember where both sides were unhappy,\" Chait told Fortune. Greenhouse's own 2025 AI in Hiring Report found that while roughly three quarters of job seekers use AI in their applications, only 8% believe AI screening has made hiring fairer.\u003C\u002Fp>\n\n\u003Cp>Both sides are automating against each other, and both sides are losing. Applicants get ghosted by filters; employers drown in near-identical, keyword-optimized documents that carry less and less signal about the person behind them.\u003C\u002Fp>\n\n\u003Cp>Here's the thing the doom-loop framing misses: the problem was never automation. The problem is that both sides are automating over an \u003Cem>unstructured\u003C\u002Fem> channel. A résumé PDF thrown at a keyword filter is a lossy message sent through a hostile medium. Generating more of them faster makes the medium noisier, not the message clearer.\u003C\u002Fp>\n\n\u003Cp>Mads's system points at the exit: keep the automation, but ground it in structured, truthful data. A verified profile on one side. Real, current job data on the other. An honest evaluation in between, and a human making the final call. When the data on both sides is structured and true, AI stops being a spam cannon and becomes what it should have been all along — a matching engine.\u003C\u002Fp>\n\n\u003Ch2>The missing piece: platforms that talk to your assistant\u003C\u002Fh2>\n\n\u003Cp>There's one part of that stack an individual can't build alone: the job data itself. Mads's framework has to scrape postings from portals, one adapter at a time, because most hiring platforms simply don't offer their data in a form an AI assistant can query directly.\u003C\u002Fp>\n\n\u003Cp>That's the piece we just shipped.\u003C\u002Fp>\n\n\u003Cp>NiceHire now runs a public \u003Ca href=\"https:\u002F\u002Fwww.nicehire.ai\u002Fmcp\u002Fdocs\">MCP server\u003C\u002Fa> — MCP being the Model Context Protocol, the open standard that lets AI assistants like Claude Code, Claude Desktop, Codex CLI, and Cursor connect to external data sources. Instead of scraping our pages, your assistant can query our live job postings and your own NiceHire account data directly, in a structured form, with your permission.\u003C\u002Fp>\n\n\u003Cp>Connecting from Claude Code is one line:\u003C\u002Fp>\n\n\u003Cpre>\u003Ccode>claude mcp add --transport http nicehire https:\u002F\u002Fwww.nicehire.ai\u002Fmcp --header \"Authorization: Bearer YOUR_TOKEN\"\u003C\u002Fcode>\u003C\u002Fpre>\n\n\u003Cp>The token is a personal access token you create yourself: log in to NiceHire, open \u003Cstrong>Settings → MCP access\u003C\u002Fstrong> in your dashboard (talent, organization, or mentor), and generate one. The token is displayed once, at creation, and you can revoke it from the same page at any time — a revoked token is rejected on the very next request. Setup for other MCP clients is on the \u003Ca href=\"https:\u002F\u002Fwww.nicehire.ai\u002Fmcp\u002Fdocs\">documentation page\u003C\u002Fa>.\u003C\u002Fp>\n\n\u003Cp>Once connected, every account can use the shared tools: search live job postings by keyword, location, and company; fetch full details of a posting with its canonical link; list which companies currently have live postings; and get a factual overview of the platform. Beyond that, the server resolves your role from your token, server-side, and offers only what your account is entitled to. Talent accounts can list their saved jobs, their applications with current status, and the active job recommendations generated for their profile. Employer accounts can list their organization's postings and the applicants for each. Mentor accounts can list their sessions and availability windows.\u003C\u002Fp>\n\n\u003Cp>So the workflow Mads had to build a scraper for becomes a conversation: \u003Cem>\"Check my NiceHire applications — anything moved since last week? And are there new postings in Hong Kong that fit my profile better than the ones I've saved?\"\u003C\u002Fem> Your assistant queries the live data and answers with real postings and real statuses, each carrying a link back to the actual page.\u003C\u002Fp>\n\n\u003Ch2>What it deliberately doesn't do\u003C\u002Fh2>\n\n\u003Cp>Honesty about scope is the whole point of this story, so here is ours.\u003C\u002Fp>\n\n\u003Cp>\u003Cstrong>The NiceHire MCP server is read-only. There is no auto-apply.\u003C\u002Fstrong> Not one tool behind the endpoint can insert, update, or delete anything on your account — that's structural in the code, not a policy setting. Your assistant can search, read, and cross-reference; it cannot submit an application, change your profile, or take any action in your name.\u003C\u002Fp>\n\n\u003Cp>That's a deliberate design position, and it's the same one Mads built into his framework. His system drafts and verifies, then a human reviews a checklist and presses send. We think that's the right boundary for the same reason he does: an application is a representation of \u003Cem>you\u003C\u002Fem>, made to another human being who will spend real attention on it. The moment software submits it without you, the truthfulness chain breaks — and the doom loop wins. Read-only access to structured, live data gives your assistant everything it needs to make you \u003Cem>better informed and faster\u003C\u002Fem>; the send button stays yours.\u003C\u002Fp>\n\n\u003Ch2>The bigger picture\u003C\u002Fh2>\n\n\u003Cp>The story of 2026 job searching isn't \"AI versus humans.\" It's structured versus unstructured. One laid-off geophysicist in Copenhagen demonstrated that a truthful, profile-grounded, human-approved AI workflow beats both the manual grind and the spam cannon — and tens of thousands of people starred the proof.\u003C\u002Fp>\n\n\u003Cp>The next step belongs to platforms: meet these workflows halfway with structured, queryable, permissioned data instead of forcing everyone to scrape. That's what our MCP server is. If you're already running your own AI job-search stack — Mads's framework or your own — NiceHire is now one line away from being part of it.\u003C\u002Fp>\n\n\u003Cp>Connection details and full tool reference: \u003Ca href=\"https:\u002F\u002Fwww.nicehire.ai\u002Fmcp\u002Fdocs\">nicehire.ai\u002Fmcp\u002Fdocs\u003C\u002Fa>.\u003C\u002Fp>\n\n\u003Chr>\n\n\u003Cp>\u003Cem>Sources: \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FMadsLorentzen\u002Fai-job-search\" rel=\"noopener\">MadsLorentzen\u002Fai-job-search on GitHub\u003C\u002Fa> (README, retrieved 22 July 2026); \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FMadsLorentzen\" rel=\"noopener\">Mads Lorentzen's GitHub profile\u003C\u002Fa>; \u003Ca href=\"https:\u002F\u002Ffortune.com\u002F2025\u002F11\u002F18\u002Fhiring-job-seekers-recruiters-talent-acquisition-ai-doom-loop-application-technology\u002F\" rel=\"noopener\">Fortune, \"Trust is at an all-time low for both job seekers and recruiters\" (18 Nov 2025)\u003C\u002Fa>, citing The New York Times and the 2025 Greenhouse AI in Hiring Report. Mads Lorentzen is not affiliated with NiceHire and has not endorsed this article or our product; his application and interview figures are his own self-reported account.\u003C\u002Fem>\u003C\u002Fp>","AI & Automation",[13,14,15,16,17],"MCP","AI job search","Model Context Protocol","Claude Code","open source","NiceHire Team",null,8,"2026-07-23T04:49:26.302+00:00","2026-07-23T04:49:26.339083+00:00","2026-07-23T04:49:26.533604+00:00",false,"Add NiceHire to Your AI Job-Search Stack via MCP","An open-source AI job-search stack showed where hiring is going: structured, truthful, human-approved. NiceHire's read-only MCP server plugs live job data into any AI assistant — one line to connect.","MCP server, AI job search, Model Context Protocol, Claude Code job search, NiceHire MCP, AI assistant job data",{"success":4,"data":29},{"posts":30,"count":33,"hasMore":24},[31],{"id":6,"slug":7,"title":8,"excerpt":9,"category":11,"tags":32,"author":18,"cover_image_url":19,"reading_time_minutes":20,"published_at":21},[13,14,15,16,17],1]