Servidor Curriculo ATS MCP
On this page
Conecte seu Curriculo ATS ao Claude, Cursor e qualquer cliente MCP que suporte Streamable HTTP, ou ao ChatGPT por meio de um Conector GPT Personalizado. Peça em linguagem simples para revisar candidatos, mover pipelines, responder a candidatos, agendar entrevistas e extrair análises. Seu cliente AI faz o trabalho diretamente em sua ATS.
| Ponto de extremidade | Transporte | Autenticação | Escopos | Ferramentas |
|---|---|---|---|---|
https://mcp.curriculo.me/mcp | Streamable HTTP | Autenticação OAuth 2.1, ou um token de acesso pessoal | ats:read, ats:write | 25 |
O servidor é remoto e hospedado, então não há nada a instalar ou executar localmente. Aponte qualquer cliente MCP para o endpoint, autentique uma vez e o cliente ganha ferramentas que leem e atuam em seus dados de contratação em tempo real.
Um produto diferente do público API, com autenticação diferente. MCP se comunica com Curriculo ATS e o usuário faz login. Um público API
key_não alcança essas ferramentas, e o público API não alcança seu ATS.
Início Rápido
Use esse endpoint em todos os lugares:
https://mcp.curriculo.me/mcpO caminho mais rápido é o fluxo de conector do Claude:
- Abra Claude, então Configurações, então Conectores.
- Clique Adicionar conector personalizado e cole o servidor URL acima.
- Complete o login de autenticação OAuth quando solicitado. O Claude se conecta à sua organização.
- Inicie uma conversa e pergunte, por exemplo, "O que está em cada estágio das minhas vagas abertas?"
Novo aqui? Siga o tutorial passo a passo : execute seu ATS no Claude, com capturas de tela que mostram como conectar, classificar candidatos por AI ajuste e agendar entrevistas a partir de uma conversa.
Conectar um cliente
Qualquer cliente que fale Streamable HTTP funciona. Autentique com OAuth 2.1 ou com um token de acesso pessoal enviado em um cabeçalho Authorization: Bearer . A configuração para clientes comuns segue abaixo.
Claude
No Claude (web ou desktop), vá para Configurações,Conectores,Adicionar conector personalizado, então insira:
https://mcp.curriculo.me/mcpClique em Adicionar, complete o login de OAuth e, em seguida, abra o conector para habilitar as ferramentas específicas que você deseja que o Claude use.
Código Claude
Adicione o servidor com um único comando. O OAuth é aberto no seu navegador via /mcp:
claude mcp add --transport http curriculo https://mcp.curriculo.me/mcpOu passe um token de acesso pessoal diretamente com um cabeçalho:
claude mcp add --transport http curriculo https://mcp.curriculo.me/mcp \
--header "Authorization: Bearer YOUR_CURRICULO_PAT"Execute /mcp dentro do Código Claude para verificar o status ou acionar o login de OAuth.
Cursor
Abra Configurações do Cursor,Ferramentas e MCP,Novo MCP Servidor e adicione isso a mcp.json:
{
"mcpServers": {
"curriculo": {
"url": "https://mcp.curriculo.me/mcp"
}
}
}O Cursor exibe Necessita de login. Clique nele para executar o fluxo de consentimento de OAuth e as ferramentas ficam verdes.
VS Código e outros clientes
Qualquer cliente sem suporte nativo de acesso remoto MCP pode usar a ponte mcp-remote :
{
"mcpServers": {
"curriculo": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://mcp.curriculo.me/mcp"]
}
}
}Para autenticar de forma headless, anexe um argumento de cabeçalho:
"args": ["-y", "mcp-remote", "https://mcp.curriculo.me/mcp",
"--header", "Authorization: Bearer YOUR_CURRICULO_PAT"]ChatGPT (Ações Personalizadas GPT)
ChatGPT se conecta por meio de uma Ação Personalizada GPT com Ações, utilizando uma superfície REST que espelha as 25 ferramentas MCP.
Em ChatGPT, crie um GPT e abra Configurar, em seguida Ações, em seguida Criar nova ação.
Importe o esquema deste URL:
https://mcp.curriculo.me/api/v2/mcp/openapi.jsonDefina a Autenticação **** para OAuth ****, com estes valores do esquema:
Configuração Valor Autorização URL https://mcp.curriculo.me/api/v2/ats/oauth/authorizeToken URL https://mcp.curriculo.me/api/v2/ats/oauth/tokenÂmbito ats:read ats:write(ou apenasats:read)Salve, então faça login em Curriculo e aprove o acesso quando o GPT chamar uma ação pela primeira vez.
Autenticação
Duas maneiras de autenticar. Ambas resolvem para um usuário em uma organização com permissões de escopo.
OAuth 2.1 (recomendado)
Clientes interativos (Claude, Cursor, ChatGPT) usam OAuth 2.1 com o fluxo de código de autorização. O registro de cliente dinâmico é suportado, PKCE (S256) é necessário para clientes públicos e os URIs de redirecionamento devem ser https. Você faz login em Curriculo, aprova a conexão e o cliente armazena um token de curta duração que é renovado automaticamente. Não há segredos a serem copiados ou rotacionados manualmente. Os metadados do servidor são publicados em https://mcp.curriculo.me/.well-known/oauth-authorization-server.
Token de acesso pessoal
Para CLI ou configurações headless, gere um token no ATS e envie-o como um cabeçalho de portador:
- Faça login em ats.curriculo.me.
- Acesse Configurações,API & Integrações,Tokens de Acesso Pessoal.
- Crie um token, escolha suas áreas de atuação e copie-o. Ele é exibido uma vez.
- Passe-o como
Authorization: Bearer <token>, conforme mostrado nos passos de configuração acima.
Escopos
Os tokens possuem uma ou ambas as áreas de atuação. Conceda apenas o que é necessário.
| Âmbito | Permite |
|---|---|
ats:read | Listar e ler vagas, candidatos, caixa de entrada, entrevistas e análises. |
ats:write | Criar e alterar dados: mover estágios, enviar e-mail, agendar entrevistas, atualizar vagas. |
Não tem certeza de quem um token está agindo como? Chame a ferramenta
whoami. Ela retorna o usuário autenticado, organização, método de autenticação e áreas de atuação concedidas.
Referência de ferramentas
Vinte e cinco ferramentas. O tipo de acesso informa o risco:
- Leitura somente visualiza.
- Escrita altera ATS dados.
- Escrita+ altera dados e alcança o exterior: um e-mail é enviado, um convite é enviado ou um AI trabalho é iniciado.
Dezessete das vinte e cinco ferramentas são somente leitura. As seis ferramentas de Escrita+ têm consequências externas, e o assistente confirma a intenção antes de usá-las. Nenhuma ferramenta exclui nada.
Trabalhos
| Ferramenta | Acesso | O que faz | Parâmetros |
|---|---|---|---|
list_jobs | Leitura | Lista os empregos na sua organização, com os mais recentemente atualizados primeiro. Filtro de status opcional. | status, page, limit |
get_job | Ler | Detalhes completos de um emprego, incluindo suas etapas de funil e contagem de candidatos. | jobId (obrigatório) |
create_job | Escrita | Cria um emprego e o abre imediatamente: está ativo e aceitando inscrições, não é um rascunho. As etapas padrão são Leads + Inscrições, Triagem, Entrevista, Oferta. Apenas um título é necessário. | title (obrigatório), description, location, type, headcount, must_have_skills, preferred_skills, salary_min, salary_max, salary_currency |
update_job_status | Escrita+ | Altera o status de um emprego (DRAFT, OPEN, PAUSED, CLOSED, ARCHIVED). Fechar ou pausar pode enviar e-mails aos candidatos que não alcançaram a Oferta, quando as notificações de candidato estão habilitadas; candidatos inscritos e em entrevista ao vivo são ignorados. Use com cautela. | jobId, status (ambos obrigatórios) |
Candidatos
| Ferramenta | Acesso | O que faz | Parâmetros |
|---|---|---|---|
list_applicants | Leitura | Lista candidatos, opcionalmente para um emprego, com filtros de favoritos, rejeitados e arquivados. | jobId, starred, rejected, archived, page, limit |
get_applicant | Leitura | Um candidato em detalhes: estágio atual, link do emprego, notas e histórico de atividades. | applicantId (obrigatório) |
search_candidates | Leitura | Pesquisa em linguagem natural em todo o pool de candidatos. Retorna combinações classificadas com as passagens CV e justificativa por trás de cada uma. | query (obrigatório), jobId, timestamp, page, limit |
move_applicant_stage | Escrita+ | Transfere alguém para outra etapa. Aciona as automações dessa etapa; ao alcançar a Oferta, pode fechar automaticamente o cargo uma vez que o headcount seja atendido. | applicantId, funnelId (obrigatório), reason |
add_applicant_note | Escrever | Adiciona uma nota, opcionalmente marcada com uma PASS ou FAIL decisão e a rodada à qual pertence. Privada por padrão. | applicantId, content (obrigatório), noteType, decisionFlag, roundName |
get_applicant_resume_text | Ler | O conteúdo CV parseado como texto e campos, sem arquivo anexado. | applicantId (obrigatório) |
get_applicant_evaluation | Ler | A avaliação AI: pontuação de adequação, tags, resumo e lacunas. | applicantId (obrigatório) |
reprocess_resume | Escrever+ | Reexecuta o pipeline completo AI em um CV (análise, avaliação, indexação). Executa em segundo plano. | applicantId (obrigatório) |
Caixa de entrada e e-mail
| Ferramenta | Acesso | O que faz | Parâmetros |
|---|---|---|---|
get_applicant_email_thread | Ler | A conversa completa com um candidato, em ambas as direções. | applicantId (obrigatório) |
list_inbox_emails | Ler | Lista e-mails de entrada, filtrados por vaga, status ou pesquisa de texto. | jobId, status, search, page, limit |
get_inbox_stats | Ler | Contagens e totais de não lidos. | nenhum |
reply_to_applicant_email | Escrever+ | Respostas na thread existente, da caixa de envio de Curriculo ou da caixa de envio da organização que recebeu a conversa. Nenhuma conexão de caixa de envio é necessária. | applicantId, body (obrigatório), subject |
send_bulk_email | Escrever+ | Envia uma mensagem para um ou vários candidatos, para contato ou atualizações de status, da caixa de envio de Curriculo. Nenhuma conexão de caixa de envio é necessária. | applicantIds, subject, messageBody (todos obrigatórios) |
Entrevistas
| Ferramenta | Acesso | O que faz | Parâmetros |
|---|---|---|---|
list_interviews | Ler | Lista entrevistas por vaga, candidato, status, tipo ou faixa de datas. | jobId, applicantId, status, type, dateFrom, dateTo, page, limit |
schedule_interview | Gravar+ | Agenda a entrevista, adiciona entrevistadores e cria links de feedback. Com um calendário conectado, também cria o evento, convoca o candidato e gera o link de vídeo: Google Meet por meio de um calendário Google, Microsoft Teams por meio de um calendário Microsoft. meetingProvider: ZOOM é armazenado como rótulo apenas e não gera link. A entrevista é salva de qualquer forma. | applicantId, jobId, title, scheduledStart, scheduledEnd (obrigatório), type, location, meetingProvider, participantIds, externalInterviewers, timezone, instructions |
Análise
| Ferramenta | Acesso | O que faz | Parâmetros |
|---|---|---|---|
get_analytics | Ler | Totais, alteração período a período, quebra por estágio, principais vagas e mistura de fontes. Últimos 30 dias por padrão. | dateFrom, dateTo |
get_dashboard | Ler | Caixa de entrada mais uma quebra por vaga de todos atualmente ativos. | nenhum |
Automações e importações
| Ferramenta | Acesso | O que faz | Parâmetros |
|---|---|---|---|
list_job_automations | Ler | Lista as automações configuradas em uma vaga: e-mail, agendamento de entrevistas, marcação e notificações. | jobId (obrigatório) |
get_automation_executions | Leitura | Histórico de execução de uma automação. | automationId (obrigatório), page, limit |
get_import_batch | Leitura | Progresso da importação de um candidato: status por arquivo e erros. | batchId (obrigatório) |
Conta
| Ferramenta | Acesso | O que faz | Parâmetros |
|---|---|---|---|
whoami | Ler | Confirma qual usuário e organização o assistente está agindo como, com método de autenticação e escopos concedidos. Vale a pena executar primeiro em qualquer sessão. | nenhum |
Ferramentas de e-mail enviam do caixa de envio de Curriculo, então funcionam sem uma caixa de correio conectada. A programação de entrevistas também funciona sem um calendário: ainda salva a entrevista e relata que os convites não foram enviados.
Exemplos de prompts
Uma vez conectado, pergunte em linguagem simples. O cliente escolhe as ferramentas certas.
- "Mostre-me o que está em cada estágio dos meus cargos abertos e sinalize qualquer coisa paralisada."
- "Encontre engenheiros React sêniores com experiência em liderança de equipe e resuma os cinco principais."
- "Mover Priya para a segunda entrevista e redigir uma resposta solicitando sua disponibilidade para a próxima semana."
- "Agendar uma entrevista de vídeo de 45 minutos com este candidato na quinta-feira às 14h ET e adicionar um link do Google Meet."
- "Como mudou o volume de candidatos em relação ao mês anterior e qual é o emprego que está convertendo melhor?"
As ferramentas de escrita têm efeitos colaterais reais: envio de e-mail, alteração de pipelines, fechamento de vagas. Mantenha as aprovações de ferramentas ativadas para ações de escrita até que você confie em um fluxo de trabalho e conceda apenas
ats:readse você deseja apenas análise.
FAQ e solução de problemas
Preciso instalar ou hospedar algo? Não. O servidor é totalmente hospedado em https://mcp.curriculo.me/mcp. Aponte seu cliente para o URL e autentique.
Quais clientes são suportados? Qualquer cliente MCP que suporte servidores remotos via Streamable HTTP, com OAuth 2.1 ou um token de acesso pessoal: Claude (web e desktop), Claude Code, Cursor, VS Code e outros. Clientes sem suporte nativo a servidores remotos podem usar a ponte mcp-remote . ChatGPT se conecta por meio de uma ação personalizada com Ações.
Minhas ferramentas mostram "Precisa de login" ou não se conectam. Re-executar o fluxo de OAuth (no Claude Code, digite /mcp; no Cursor, clique Precisa de login). Se você usar um token de acesso pessoal, confirme se o cabeçalho é exatamente Authorization: Bearer <token> e o token não foi revogado ou expirou.
As ferramentas de e-mail precisam de uma caixa de correio conectada? Não. send_bulk_email e reply_to_applicant_email enviam da caixa de correio de envio de Curriculo. Uma resposta é enviada da caixa de correio da sua organização quando essa caixa de correio recebeu a conversa. Para enviar de seu próprio endereço em geral, consulte o guia de configuração do Agente de E-mail .
O schedule_interview cria links do Zoom? Não. Os links de vídeo vêm de um calendário conectado: Google Meet com o Google, Microsoft Teams com a Microsoft. Sem um calendário, a entrevista é salva sem link.
Como limito o que o AI pode fazer? Emita um token com apenas ats:read para acesso de análise e utilize as configurações de permissão por ferramenta do seu cliente para desabilitar ferramentas de escrita específicas.
Qual organização ela atua? A organização vinculada ao seu token. Ligue para whoami para confirmar o usuário, organização e escopos a qualquer momento.
Segurança
- Acesso com escopo. Cada token está vinculado a um usuário e organização e carrega escopos explícitos
ats:readouats:write. Tudo o que o assistente vê é limitado à sua própria organização. - Privilégio mínimo. Conceda o escopo mais estreito que faz o trabalho; prefira tokens somente leitura para análise.
- Revogar a qualquer momento. Tokens de acesso pessoal podem ser revogados em Configurações,API & Integrações. Conexões OAuth podem ser removidas das configurações do conector do seu cliente.
- Segurança de transporte. Todo o tráfego é HTTPS sobre Streamable HTTP. Nunca cole um token em clientes não confiáveis ou compartilhe-o em texto simples.
Parte do hub Curriculo ATS MCP, que vincula as guias de configuração, a referência de ferramentas e a documentação do conector.
Updated