Tailor resumes, score ATS fit, find hiring leads, and send cold outreach, from your agent.
Connect Remote server
claude mcp add --transport http mcp https://hopehire.in/mcp --header "Authorization: Bearer <YOUR_API_KEY>"
{
"mcpServers": {
"mcp": {
"url": "https://hopehire.in/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}
{
"servers": {
"mcp": {
"type": "http",
"url": "https://hopehire.in/mcp",
"headers": {
"Authorization": "Bearer <YOUR_API_KEY>"
}
}
}
}
Settings > Connectors > Add custom connector
URL: https://hopehire.in/mcp
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools 80 found in our last check
get_notifications_api_notifications_getGet Notifications Fetch notifications for the current user. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json [ {} ] ```
mark_all_notifications_as_read_api_notifications_read_all_postMark All Notifications As Read Mark every unread notification as read (not just the page the client loaded). ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
mark_notification_as_read_api_notifications__notification_id__read_patchMark Notification As Read Mark a notification as read. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
delete_notification_api_notifications__notification_id__deleteDelete Notification Delete a notification. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_ats_score_api_resume_ats_score_getGet Ats Score Return the most recently calculated ATS score for the user's resume. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
refresh_ats_score_api_resume_ats_score_refresh_postRefresh Ats Score Recalculate the ATS score from the current resume and persist it. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
resume_ai_chat_api_resume_ai_chat_postResume Ai Chat Stream an AI response that helps the user interactively improve their resume. Body: user_id (str) — authenticated user's ID message (str) — latest user message conversation_history (list) — [{role: "user"|"assistant", content: str}] ### Responses: **200**: Success…
mark_improvement_suggestions_invalid_api_resume_improvement_suggestions_mark_in…Mark Improvement Suggestions Invalid Replace improvement suggestions with the provided valid_suggestions list. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
generate_yaml_version_api_resume_generate_yaml_postGenerate Yaml Version Generate YAML version and RenderCV PDF for existing resume ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
apply_suggestions_api_resume_apply_suggestions_postApply Suggestions Apply improvement suggestions to YAML and regenerate PDF ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_yaml_suggestions_api_resume_yaml_suggestions_postGet Yaml Suggestions Generate YAML-based improvement suggestions ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
generate_complete_resume_api_resume_generate_complete_postGenerate Complete Resume Generate a complete, enhanced resume with additional relevant content using AI. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
render_raw_yaml_api_resume_render_raw_yaml_postRender Raw Yaml Hot-reload: Generate PDF from raw YAML content ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
list_themes_api_resume_themes_getList Themes ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
apply_resume_theme_api_resume_apply_theme_postApply Resume Theme Switch the design theme in a YAML document. Pure transform: no render, no save. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
save_resume_yaml_api_resume_save_yaml_postSave Resume Yaml Save raw YAML content to the user's resume. YAML is treated as the source of truth: the structured resume fields (personalInfo, experience, education, projects, skills, certifications) are parsed from the YAML and written back to the database so that every other…
create_resume_from_linkedin_api_resume_from_linkedin_postCreate Resume From Linkedin Create a resume from LinkedIn profile URL using Apify API. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
get_rendercv_pdf_api_resume_rendercv_pdf_getGet Rendercv Pdf Get RenderCV PDF download URL for the user's resume. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_rendercv_pdf_download_api_resume_rendercv_pdf_download_getGet Rendercv Pdf Download Return a presigned URL with Content-Disposition: attachment so the browser downloads the resume PDF instead of opening it inline. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
test_pdf_generation_api_resume_test_pdf_generation_getTest Pdf Generation Test PDF generation to debug PDF issues. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
debug_pdf_api_resume_debug_pdf_getDebug Pdf Get debugging information about a PDF file. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
download_resume_api_resume_download_getDownload Resume Download the user's resume. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
public_resume_api_resume_public_getPublic Resume Resume link embedded in cold emails: no login, but only links we signed will open. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
show_resume_api_resume__resume_id__getShow Resume Show the resume via redirect to presigned S3 URL. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
get_resume_api_resume_getGet Resume Get the user's resume. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
upload_resume_api_resume_postUpload Resume Upload and process a resume file. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
update_resume_manual_api_resume_putUpdate Resume Manual Update a user's resume manually and trigger PDF generation. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
delete_resume_api_resume_deleteDelete Resume Delete the user's resume and cleanup associated resources. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
set_cold_email_resume_source_api_resume_cold_email_source_putSet Cold Email Resume Source Set which resume file cold outreach should use: the originally uploaded file ("uploaded", the default) or HopeHire's RenderCV-generated PDF ("generated"). A lightweight sibling to the full manual-edit PUT above — this only flips one field and doesn't…
get_preferences_api_job_preferences_getGet Preferences Get the user's job preferences Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
create_preferences_api_job_preferences_postCreate Preferences Create the user's job preferences Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
update_preferences_api_job_preferences_putUpdate Preferences Update the user's job preferences Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
delete_preferences_api_job_preferences_deleteDelete Preferences Delete the user's job preferences Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
start_job_matching_api_job_matches_start_postStart Job Matching Start an asynchronous job matching process Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_filtered_jobs_api_job_matches_getGet Filtered Jobs Get filtered job matches for a user Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
clear_job_matches_api_job_matches_deleteClear Job Matches Clear all job matches for a user Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
start_conversation_api_auto_apply_start_conversation_postStart Conversation Start a new conversation using the shared auto-apply service logic. ### Responses: **201**: Successful Response (Success Response) Content-Type: application/json
start_auto_apply_api_auto_apply_postStart auto-apply process Launches an automated job application process that finds contacts, generates personalized messages, and sends emails with resume attachments. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response…
get_auto_apply_tasks_api_auto_apply_getGet all auto-apply tasks for a user Get all auto-apply tasks for a given user. Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_auto_apply_status_api_auto_apply__task_id__getCheck auto-apply status Retrieves the current status and results of an auto-apply task. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "task_id": "Task Id", "status": "AutoApplyStatus" } ```
get_auto_apply_status_by_task_id_api_auto_apply_status__task_id__getGet Auto Apply Status By Task Id Get status of an auto-apply task by task_id (conversationId). Requires authentication. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "task_id": "Task Id", "status": "…
start_conversation_api_email_conversations_start_conversation_postStart Conversation Start a new email conversation. ### Responses: **201**: Successful Response (Success Response) Content-Type: application/json
get_conversations_api_email_conversations_getGet Conversations Get all conversations for the authenticated user. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json [ { "id": "Id", "contact_email": "Contact Email", "status": "ConversationStatus", "inte…
get_conversation_details_api_email_conversations__conversation_id__getGet Conversation Details Get details of a specific conversation. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "id": "Id", "contact_email": "Contact Email", "status": "ConversationStatus", "intent":…
pause_conversation_api_email_conversations__conversation_id__pause_postPause Conversation Pause an ongoing conversation to stop automatic follow-ups. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
resume_conversation_api_email_conversations__conversation_id__resume_postResume Conversation Resume a paused conversation. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
send_manual_message_api_email_conversations__conversation_id__message_postSend Manual Message Send a manual message in the conversation, overriding the AI. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
resolve_protocol_api_email_conversations__conversation_id__resolve_postResolve Protocol Resolve a human-intervention protocol by sending a manual reply and marking the associated notification as read. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_system_stats_api_multi_tenant_monitoring_stats_getGet System Stats Get overall system statistics ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "workers": [ {} ], "total_active_users": 1, "system_status": "System Status" } ```
get_active_users_api_multi_tenant_monitoring_users_active_getGet Active Users Get list of active users with email monitoring enabled ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json [ {} ] ```
enable_user_monitoring_api_multi_tenant_monitoring_users__user_id__enable_postEnable User Monitoring Enable email monitoring for a specific user ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
disable_user_monitoring_api_multi_tenant_monitoring_users__user_id__disable_postDisable User Monitoring Disable email monitoring for a specific user ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
update_user_monitoring_config_api_multi_tenant_monitoring_users__user_id__confi…Update User Monitoring Config Update email monitoring configuration for a user ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
trigger_user_discovery_api_multi_tenant_monitoring_discovery_trigger_postTrigger User Discovery Manually trigger user discovery process ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_user_monitoring_status_api_multi_tenant_monitoring_users__user_id__status_g…Get User Monitoring Status Get monitoring status for a specific user ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_email_analytics_report_api_reports__user_id___duration__getGet Email Analytics Report Get email analytics report for a user over a specific duration. Duration options: - 7d: Last 7 days - 30d: Last 30 days - 90d: Last 90 days - 1y: Last year - all: All time ### Responses: **200**: Successful Response (Success Response) Content-Type: app…
get_email_analytics_summary_api_reports__user_id__summary_getGet Email Analytics Summary Get a quick summary of email analytics for the last 30 days. This is a lightweight endpoint for dashboard widgets. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
quick_answer_api_user_memory_quick_answer_postQuick Answer Save screening answers given straight from a notification, then release the replies that were held waiting for them. This exists because the moment a recruiter is already waiting is when the user is most willing to answer - far more than during onboarding. Unlike th…
screening_suggestions_api_user_memory_screening_suggestions_getScreening Suggestions Pre-filled guesses for the screening fields this user has not answered, each with its reason, so the UI can ask them to confirm rather than type. See screening_harvest.suggest. ### Responses: **200**: Successful Response (Success Response) Content-Type: app…
get_user_memory_api_user_memory__user_id__getGet User Memory Get user memory by user ID ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
create_user_memory_api_user_memory__user_id__postCreate User Memory Create new user memory ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
update_user_memory_api_user_memory__user_id__putUpdate User Memory Update existing user memory ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
delete_user_memory_api_user_memory__user_id__deleteDelete User Memory Delete (deactivate) user memory ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
get_user_memory_history_api_user_memory__user_id__history_getGet User Memory History Get user memory history (all versions) ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true, "total": 1, "page": 1, "limit": 1 } ```
add_ai_interaction_context_api_user_memory__user_id__context_postAdd Ai Interaction Context Add AI interaction context to user memory ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
update_remembered_field_answer_api_user_memory__user_id__remembered_field_putUpdate Remembered Field Answer Edit one remembered application-field answer from the memory-bank UI. Same durable store the extension writes to (interaction_history, keyed by normalized label) - this just lets the user correct it directly instead of waiting to be asked the quest…
delete_remembered_field_answer_api_user_memory__user_id__remembered_field_deleteDelete Remembered Field Answer Forgets one remembered application-field answer (memory-bank UI delete action). ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
apply_memory_suggestion_api_user_memory_apply_suggestion_postApply Memory Suggestion Apply a specific memory update suggested by the AI. Body: { user_id, suggestion } ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
user_memory_ai_chat_api_user_memory_ai_chat_postUser Memory Ai Chat ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_available_senders_api_email_sender_pool_senders_getGet Available Senders Get all available email senders (admin only — exposes other senders' PII and quotas) ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
get_least_used_sender_api_email_sender_pool_least_used_sender_getGet Least Used Sender Get the least used email sender for load balancing, considering company contact history (admin only) ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
get_fallback_sender_api_email_sender_pool_fallback_sender_getGet Fallback Sender Get a fallback email sender, excluding the specified user (admin only) ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
send_email_via_pool_api_email_sender_pool_send_email_postSend Email Via Pool Send an email using the email sender pool (admin only) ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json **Example Response:** ```json { "success": true } ```
get_my_footer_api_email_footer_me_getGet My Footer Get the footer for the currently authenticated user. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
update_my_footer_api_email_footer_me_putUpdate My Footer Update the footer for the currently authenticated user. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_email_footer_api_email_footer__user_id__getGet Email Footer Get email footer for a user. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
update_email_footer_api_email_footer__user_id__putUpdate Email Footer Update email footer for a user. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_formatted_footer_api_email_footer__user_id__formatted_getGet Formatted Footer Get formatted footer string for a user. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
generate_footer_from_resume_api_email_footer__user_id__generate_from_resume_postGenerate Footer From Resume Generate email footer from user's resume data. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_user_config_api_config_user__user_id__getGet User Config Get configuration for a specific user ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
Headers
| Name | Description |
|---|---|
AuthorizationRequired, secret | Bearer token for your HopeHire account, created in Settings > Agents at hopehire.in |
Details
| Endpoint | https://hopehire.in/mcp (Streamable HTTP) |
| First published | 23 Oct 2026 |
| Last updated | 23 Oct 2026 |
| Registry name | in.hopehire/mcp |
More communication servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
