Homerun integration
Homerun is a hiring and applicant tracking tool. List your vacancies with their hiring stages and application-form questions, list, create, update and delete job applications (candidates), move a candidate to another stage, add notes and tags, upload a resume, assignment or photo, submit answers to the vacancy's questions and send the applicant confirmation email. Vacancies themselves are created and edited in the Homerun app, not through this API. Authentication is a Homerun API key sent as a Bearer token; each key carries scopes chosen when it is generated on the Integrations page, and every tool names the scope it needs. The API allows 60 requests per minute.
Say what should happen.
The workflow builds itself.
What you can do with Homerun
Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.
Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.
Tag, 7 operations
attach_tag_to_job_applicationAttach tag to job applicationPOSTAttaches an existing tag (tag_id from list_tags or create_tag) to a candidate, keeping their other tags. Attaching a tag they already have changes nothing. Scope job-application-tags:write.create_tagCreate tagPOSTCreates a company tag (name up to 128 characters, unique regardless of case) and returns its id. Attach it with attach_tag_to_job_application. Scope tags:write.delete_tagDelete tagDELETEDeletes a company tag and removes it from every candidate it was attached to. Scope tags:write.detach_tag_from_job_applicationDetach tag from job applicationDELETERemoves a tag from a candidate; the tag itself stays in the company. Scope job-application-tags:write.list_job_application_tagsList job application tagsGETLists the tags attached to a job application (candidate), up to 100 per page. Scope job-application-tags:read.list_tagsList tagsGETLists the tags of your company, up to 100 per page. Scope tags:read.update_tagUpdate tagPATCHRenames a company tag. The new name must be unique within the company regardless of case. Scope tags:write.
Job application, 5 operations
create_job_applicationCreate job applicationPOSTCreates a job application (candidate). first_name, last_name and email are required; pass vacancy_id to file it under a job, else it lands in the talent pool. Upload a resume afterwards with upload_job_application_file. Scope job-applications:write.delete_job_applicationDelete job applicationDELETEDeletes a job application (the candidate and their data) permanently. Scope job-applications:write.get_job_applicationGet job applicationGETReturns one job application with the candidate's personal info, stage, rating and status; add notes, sources, vacancy or question answers with include[]. Scope job-applications:read.list_job_applicationsList job applicationsGETLists job applications (candidates), up to 100 per page. Filter by vacancy, stage, hire date or disqualified status; add stage, vacancy, sources or question answers with include[]. Scope job-applications:read.update_job_applicationUpdate job applicationPATCHUpdates a job application: only the fields you send change. Move it to another hiring stage with stage ({"id": ...} from get_vacancy with include[]=stages) or to another job with vacancy_id. Scope job-applications:write.
Note, 4 operations
create_noteCreate notePOSTAdds a note (up to 2000 characters) to a job application. display_name is free text shown as the author and cannot be changed later. Scope job-application-notes:write.delete_noteDelete noteDELETEDeletes a note from a job application (recorded in the company audit log). Scope job-application-notes:write.list_notesList notesGETLists the notes written on a job application, up to 100 per page, with author name, text and dates. Scope job-application-notes:read.update_noteUpdate notePATCHUpdates the text or sensitivity of a note on a job application (recorded in the company audit log). The author display_name cannot be changed. Scope job-application-notes:write.
Vacancy, 2 operations
get_vacancyGet vacancyGETReturns one vacancy (job) with status, title, URLs and type; add location, department, hiring stages (their ids move candidates), salary or candidate count with include[]. Scope vacancies:read.list_vacanciesList vacanciesGETLists your vacancies (jobs), up to 100 per page, with status, title, URLs and type. Filter by status; add location, department, stages, salary or candidate count with include[]. Scope vacancies:read.
Answer, 1 operation
submit_job_application_answersSubmit job application answersPOSTSubmits answers to the vacancy's application-form questions, keyed by question id from list_vacancy_questions. A resent answer replaces the stored one. Returns every answer the application has. Scope job-application-answers:write.
Confirmation email, 1 operation
send_confirmation_emailSend confirmation emailPOSTSends the applicant the 'thanks for applying' email from the job's template. Only one is ever sent per application: a retry, a talent pool application or a candidate with no email is rejected. Scope job-application-emails:write.
File, 1 operation
upload_job_application_fileUpload job application filePOSTUploads a resume or assignment file (up to 25MB) to a job application. Set type to resume or assignment. Scope job-application-files:write.
Photo, 1 operation
upload_job_application_photoUpload job application photoPOSTUploads the candidate's photo (jpg, png or gif, up to 5MB), replacing any photo the application already has. Scope job-application-files:write.
Ping, 1 operation
check_api_keyCheck api keyGETChecks that the API key is valid: answers pong true when Homerun accepts it. Needs no particular scope.
Question, 1 operation
list_vacancy_questionsList vacancy questionsGETLists a vacancy's application-form questions (id, type, mandatory flag, text and options in the job's default language), the ids submit_job_application_answers expects. Scope vacancy-questions:read.
Temporary, 1 operation
upload_temporary_answer_fileUpload temporary answer filePOSTUploads a file (1KB to 25MB) for a file-type question and returns its id, hash and name; pass them as that answer in submit_job_application_answers. Each upload answers one question once and expires after 30 days. Scope job-application-files:write.
Use Homerun from Claude Code, Cursor or Codex
Connect Homerun in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Homerun operations become tools the client can call, next to every other integration you connected.
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"
[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"{
"mcpServers": {
"livecontext": {
"type": "http",
"url": "https://livecontext.ai/mcp",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}How to connect Homerun
- Create your workspace
Sign up free. Nothing to install.
- Connect Homerun once
Add your Homerun connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.
- Describe the job in chat
The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.
Homerun integration FAQ
What can you do with the Homerun integration?
LiveContext exposes 25 operations on Homerun, covering tag, job application, note and vacancy.
