### Configure 100Hires MCP Server in .mcp.json Source: https://github.com/100hires/mcp-server/blob/main/README.md Add this configuration to your project's .mcp.json file for manual setup. Replace 'your-api-key' with your actual API key. ```json { "mcpServers": { "100hires": { "command": "npx", "args": ["-y", "@100hires/mcp-server"], "env": { "API_KEY": "your-api-key" } } } } ``` -------------------------------- ### Get Candidate Resume with Text Content Source: https://context7.com/100hires/mcp-server/llms.txt Fetches resume metadata and a download URL for a candidate. Use `include=text_content` to retrieve parsed plain-text content directly. ```json { "tool": "hires_get_candidate_resume", "arguments": { "id": 1001, "include": "text_content" } } // Response includes: uuid, url, file metadata, and `text` field with parsed resume content ``` -------------------------------- ### List and Get User Information Source: https://context7.com/100hires/mcp-server/llms.txt Use `hires_list_users` to list users for assignment and `hires_get_user` to retrieve user details, including their default mail account ID for email sending. `hires_list_user_mail_accounts` can list a user's connected mail accounts for resolving the `from_account_id`. ```json // List users for hiring-team assignment { "tool": "hires_list_users", "arguments": { "company_id": 1 } } ``` ```json // Get a user — response includes default_mail_account_id for email sending { "tool": "hires_get_user", "arguments": { "id": 201 } } ``` ```json // List a user's connected mail accounts (for from_account_id resolution) { "tool": "hires_list_user_mail_accounts", "arguments": { "id": 201 } } ``` -------------------------------- ### Get Interview Details Source: https://context7.com/100hires/mcp-server/llms.txt Retrieve detailed information for a specific interview, with options to include related candidate and job data. ```json { "tool": "hires_get_interview", "arguments": { "id": 7001, "include": "candidate,job" } } ``` -------------------------------- ### Get Interview Details Source: https://context7.com/100hires/mcp-server/llms.txt Retrieves the detailed information for a specific interview. ```APIDOC ## Get Interview Details ### Description Retrieves the details of a specific interview. ### Method POST ### Endpoint N/A (Tool Call) ### Parameters #### Arguments - **id** (integer) - Required - The ID of the interview. - **include** (string) - Optional - Comma-separated list of related data to include (e.g., "candidate,job"). ### Request Example ```json { "tool": "hires_get_interview", "arguments": { "id": 7001, "include": "candidate,job" } } ``` ``` -------------------------------- ### Get Candidate by ID or Alias Source: https://context7.com/100hires/mcp-server/llms.txt Retrieve detailed candidate information, including all application summaries. Accepts either a numeric ID or a string alias. ```json { "tool": "hires_get_candidate", "arguments": { "id": 1001 } } // Response includes all profile fields, applications array, tags, etc. ``` -------------------------------- ### hires_prepare_template_placeholders Source: https://context7.com/100hires/mcp-server/llms.txt Get HTML tag for a placeholder. Converts a placeholder reference into the `` HTML tag used when composing email template bodies. ```APIDOC ## hires_prepare_template_placeholders — Get HTML tag for a placeholder Converts a placeholder reference into the `` HTML tag used when composing email template bodies. ### Request Example ```json { "tool": "hires_prepare_template_placeholders", "arguments": { "type": "candidate_column", "system_column_title": "First Name" } } ``` ``` -------------------------------- ### Get HTML tag for a placeholder Source: https://context7.com/100hires/mcp-server/llms.txt Convert a placeholder reference into the `` HTML tag used when composing email template bodies. Specify the type and system column title. ```json { "tool": "hires_prepare_template_placeholders", "arguments": { "type": "candidate_column", "system_column_title": "First Name" } } ``` -------------------------------- ### Reference lookup tools Source: https://context7.com/100hires/mcp-server/llms.txt Get IDs for jobs, forms, and filters. These tools return the enumerated values needed for other tool parameters. ```APIDOC ## Reference lookup tools — Get IDs for jobs, forms, and filters These tools return the enumerated values needed for other tool parameters. ### Request Examples ```json // Get all pipeline stages for a specific job { "tool": "hires_list_workflow_stages", "arguments": { "job_id": 42 } } // Get all rejection reasons { "tool": "hires_list_rejection_reasons", "arguments": {} } // Get departments for filtering/job creation { "tool": "hires_list_departments", "arguments": {} } // Get employment types { "tool": "hires_list_employment_types", "arguments": {} } // Get available job boards { "tool": "hires_list_boards", "arguments": {} } // List all company workflows with embedded stages { "tool": "hires_list_workflows", "arguments": {} } ``` ``` -------------------------------- ### Create a Job Source: https://context7.com/100hires/mcp-server/llms.txt Create a new job posting with comprehensive details including taxonomy, salary, location, and knockout questions. Use `include` to embed pipeline stages. ```json { "tool": "hires_create_job", "arguments": { "status": "Draft", "title": "Senior Backend Engineer", "description": "

We are looking for a senior engineer...

", "location_city": "New York", "location_country": "United States", "salary_min": 140000, "salary_max": 180000, "salary_currency": "USD", "salary_period": "annually", "is_remote": true, "employment_type_id": 1, "department_id": 3, "knockout_questions": [ { "text": "Do you have 5+ years of Go experience?", "expected_answer": "Yes", "disqualify_on_wrong_answer": true } ], "include": "pipeline_stages" } } ``` -------------------------------- ### Create Application Source: https://context7.com/100hires/mcp-server/llms.txt Links an existing candidate to a job at a specified pipeline stage. The `include` parameter can be used to embed related data. ```json { "tool": "hires_create_application", "arguments": { "candidate_id": 1001, "job_id": 42, "stage_id": 3, "include": "candidate" } } ``` -------------------------------- ### Configure 100Hires MCP Server in VS Code (Copilot) Source: https://github.com/100hires/mcp-server/blob/main/README.md Add this configuration to your VS Code project's .vscode/mcp.json file. Replace 'your-api-key' with your actual API key. ```json { "servers": { "100hires": { "command": "npx", "args": ["-y", "@100hires/mcp-server"], "env": { "API_KEY": "your-api-key" } } } } ``` -------------------------------- ### Get AI Score Breakdown Source: https://context7.com/100hires/mcp-server/llms.txt Retrieves detailed AI scoring for an application, including per-criterion scores, justifications, and suggested interview questions. ```json { "tool": "hires_get_ai_score", "arguments": { "id": 9001 } } // Response example { "score": 82, "criteria": [ { "name": "Technical Skills", "score": 90, "justification": "Strong Python and ML background" }, { "name": "Culture Fit", "score": 74, "justification": "Collaborative history" } ], "follow_up_questions": ["Describe a time you mentored a junior engineer."] } ``` -------------------------------- ### List notes for a candidate Source: https://context7.com/100hires/mcp-server/llms.txt Use this tool to list notes for a specific candidate. Supports pagination and inclusion of user details. ```json { "tool": "hires_list_notes", "arguments": { "candidate_id": 1001, "include": "user", "page": 1 } } ``` -------------------------------- ### Add 100Hires MCP Server via CLI Source: https://github.com/100hires/mcp-server/blob/main/README.md Use this command to add the 100Hires MCP server to your project using the Claude CLI. Ensure you replace 'your-api-key' with your actual API key. ```bash claude mcp add 100hires \ -e API_KEY=your-api-key \ -- npx -y @100hires/mcp-server ``` -------------------------------- ### Create Job Source: https://context7.com/100hires/mcp-server/llms.txt Creates a new job posting with comprehensive details including taxonomy, salary, location, and knockout questions. ```APIDOC ## Create Job ### Description Creates a new job with full details including taxonomy, salary, location, and knockout questions. ### Method POST ### Endpoint N/A (Tool Call) ### Parameters #### Arguments - **status** (string) - Required - The status of the job (e.g., "Draft"). - **title** (string) - Required - The title of the job. - **description** (string) - Required - The job description in HTML format. - **location_city** (string) - Required - The city where the job is located. - **location_country** (string) - Required - The country where the job is located. - **salary_min** (integer) - Optional - The minimum salary for the position. - **salary_max** (integer) - Optional - The maximum salary for the position. - **salary_currency** (string) - Optional - The currency of the salary (e.g., "USD"). - **salary_period** (string) - Optional - The period for the salary (e.g., "annually"). - **is_remote** (boolean) - Optional - Whether the job is remote. - **employment_type_id** (integer) - Optional - The ID of the employment type. - **department_id** (integer) - Optional - The ID of the department. - **knockout_questions** (array[object]) - Optional - A list of knockout questions for candidates. - **text** (string) - Required - The question text. - **expected_answer** (string) - Required - The expected answer. - **disqualify_on_wrong_answer** (boolean) - Required - Whether to disqualify if the answer is wrong. - **include** (string) - Optional - Comma-separated list of related data to include (e.g., "pipeline_stages"). ### Request Example ```json { "tool": "hires_create_job", "arguments": { "status": "Draft", "title": "Senior Backend Engineer", "description": "

We are looking for a senior engineer...

", "location_city": "New York", "location_country": "United States", "salary_min": 140000, "salary_max": 180000, "salary_currency": "USD", "salary_period": "annually", "is_remote": true, "employment_type_id": 1, "department_id": 3, "knockout_questions": [ { "text": "Do you have 5+ years of Go experience?", "expected_answer": "Yes", "disqualify_on_wrong_answer": true } ], "include": "pipeline_stages" } } ``` ``` -------------------------------- ### List Applications with Filters Source: https://context7.com/100hires/mcp-server/llms.txt Retrieves a list of applications, supporting filters for candidate, job, stage, status, AI score, and date ranges. Use `include` to embed related data like candidate details. ```json { "tool": "hires_list_applications", "arguments": { "job_id": 42, "status": "pending", "ai_score_min": 70, "sort": "-ai_score", "include": "candidate", "size": 50 } } ``` -------------------------------- ### Create Company and Webhook Source: https://context7.com/100hires/mcp-server/llms.txt Use `hires_create_company` to create a new client company, typically in multi-tenant onboarding flows managed by a partner API key. Register company-level webhooks using `hires_create_webhook` to receive notifications for company events. ```json { "tool": "hires_create_company", "arguments": { "name": "Acme Corp", "company_owner_email": "owner@acme.com", "company_owner_name": "Alice Owner", "website": "https://acme.com", "is_staffing_agency": false } } ``` ```json { "tool": "hires_create_webhook", "arguments": { "id": 1, "url": "https://your-system.example.com/webhooks/company-events" } } ``` -------------------------------- ### Create a multi-step outreach campaign Source: https://context7.com/100hires/mcp-server/llms.txt Create a nurture campaign with multiple steps, such as emails or SMS. Steps are executed sequentially and support various conditions. ```json { "tool": "hires_create_nurture_campaign", "arguments": { "title": "Backend Engineer Outreach Q1", "workflow_id": 10, "stage_id": 3, "timezone": "America/New_York", "response_move_to_stage_id": 5, "steps": [ { "type": "email", "delay_days": 0, "send_condition": "if_no_reply", "sender": { "type": "account", "id": 301 }, "template_id": 88, "is_new_thread": true }, { "type": "email", "delay_days": 3, "send_condition": "if_no_reply_but_opened", "sender": { "type": "account", "id": 301 }, "template_id": 89 }, { "type": "move_to_next_stage", "delay_days": 7, "send_condition": "if_no_reply", "stage_id": 6 } ] } } ``` -------------------------------- ### hires_create_nurture_campaign Source: https://context7.com/100hires/mcp-server/llms.txt Create a multi-step outreach campaign. Steps are executed sequentially. Supported step types: `email`, `sms`, `voicemail`, `move_to_next_stage`, `assign_tag`, `assign_task`. ```APIDOC ## hires_create_nurture_campaign — Create a multi-step outreach campaign Steps are executed sequentially. Supported step types: `email`, `sms`, `voicemail`, `move_to_next_stage`, `assign_tag`, `assign_task`. ### Request Example ```json { "tool": "hires_create_nurture_campaign", "arguments": { "title": "Backend Engineer Outreach Q1", "workflow_id": 10, "stage_id": 3, "timezone": "America/New_York", "response_move_to_stage_id": 5, "steps": [ { "type": "email", "delay_days": 0, "send_condition": "if_no_reply", "sender": { "type": "account", "id": 301 }, "template_id": 88, "is_new_thread": true }, { "type": "email", "delay_days": 3, "send_condition": "if_no_reply_but_opened", "sender": { "type": "account", "id": 301 }, "template_id": 89 }, { "type": "move_to_next_stage", "delay_days": 7, "send_condition": "if_no_reply", "stage_id": 6 } ] } } ``` ``` -------------------------------- ### Career Site Job Listings Source: https://context7.com/100hires/mcp-server/llms.txt Tools for the public career site do not require an API key and use `company_slug` for authentication. Use `hires_list_career_jobs` to list openings, `hires_get_career_job` for details, and `hires_submit_career_application` to process applications. ```json // List public job openings for a company's career site { "tool": "hires_list_career_jobs", "arguments": { "company_slug": "acme-corp", "city": "New York", "page": 1 } } ``` ```json // Get full details of a public job listing { "tool": "hires_get_career_job", "arguments": { "company_slug": "acme-corp", "id": 42 } } ``` ```json // Submit an application via the career site (creates candidate + application) { "tool": "hires_submit_career_application", "arguments": { "company_slug": "acme-corp", "job_id": 42, "first_name": "Alice", "last_name": "Applicant", "email": "alice@example.com", "phone": "+1-555-0200", "linkedin_url": "https://linkedin.com/in/aliceapplicant", "resume": { "data": "", "file_name": "alice_resume.pdf", "mime_type": "application/pdf" } } } ``` -------------------------------- ### Mark Application as Hired Source: https://context7.com/100hires/mcp-server/llms.txt Sets the application status to 'hired' and records the `hired_at` timestamp. ```json { "tool": "hires_hire_application", "arguments": { "id": 9001 } } ``` -------------------------------- ### Create New Candidate Profile Source: https://context7.com/100hires/mcp-server/llms.txt Create a new candidate profile. Optionally link to a job/stage and attach a resume. Suitable for sourcing, form submissions, and enrichment. ```json { "tool": "hires_create_candidate", "arguments": { "first_name": "John", "last_name": "Doe", "email": "john.doe@example.com", "phone": "+1-555-0100", "profile": { "Current job title": "Senior Engineer", "Years of experience": "8" }, "job_id": 42, "stage_id": 3, "cv": { "data": "", "file_name": "john_doe_resume.pdf", "mime_type": "application/pdf" } } } ``` -------------------------------- ### Register Job Webhook Source: https://context7.com/100hires/mcp-server/llms.txt Create a webhook for a specific job to receive real-time notifications. Provide the job ID and the callback URL. ```json { "tool": "hires_create_job_webhook", "arguments": { "id": 42, "url": "https://your-system.example.com/webhooks/100hires" } } ``` -------------------------------- ### hires_create_interview Source: https://context7.com/100hires/mcp-server/llms.txt Schedules an interview for an application, assigning interviewers and specifying details like time, location, and included data. ```APIDOC ## hires_create_interview — Schedule an interview ### Description Associates an interview with an application and assigns interviewers. ### Arguments - **id** (integer) - Required - The ID of the application. - **start_time** (integer) - Required - Unix timestamp for the interview start time. - **end_time** (integer) - Required - Unix timestamp for the interview end time. - **interviewer_ids** (array of integers) - Required - List of interviewer IDs. - **location** (string) - Optional - The location of the interview (e.g., 'Google Meet'). - **include** (string) - Optional - Comma-separated list of related data to embed (e.g., `candidate`, `job`). ``` -------------------------------- ### hires_get_candidate_resume Source: https://context7.com/100hires/mcp-server/llms.txt Fetches a candidate's primary resume metadata and an authenticated download URL. Can include parsed text content. ```APIDOC ## hires_get_candidate_resume — Get candidate's primary resume ### Description Fetches resume metadata and an authenticated download URL. Use `include=text_content` to get parsed plain-text without downloading the file. ### Arguments - **id** (integer) - Required - The ID of the candidate. - **include** (string) - Optional - Specifies additional data to include, e.g., `text_content`. ``` -------------------------------- ### hires_hire_application Source: https://context7.com/100hires/mcp-server/llms.txt Marks an application as hired, setting the status and the `hired_at` timestamp. ```APIDOC ## hires_hire_application — Mark as hired ### Description Finalizes the application with a `hired` status and sets `hired_at`. ### Arguments - **id** (integer) - Required - The ID of the application. ``` -------------------------------- ### Application Management Tools Source: https://github.com/100hires/mcp-server/blob/main/README.md Tools for managing job applications, including listing, creating, updating, moving through stages, hiring, rejecting, and transferring. ```APIDOC ## Application Management Tools ### List Applications Lists applications with various filters. **Tool:** `hires_list_applications` ### Create Application Links a candidate to a job, creating a new application. **Tool:** `hires_create_application` ### Get Application Retrieves detailed information about a specific application. **Tool:** `hires_get_application` ### Update Application Updates fields for an existing application. **Tool:** `hires_update_application` ### Delete Application Deletes an application. **Tool:** `hires_delete_application` ### Move Application Moves an application to a specific stage in the pipeline. **Tool:** `hires_move_application` ### Advance Application Moves an application to the next stage in the pipeline. **Tool:** `hires_advance_application` ### Hire Application Marks an application as hired. **Tool:** `hires_hire_application` ### Reject Application Rejects an application, with an option to provide a reason. **Tool:** `hires_reject_application` ### Unreject Application Undoes the rejection of an application. **Tool:** `hires_unreject_application` ### Transfer Application Transfers an application to a different job. **Tool:** `hires_transfer_application` ### Get AI Score Retrieves the AI scoring breakdown for an application. **Tool:** `hires_get_ai_score` ### List Application Attachments Lists all attachments for a given application. **Tool:** `hires_list_application_attachments` ### Upload Application Attachment Uploads an attachment for an application. **Tool:** `hires_upload_application_attachment` ### List Application Evaluations Lists all evaluations completed for an application. **Tool:** `hires_list_application_evaluations` ### Create Interview Schedules an interview for an application. **Tool:** `hires_create_interview` ### Batch Move Applications Moves multiple applications to a specified stage in bulk. **Tool:** `hires_batch_move_applications` ### Batch Reject Applications Rejects multiple applications in a single operation. **Tool:** `hires_batch_reject_applications` ``` -------------------------------- ### List Jobs with Filters Source: https://context7.com/100hires/mcp-server/llms.txt Retrieve a list of jobs, filtering by status, date range, department, or search query. Use `include` to embed workflow/pipeline stages. ```json { "tool": "hires_list_jobs", "arguments": { "status": "Public", "updated_after": 1699000000, "include": "pipeline_stages,hiring_team", "size": 20 } } ``` -------------------------------- ### Create a discussion note for a candidate Source: https://context7.com/100hires/mcp-server/llms.txt Use this tool to create a discussion note for a candidate. Supports HTML body, private visibility, and @mention notifications. ```json { "tool": "hires_create_note", "arguments": { "candidate_id": 1001, "body": "

Strong technical interview. Recommended for next round.

", "visibility": "all", "mention_user_ids": [201, 202], "include": "user" } } ``` -------------------------------- ### hires_create_application Source: https://context7.com/100hires/mcp-server/llms.txt Creates a new application by linking an existing candidate to a job at a specified pipeline stage. Can embed related data. ```APIDOC ## hires_create_application — Link candidate to a job ### Description Creates an application by connecting an existing candidate to a job at a chosen pipeline stage. ### Arguments - **candidate_id** (integer) - Required - The ID of the candidate. - **job_id** (integer) - Required - The ID of the job. - **stage_id** (integer) - Required - The ID of the pipeline stage. - **include** (string) - Optional - Comma-separated list of related data to embed (e.g., `candidate`). ``` -------------------------------- ### List Interviews with Filters Source: https://context7.com/100hires/mcp-server/llms.txt Retrieve a list of interviews, with filtering options for job, application, candidate, interviewer, date, and timestamp ranges for incremental synchronization. ```json { "tool": "hires_list_interviews", "arguments": { "interviewer_user_id": 201, "date": "2024-01-15", "include": "candidate,application,job" } } ``` -------------------------------- ### Bulk Move/Reject Applications Source: https://context7.com/100hires/mcp-server/llms.txt Perform bulk operations to move or reject applications. Use `ids` to specify applications and `stage_id` for moving or `rejection_reason_id` for rejecting. ```json // Bulk move { "tool": "hires_batch_move_applications", "arguments": { "ids": [9001, 9002, 9003], "stage_id": 8 } } // Bulk reject { "tool": "hires_batch_reject_applications", "arguments": { "ids": [9004, 9005], "rejection_reason_id": 3 } } ``` -------------------------------- ### Career Site Tools Source: https://github.com/100hires/mcp-server/blob/main/README.md Public-facing tools for interacting with the 100Hires career site. These tools use `company_slug` for authentication instead of an API key. ```APIDOC ## Career Site Tools ### `hires_list_career_jobs` #### Description Retrieves a list of public job openings available on the career site. ### `hires_get_career_job` #### Description Retrieves detailed information for a specific public job posting on the career site. ### `hires_submit_career_application` #### Description Submits a job application through the career site. ``` -------------------------------- ### Advance Application to Next Stage Source: https://context7.com/100hires/mcp-server/llms.txt Automatically moves an application to the next stage in the pipeline without requiring a specific stage ID. ```json { "tool": "hires_advance_application", "arguments": { "id": 9001 } } ``` -------------------------------- ### Send Candidate Message Source: https://context7.com/100hires/mcp-server/llms.txt Schedules an email to a candidate. If `scheduled_at` is not provided, the email defaults to sending 15 minutes after creation. ```json { "tool": "hires_send_candidate_message", "arguments": { "id": 1001, "to": ["jane@example.com"], "subject": "Next steps for your application", "body": "

Hi Jane, we\'d love to schedule a call...

", "scheduled_at": 1701000000, "application_id": 9001 } } ``` -------------------------------- ### Candidate Management Tools Source: https://github.com/100hires/mcp-server/blob/main/README.md Tools for managing candidates, including listing, creating, retrieving, updating, deleting, tagging, and file management. ```APIDOC ## Candidate Management Tools ### List Candidates Lists candidates with various filters. **Tool:** `hires_list_candidates` ### Create Candidate Creates a new candidate with provided profile data. **Tool:** `hires_create_candidate` ### Get Candidate Retrieves a candidate by their ID or alias. **Tool:** `hires_get_candidate` ### Update Candidate Updates fields for an existing candidate. **Tool:** `hires_update_candidate` ### Delete Candidate Deletes a candidate. **Tool:** `hires_delete_candidate` ### List Candidate Tags Lists all tags associated with a candidate. **Tool:** `hires_list_candidate_tags` ### Add Candidate Tags Attaches one or more tags to a candidate. **Tool:** `hires_add_candidate_tags` ### Remove Candidate Tag Removes a specific tag from a candidate. **Tool:** `hires_remove_candidate_tag` ### Batch Add Tags Adds tags to multiple candidates in a single operation. **Tool:** `hires_batch_add_tags` ### Batch Remove Tags Removes tags from multiple candidates in a single operation. **Tool:** `hires_batch_remove_tags` ### List Candidate Files Lists all files attached to a candidate. **Tool:** `hires_list_candidate_files` ### Upload Candidate File Uploads a file (in base64 format) for a candidate. **Tool:** `hires_upload_candidate_file` ### Get Candidate Resume Retrieves a candidate's resume, with an option to include text content. **Tool:** `hires_get_candidate_resume` ### List Candidate Activities Retrieves the timeline of activities for a candidate. **Tool:** `hires_list_candidate_activities` ### Disqualify Candidate Rejects all active applications for a candidate. **Tool:** `hires_disqualify_candidate` ### List Candidate Interviews Lists all interviews scheduled for a candidate. **Tool:** `hires_list_candidate_interviews` ### List Candidate Messages Retrieves the email history for a candidate. **Tool:** `hires_list_candidate_messages` ### Send Candidate Message Schedules an email to be sent to a candidate. **Tool:** `hires_send_candidate_message` ``` -------------------------------- ### List Candidates with Filters Source: https://context7.com/100hires/mcp-server/llms.txt Retrieve a paginated list of candidates. Supports filtering by job, stage, email, name, LinkedIn URL, and date ranges. Useful for incremental synchronization. ```json // Tool call { "tool": "hires_list_candidates", "arguments": { "job_id": 42, "stage_id": 7, "updated_after": 1700000000, "page": 1, "size": 25 } } // Expected response (excerpt) { "data": [ { "id": 1001, "first_name": "Jane", "last_name": "Smith", "email": "jane@example.com", "linkedin": "https://linkedin.com/in/janesmith", "created_at": 1699000000, "updated_at": 1700100000 } ], "pagination": { "current_page": 1, "per_page": 25, "total_pages": 4, "total_items": 92 } } ``` -------------------------------- ### hires_list_template_placeholders Source: https://context7.com/100hires/mcp-server/llms.txt Discover email template placeholders. ```APIDOC ## hires_list_template_placeholders — Discover email template placeholders ### Request Example ```json { "tool": "hires_list_template_placeholders", "arguments": { "type": "profile_field", "q": "job title", "size": 10 } } ``` ``` -------------------------------- ### hires_update_nurture_campaign Source: https://context7.com/100hires/mcp-server/llms.txt Update an existing campaign. Pass all steps; mark removed steps with `is_deleted: true`. Existing steps must include their `id`. ```APIDOC ## hires_update_nurture_campaign — Update an existing campaign Pass all steps; mark removed steps with `is_deleted: true`. Existing steps must include their `id`. ### Request Example ```json { "tool": "hires_update_nurture_campaign", "arguments": { "id": 15, "title": "Backend Engineer Outreach Q1 (Revised)", "steps": [ { "id": 101, "type": "email", "delay_days": 0, "send_condition": "if_no_reply", "sender": { "type": "account", "id": 301 }, "template_id": 88 }, { "id": 102, "type": "email", "delay_days": 3, "send_condition": "if_no_reply", "sender": { "type": "account", "id": 301 }, "template_id": 90 }, { "id": 103, "is_deleted": true, "type": "move_to_next_stage", "delay_days": 7, "send_condition": "if_no_reply", "stage_id": 6 } ] } } ``` ``` -------------------------------- ### Taxonomy & Reference Tools Source: https://github.com/100hires/mcp-server/blob/main/README.md These tools provide access to various reference data and configuration options within the 100Hires system. ```APIDOC ## Taxonomy & Reference Tools ### `hires_list_sources` #### Description Retrieves a list of candidate sources (e.g., LinkedIn, Referral). ### `hires_list_origins` #### Description Retrieves a list of candidate origins. ### `hires_list_rejection_reasons` #### Description Retrieves the dictionary of rejection reasons. ### `hires_list_statuses` #### Description Retrieves a list of job/application statuses. ### `hires_list_departments` #### Description Retrieves a list of company departments. ### `hires_list_categories` #### Description Retrieves a list of job categories. ### `hires_list_education_levels` #### Description Retrieves a list of education levels. ### `hires_list_experience_levels` #### Description Retrieves a list of experience levels. ### `hires_list_employment_types` #### Description Retrieves a list of employment types. ### `hires_list_boards` #### Description Retrieves a list of available job boards. ### `hires_list_tags` #### Description Retrieves a list of all available tags. ### `hires_list_workflows` #### Description Retrieves a list of all hiring workflows. ### `hires_list_workflow_stages` #### Description Retrieves a list of all pipeline stages. ### `hires_get_workflow_stages` #### Description Retrieves the stages for a specific workflow. ### `hires_list_questions` #### Description Retrieves a list of reusable questions. ### `hires_create_question` #### Description Creates a new question. ### `hires_get_question` #### Description Retrieves details for a specific question. ### `hires_update_question` #### Description Updates an existing question. ### `hires_delete_question` #### Description Deletes a question. ### `hires_list_question_types` #### Description Retrieves a list of available question types. ### `hires_list_template_placeholders` #### Description Retrieves a list of email template placeholders. ### `hires_prepare_template_placeholders` #### Description Renders email template placeholders. ### `hires_get_billing` #### Description Checks account pricing and features. ``` -------------------------------- ### hires_create_candidate Source: https://context7.com/100hires/mcp-server/llms.txt Creates a candidate and optionally links them to a job/stage and attaches a resume. Used for sourcing imports, inbound form submissions, and enrichment pipelines. ```APIDOC ## hires_create_candidate ### Description Creates a new candidate profile in the system. Can optionally associate the candidate with a job and stage, and attach a resume. ### Method `hires_create_candidate` ### Parameters #### Arguments - **first_name** (string) - Required - The candidate's first name. - **last_name** (string) - Required - The candidate's last name. - **email** (string) - Required - The candidate's email address. - **phone** (string) - Optional - The candidate's phone number. - **profile** (object) - Optional - A key-value map for additional candidate profile information. - **job_id** (integer) - Optional - The ID of the job to associate the candidate with. - **stage_id** (integer) - Optional - The ID of the stage to place the candidate in. - **cv** (object) - Optional - An object containing the resume data. - **data** (string) - Required - Base64 encoded resume content. - **file_name** (string) - Required - The name of the resume file. - **mime_type** (string) - Required - The MIME type of the resume file (e.g., "application/pdf"). ### Request Example ```json { "tool": "hires_create_candidate", "arguments": { "first_name": "John", "last_name": "Doe", "email": "john.doe@example.com", "phone": "+1-555-0100", "profile": { "Current job title": "Senior Engineer", "Years of experience": "8" }, "job_id": 42, "stage_id": 3, "cv": { "data": "", "file_name": "john_doe_resume.pdf", "mime_type": "application/pdf" } } } ``` ``` -------------------------------- ### Download a file attachment Source: https://context7.com/100hires/mcp-server/llms.txt Download a file as base64. Accepts any absolute URL returned by other tools and enforces same-host validation. ```json { "tool": "hires_download_attachment", "arguments": { "url": "https://api.100hires.com/v2/attachments/candidate//resume.pdf" } } ``` ```json { "file_name": "resume.pdf", "mime_type": "application/pdf", "size": 245760, "data": "" } ``` -------------------------------- ### hires_download_attachment Source: https://context7.com/100hires/mcp-server/llms.txt Download a file as base64. Accepts any absolute URL returned by other tools (resume, candidate file, mail attachment). Enforces same-host validation to prevent Bearer token leakage to third-party hosts. Files over 25 MB are rejected before buffering. ```APIDOC ## hires_download_attachment — Download a file as base64 Accepts any absolute URL returned by other tools (resume, candidate file, mail attachment). Enforces same-host validation to prevent Bearer token leakage to third-party hosts. Files over 25 MB are rejected before buffering. ### Request Example ```json { "tool": "hires_download_attachment", "arguments": { "url": "https://api.100hires.com/v2/attachments/candidate//resume.pdf" } } // Response { "file_name": "resume.pdf", "mime_type": "application/pdf", "size": 245760, "data": "" } ``` ``` -------------------------------- ### Discover email template placeholders Source: https://context7.com/100hires/mcp-server/llms.txt Use this tool to discover available email template placeholders. Specify the type, a query, and the desired size. ```json { "tool": "hires_list_template_placeholders", "arguments": { "type": "profile_field", "q": "job title", "size": 10 } } ``` -------------------------------- ### hires_list_applications Source: https://context7.com/100hires/mcp-server/llms.txt Lists applications with support for various filters including candidate, job, stage, status, AI score, and date ranges. Can embed related data. ```APIDOC ## hires_list_applications — List applications with filters ### Description Supports filtering by candidate, job, stage, status (`pending`/`hired`/`rejected`), AI score range, and date ranges. Embed related data with `include=candidate,cv.text`. ### Arguments - **job_id** (integer) - Optional - Filter by job ID. - **status** (string) - Optional - Filter by application status (e.g., `pending`, `hired`, `rejected`). - **ai_score_min** (integer) - Optional - Minimum AI score to filter by. - **sort** (string) - Optional - Field to sort by (e.g., `-ai_score` for descending). - **include** (string) - Optional - Comma-separated list of related data to embed (e.g., `candidate`, `cv.text`). - **size** (integer) - Optional - Number of results per page. ``` -------------------------------- ### Create Job Webhook Source: https://context7.com/100hires/mcp-server/llms.txt Registers a webhook for a specific job to receive real-time notifications. ```APIDOC ## Create Job Webhook ### Description Registers a webhook for a job-level notification. ### Method POST ### Endpoint N/A (Tool Call) ### Parameters #### Arguments - **id** (integer) - Required - The ID of the job. - **url** (string) - Required - The URL to send webhook notifications to. ### Request Example ```json { "tool": "hires_create_job_webhook", "arguments": { "id": 42, "url": "https://your-system.example.com/webhooks/100hires" } } ``` ``` -------------------------------- ### hires_list_notes Source: https://context7.com/100hires/mcp-server/llms.txt List notes for a candidate. ```APIDOC ## hires_list_notes — List notes for a candidate ### Request Example ```json { "tool": "hires_list_notes", "arguments": { "candidate_id": 1001, "include": "user", "page": 1 } } ``` ``` -------------------------------- ### hires_upload_candidate_file Source: https://context7.com/100hires/mcp-server/llms.txt Uploads a file (like a resume or portfolio) for a candidate using a base64 encoded payload. ```APIDOC ## hires_upload_candidate_file — Upload a file to a candidate ### Description Attaches a document (resume, portfolio, etc.) using a base64 payload. ### Arguments - **id** (integer) - Required - The ID of the candidate. - **file** (object) - Required - The file object. - **data** (string) - Required - Base64 encoded file content. - **file_name** (string) - Required - The name of the file. - **mime_type** (string) - Required - The MIME type of the file. ``` -------------------------------- ### hires_advance_application Source: https://context7.com/100hires/mcp-server/llms.txt Automatically advances an application to the next stage in the pipeline without requiring a specific stage ID. ```APIDOC ## hires_advance_application — Advance to the next stage automatically ### Description Moves the application forward one stage without needing the stage ID. ### Arguments - **id** (integer) - Required - The ID of the application. ``` -------------------------------- ### Batch Create Messages Source: https://context7.com/100hires/mcp-server/llms.txt Schedule up to 100 emails in a single request. Each message is processed independently, and per-candidate RBAC is enforced per item. ```json { "tool": "hires_batch_create_messages", "arguments": { "messages": [ { "candidate_id": 1001, "to": ["jane@example.com"], "subject": "We reviewed your application", "body": "

Hi Jane, thank you for applying...

", "scheduled_at": 1701100000 }, { "candidate_id": 1002, "to": ["bob@example.com"], "subject": "Interview invitation", "body": "

Hi Bob, we would like to invite you...

", "scheduled_at": 1701200000 } ] } } ``` -------------------------------- ### Manage Candidate Tags Source: https://context7.com/100hires/mcp-server/llms.txt Add or remove taxonomy tags for candidate segmentation and campaign targeting. Use `hires_add_candidate_tags` for multiple tags or `hires_remove_candidate_tag` for a single tag. ```json // Add tags { "tool": "hires_add_candidate_tags", "arguments": { "id": 1001, "tags": ["senior", "python", "sourced-linkedin"] } } // Remove a single tag { "tool": "hires_remove_candidate_tag", "arguments": { "id": 1001, "tag": "sourced-linkedin" } } ``` -------------------------------- ### Schedule Interview Source: https://context7.com/100hires/mcp-server/llms.txt Associates an interview with an application, assigning interviewers and specifying the time, location, and duration. Use `include` to embed related data. ```json { "tool": "hires_create_interview", "arguments": { "id": 9001, "start_time": 1701100000, "end_time": 1701103600, "interviewer_ids": [201, 202], "location": "Google Meet", "include": "candidate,job" } } ``` -------------------------------- ### Add User to Hiring Team Source: https://context7.com/100hires/mcp-server/llms.txt Add a user to a job's hiring team by specifying the job ID and the user ID. ```json { "tool": "hires_add_hiring_team_member", "arguments": { "id": 42, "user_id": 201 } } ``` -------------------------------- ### hires_list_candidates Source: https://context7.com/100hires/mcp-server/llms.txt Returns a paginated list of candidates. Supports filtering by job, pipeline stage, email, name, LinkedIn URL, and Unix-timestamp date ranges. Ideal for incremental sync using `updated_after`. ```APIDOC ## hires_list_candidates ### Description Returns a paginated list of candidates with various filtering options. ### Method `hires_list_candidates` ### Parameters #### Arguments - **job_id** (integer) - Optional - Filter by job ID. - **stage_id** (integer) - Optional - Filter by pipeline stage ID. - **updated_after** (integer) - Optional - Filter candidates updated after this Unix timestamp. - **page** (integer) - Optional - The page number for pagination. Defaults to 1. - **size** (integer) - Optional - The number of items per page. Defaults to 25. ### Request Example ```json { "tool": "hires_list_candidates", "arguments": { "job_id": 42, "stage_id": 7, "updated_after": 1700000000, "page": 1, "size": 25 } } ``` ### Response #### Success Response - **data** (array) - A list of candidate objects. - **pagination** (object) - Pagination details. #### Response Example ```json { "data": [ { "id": 1001, "first_name": "Jane", "last_name": "Smith", "email": "jane@example.com", "linkedin": "https://linkedin.com/in/janesmith", "created_at": 1699000000, "updated_at": 1700100000 } ], "pagination": { "current_page": 1, "per_page": 25, "total_pages": 4, "total_items": 92 } } ``` ``` -------------------------------- ### hires_send_candidate_message Source: https://context7.com/100hires/mcp-server/llms.txt Schedules an email to be sent to a candidate. Defaults to sending 15 minutes after creation if not specified. ```APIDOC ## hires_send_candidate_message — Schedule an email to a candidate ### Description Schedules an outbound email. Defaults to send 15 minutes after creation if `scheduled_at` is omitted. ### Arguments - **id** (integer) - Required - The ID of the candidate. - **to** (array of strings) - Required - A list of recipient email addresses. - **subject** (string) - Required - The subject line of the email. - **body** (string) - Required - The HTML body of the email. - **scheduled_at** (integer) - Optional - Unix timestamp for when the email should be sent. - **application_id** (integer) - Optional - The ID of the application this message relates to. ```