100Hires MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| API_KEY | Yes | Your 100Hires API key. Get it at Settings > Integrations > API. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| hires_list_candidatesA | List candidates with optional filters. Supports filtering by job, stage, email, name, LinkedIn, and date ranges. Returns paginated results. |
| hires_create_candidateA | Create a new candidate profile. Optionally link to a job/stage and attach a CV. Used for imports, inbound forms, and enrichment workflows. |
| hires_get_candidateA | Get full candidate data including application summaries by candidate ID or alias. |
| hires_update_candidateB | Update candidate fields, profile answers, and optional CV. Used for bi-directional sync from ATS, CRM, sourcing, or enrichment tools. |
| hires_delete_candidateA | Permanently delete a candidate by ID or alias. |
| hires_list_candidate_tagsA | List all tags assigned to a candidate. Useful for segmentation and audience-based automations. |
| hires_add_candidate_tagsA | Add one or more tags to a candidate. Used for campaign tagging, qualification labels, and source attribution. |
| hires_remove_candidate_tagC | Remove a specific tag from a candidate. |
| hires_batch_add_tagsA | Add tags to multiple candidates in one request (max 100). Returns per-item results with partial success support. |
| hires_batch_remove_tagsA | Remove tags from multiple candidates in one request (max 100). Returns per-item results with partial success support. |
| hires_list_candidate_filesA | List all files attached to a candidate (resumes and other documents). Each entry has uuid, absolute download url (use Bearer auth), relative_time, file metadata (orig_file_name, file_ext, file_type/MIME, readable_size), and type (resume/other). |
| hires_upload_candidate_fileA | Upload a file for a candidate using a base64 payload. Used for resume ingestion, portfolio uploads, and document attachment. |
| hires_get_candidate_resumeA | Get the primary resume for a candidate. Returns uuid, absolute download url (use Bearer auth), relative_time, file metadata, type. Use include='text_content' to also get the parsed plain-text content in a |
| hires_list_candidate_activitiesA | List timeline activities for a candidate (comments, stage moves, AI responses, etc.). Supports filtering by event type. |
| hires_disqualify_candidateA | Disqualify a candidate from all active applications. Optionally provide rejection reason IDs. Returns affected application IDs. |
| hires_list_candidate_interviewsA | List all interviews for a candidate across all applications. Useful for timeline views and scheduling conflict detection. |
| hires_list_candidate_messagesA | List email and messaging history for a candidate. Use is_scheduled=1 to filter only pending scheduled messages. |
| hires_send_candidate_messageA | Schedule an email message to a candidate. If scheduled_at is omitted, the message is scheduled for 15 minutes after creation. |
| hires_list_applicationsA | List applications across all accessible jobs. Supports filtering by candidate, job, stage, status, AI score range, and date ranges. Use for pipeline analytics, sync jobs, and ATS dashboards. |
| hires_create_applicationA | Create an application by linking an existing candidate to a job. Use for sourcing workflows and manual application ingestion. The candidate must already exist. |
| hires_get_applicationA | Get full application details including stage, status, and rejection context. Recommended before mutating stage transitions. |
| hires_update_applicationA | Update application fields such as stage, disqualification flag, and CV. For explicit stage transitions prefer hires_move_application or hires_advance_application. |
| hires_delete_applicationA | Permanently delete an application. This removes it from all list and view queries. |
| hires_move_applicationA | Move an application to a specific pipeline stage. Use this for explicit stage transitions in workflow orchestration. You need the target stage_id (get it from the job's pipeline_stages). |
| hires_advance_applicationA | Advance an application to the next pipeline stage according to workflow order. No stage_id needed -- the system determines the next stage automatically. |
| hires_hire_applicationA | Mark an application as hired. This is the finalization step in a hiring workflow. The application status changes to 'hired' and hired_at is set. |
| hires_reject_applicationA | Reject an application with an optional rejection reason. Use GET /taxonomy/rejection-reasons to list available reason IDs. Set suppress_notification to skip the rejection email. |
| hires_unreject_applicationA | Undo a rejection and reopen a previously rejected application. The status returns to active and rejected_at is cleared. |
| hires_transfer_applicationA | Transfer an application to another job. A new application is created on the target job. Optionally specify a stage on the target job's pipeline. |
| hires_get_ai_scoreA | Get the structured AI score for an application, including per-criterion scores, justifications, and follow-up questions. Returns null score if the application has not been AI-scored. |
| hires_list_application_attachmentsB | List all file attachments linked to an application (resumes, cover letters, documents). Returns file metadata and download URLs. |
| hires_upload_application_attachmentB | Upload a file attachment to an application. Provide the file as base64-encoded data. Commonly used for signed documents and interviewer artifacts. |
| hires_list_application_evaluationsA | List all filled evaluation forms for an application. Each evaluation includes the evaluator, summary score (strong-yes to strong-no), and summary text. |
| hires_create_interviewA | Schedule a new interview for an application. Provide start/end times as Unix timestamps and a list of interviewer user IDs. Location is resolved to an existing record or created automatically. |
| hires_batch_move_applicationsA | Move multiple applications to a pipeline stage in one request. Returns per-item results with partial success support. Max 100 application IDs per request. |
| hires_batch_reject_applicationsA | Reject multiple applications in one request with an optional rejection reason. Returns per-item results with partial success support. Max 100 application IDs per request. |
| hires_list_jobsA | List jobs with optional filters by status, date range, department, or search query. Returns paginated results. Use for career-site sync, reporting, and external system indexing. |
| hires_create_jobA | Create a job with taxonomy, location, salary, and workflow configuration. Primary endpoint for programmatic job publishing. Required fields: status, title, description, location_city, location_country. |
| hires_get_jobA | Get full details of a job by ID or alias. Use |
| hires_update_jobA | Update mutable job attributes. Only send fields you want to change. Preserves domain-level validation rules. |
| hires_delete_jobA | Delete a job. Use to align archived/removed positions across integrated platforms. |
| hires_set_job_statusA | Change job status via dedicated endpoint. Recommended for publish/unpublish/archive transitions and status automation workflows. |
| hires_list_job_boardsA | Get current board publication state for a specific job. Returns which job boards the job is published to. Useful for distribution dashboards and posting audits. |
| hires_publish_to_job_boardA | Activate selected job boards for a job. Sets boards to activation queue state. Use for controlled multi-board publishing workflows. |
| hires_remove_from_job_boardB | Deactivate selected board publications for a job. Stops the job from being listed on specified boards. |
| hires_batch_job_boardsA | Get board publication states for multiple jobs in one request. Optimized for batch monitoring and management UIs. |
| hires_batch_publish_to_boardsA | Activate board publication for multiple jobs in one request. Use for bulk job distribution workflows. |
| hires_batch_remove_from_boardsA | Deactivate board publication for multiple jobs in one request. Use for bulk depublishing workflows. |
| hires_list_hiring_teamA | List users currently assigned to a job's hiring team. Useful for notification routing and collaboration tooling. |
| hires_add_hiring_team_memberA | Add a company member to the job's hiring team. Use in workflow setup and ownership automation. |
| hires_list_job_webhooksA | List webhooks configured for job-level events. Use to audit subscriptions and deployment state. |
| hires_create_job_webhookA | Register a webhook URL for job-related events. Core step for outbound integration setup. URL must be HTTPS. |
| hires_delete_job_webhookA | Delete a job webhook subscription by ID. Use for cleanup, rotation, and endpoint migration. |
| hires_list_messagesA | List messages sent or scheduled from a specific mail account. Returns outbound messages only (sent and scheduled), not received. Useful for monitoring cold outreach campaigns — check pending queue, delivery history, and plan next sends. |
| hires_get_messageA | Get a scheduled message by ID. Returns scheduler-backed message details including sender account, schedule timestamps, and cancelability. |
| hires_update_messageA | Fully update (replace) a scheduled message before send time. All required fields must be provided. |
| hires_patch_messageA | Partially update a scheduled message before send time. Only provided fields are changed. |
| hires_delete_messageA | Cancel a scheduled message before it is processed by the mailbox scheduler. |
| hires_batch_create_messagesA | Create up to 100 scheduled messages in one request. Each item specifies its own candidate_id and message payload. Items are processed independently -- one failure does not stop others. Per-candidate RBAC is enforced for each item. |
| hires_get_notification_messageA | Get a notification email message (e.g. rejection email) by ID. Returns subject, body, sender, recipient, and schedule metadata. Use candidate messages list to discover notification message IDs. |
| hires_update_notification_messageA | Update a scheduled notification email before it is sent. Change subject, body, and optionally reschedule the send time. Only scheduled (not yet sent) messages can be updated. |
| hires_delete_notification_messageA | Cancel a scheduled notification email before it is sent. Already sent messages cannot be canceled. |
| hires_cancel_all_notification_messagesA | Cancel all scheduled notification emails for a candidate. Already sent notifications are not affected. Returns success even if no scheduled notifications exist. |
| hires_list_interviewsA | List interviews with optional filters by job, application, candidate, interviewer, date, or timestamps for incremental sync. Returns paginated results. |
| hires_get_interviewA | Get full details of a specific interview by ID. Use |
| hires_list_notesA | List notes by candidate. Returns paginated discussion notes for a candidate. Use for shared recruiter context and timeline synchronization. |
| hires_create_noteA | Create a discussion note for a candidate. Supports visibility control (all or private) and @mentions with email notifications. |
| hires_get_noteA | Get a single note with author and visibility metadata. Use include=user to load author details. |
| hires_update_noteA | Update note body and/or visibility without creating a new timeline item. Use for corrections and moderation workflows. |
| hires_delete_noteA | Delete a note. Use for moderation policies and data cleanup operations. |
| hires_get_evaluationA | Get a filled evaluation form with all answers. Returns evaluator info, summary score, summary text, and individual question answers. Use for detailed review of evaluator feedback on a candidate application. |
| hires_list_formsA | List application forms (paginated). Returns forms with their questions for the target company. |
| hires_create_formA | Create a new application form, optionally attaching existing questions by ID. |
| hires_get_formA | Get form details including all questions with their statuses. |
| hires_update_formB | Update form name and question composition. |
| hires_delete_formB | Delete an application form. |
| hires_update_form_questionB | Update the status (required/optional/hidden) of a question inside a form. |
| hires_list_email_templatesA | List email templates for the target company. Returns paginated results with template name, subject, and body. |
| hires_create_email_templateA | Create a new email template with name, subject, and body. Subject and body support placeholders like {{first_name}}, {{job_title}}. To embed placeholders: 1) GET /template-placeholders to list them, 2) POST /template-placeholders/prepare to get the HTML tag, 3) insert the tag into the body. |
| hires_get_email_templateA | Get full details of a specific email template by ID, including subject and body content. |
| hires_update_email_templateA | Update an existing email template. Only provided fields are overwritten; omitted fields keep their current values. To add placeholders, use the same workflow as creation. |
| hires_delete_email_templateA | Soft-delete an email template. Templates already used in automations will stop being available for new actions. |
| hires_list_nurture_campaignsA | List nurture campaigns with pagination. Returns campaign summaries including steps. |
| hires_create_nurture_campaignA | Create a nurture campaign with steps. Steps are executed sequentially; each step has a type (email, sms, voicemail, move_to_next_stage, assign_tag, assign_task) with type-specific fields. Optionally bind to a workflow stage. |
| hires_get_nurture_campaignA | Get a single nurture campaign by ID with all steps and configuration details. |
| hires_update_nurture_campaignA | Update an existing nurture campaign. Pass all steps -- mark removed steps with is_deleted=true. Existing steps must include their id. |
| hires_delete_nurture_campaignA | Delete (soft-delete) a nurture campaign. Active campaign executions will be stopped. |
| hires_list_usersA | List users for the target company with role context. Returns paginated results useful for access reviews and hiring-team management. |
| hires_get_userA | Get a single user by ID within current tenant scope. Use for identity resolution in automation flows. The |
| hires_list_user_mail_accountsA | List mail accounts connected to a user. Use to resolve |
| hires_list_companiesA | List partner-accessible companies with pagination. Use for tenant discovery and management panels. |
| hires_create_companyA | Create a client company and link ownership context. Typical entrypoint for multi-tenant onboarding. |
| hires_get_companyA | Get company profile and owner metadata. Use before updates or ownership-sensitive actions. |
| hires_update_companyB | Update company profile, owner contact data, and optional logo. Supports partner-operated account management. |
| hires_delete_companyA | Delete a company. Use for lifecycle control in partner tenancy management. |
| hires_list_company_mail_accountsA | List all mail accounts for all users in the current company. Use to resolve |
| hires_list_company_id_mail_accountsB | List all mail accounts for all users in a specific company. The company must be accessible (own company or a client). |
| hires_restore_companyA | Restore a previously deleted company and re-enable it for active use. Use for recovery and rollback scenarios. |
| hires_list_webhooksA | List webhook subscriptions configured at company scope. |
| hires_create_webhookA | Create a company-scoped webhook subscription. Use for outbound company-level event integrations. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/100Hires/mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server