Follow Up Boss MCP Server
Servidor MCP com 157 ferramentas para o CRM Follow Up Boss, abrangendo contatos, negócios, pipeline, tarefas, e-mails, listas inteligentes, planos de ação e webhooks.
Documentação
Follow Up Boss MCP Server — Feito para Corretores de Imóveis
Fale com seu CRM Follow Up Boss em inglês simples usando Claude AI (ou qualquer ferramenta compatível com MCP). 160 ferramentas cobrindo 100% da API oficial, além das meta-ferramentas
about/help. Criado por um corretor de imóveis atuante, não por uma empresa de desenvolvimento.
Criado por Ed Neuhaus — corretor / proprietário da Neuhaus Realty Group em Austin, Texas. Corretor de imóveis licenciado desde 2009, com mais de 19 anos de experiência no setor. Construí isto porque queria falar com minha própria conta FUB em inglês simples. É gratuito para uso self-host sob a Elastic License 2.0.
Outras coisas em que estou trabalhando
- EdNeuhaus.com — Meu perfil de criador, mais detalhes sobre como este foi construído: edneuhaus.com/projects/fub-mcp/
- NeuhausRE.com — Site da minha corretora, busca de imóveis com IA
- StaySTRA.com — Analisador de investimentos em aluguel de curto prazo
- Austin MLS MCP — Servidor MCP de MLS hospedado (dados MLS ao vivo via Claude, ChatGPT, Perplexity e outros)
- Kendall Creek Properties — Corretora irmã
Quer me agradecer?
- Tem uma indicação imobiliária? Aceito indicações de corretores licenciados em qualquer estado para clientes que estejam se mudando para o Texas ou saindo dele. Entre em contato via neuhausre.com/contact.
- Escreva sobre isso. Post de blog, LinkedIn, X — me marque e link para neuhausre.com.
- Abra uma issue ou PR se encontrar um bug ou construir algo útil.
AVISO: Esta ferramenta tem acesso total de leitura E escrita à sua conta Follow Up Boss. Ela pode criar, atualizar e excluir contatos, negócios, tarefas, notas e outros dados no seu CRM. Fortemente recomendado: faça backup dos seus dados FUB antes de liberar isso, a menos que você realmente saiba o que está fazendo. Sempre revise as ações sugeridas pela IA antes de confirmar alterações em dados ao vivo. Os autores não são responsáveis por qualquer perda de dados ou modificações não intencionais na sua conta FUB.
⚠️ LEIA ANTES DE CONFIGURAR
FUB_SYSTEM/FUB_SYSTEM_KEY— RISCO DE TOSVários endpoints da API FUB são marcados como "Restrito - Somente Sistemas Registrados" e exigem cabeçalhos
X-System+X-System-Key(este MCP os expõe como variáveis de ambienteFUB_SYSTEM+FUB_SYSTEM_KEY). Esses endpoints incluem: webhooks, inbox apps, automações (2.0), registro de mensagens de texto, anexos de pessoa/negócio.Essas credenciais são emitidas pela FUB para parceiros de integração terceirizados aprovados — não para usuários finais da FUB. Configurar essas variáveis de ambiente é destinado a desenvolvedores que registraram um aplicativo terceirizado real na FUB e receberam seu próprio nome de
X-Systeme chave dedicados.NÃO FAÇA:
- Reutilize credenciais
X-Systemde outro aplicativo ou integração que você encontrou online.- Invente um nome de sistema e espere que a FUB aceite.
- Pegue emprestadas as credenciais de um parceiro.
Fazer qualquer uma das coisas acima para acessar endpoints restritos pode violar os Termos de Serviço da Follow Up Boss e pode fazer com que sua conta FUB seja suspensa ou banida, sem aviso prévio. A política de limite de taxa + identificação da FUB está documentada em https://docs.followupboss.com/reference#identification.
Se você não tiver suas próprias credenciais legítimas de sistema registrado, deixe essas variáveis de ambiente não configuradas. O MCP lançará um erro claro e acionável em cada ferramenta restrita ("requer X-System + X-System-Key …") em vez de contornar silenciosamente a barreira. As mais de 130 ferramentas não restritas funcionam perfeitamente com uma chave de API FUB regular.
Use por sua conta e risco. Os autores deste projeto não são responsáveis por quaisquer violações de TOS, suspensões de conta, banimentos ou perda de dados decorrentes do uso dos endpoints restritos.
Nota sobre licença: Este projeto mudou de MIT para Elastic License 2.0 na v1.1.2. Você pode usar, modificar e hospedar por conta própria para o seu negócio sem custo. Você não pode oferecê-lo como um serviço hospedado/gerenciado para terceiros. Para direitos de hospedagem comercial, entre em contato via neuhausre.com/contact. Versões ≤ v1.1.1 permanecem licenciadas sob MIT.
O Que Isto Faz
Este servidor atua como uma ponte entre sua conta Follow Up Boss e ferramentas de IA como Claude. Uma vez conectado, você pode falar com Claude em inglês simples e ele lerá, criará, atualizará e gerenciará seus dados FUB diretamente.
O que você pode fazer:
- Contatos & Pessoas — Pesquisar contatos, criar novos leads, atualizar etapas, gerenciar tags, verificar duplicatas, visualizar relacionamentos
- Negócios & Funil — Criar e gerenciar negócios, movê-los pelas etapas do funil, acompanhar valores e datas de fechamento
- Tarefas & Compromissos — Criar tarefas de acompanhamento, agendar compromissos, definir lembretes, acompanhar resultados
- Comunicação — Visualizar registros de chamadas e histórico de mensagens de texto. Nota: o endpoint "criar mensagem de texto" da API é somente para registro (a FUB não entrega SMS via API); também é um endpoint somente para sistemas registrados — veja o aviso acima.
- Modelos de E-mail — Criar, editar e mesclar modelos de e-mail com dados de contato
- Listas Inteligentes & Planos de Ação — Visualizar listas inteligentes, atribuir pessoas a planos de ação e automações
- Campos Personalizados — Criar e gerenciar campos personalizados para contatos e negócios
- Equipes, Grupos & Ponds — Gerenciar estrutura de equipe, grupos round robin e ponds de leads
- Webhooks — Configurar e gerenciar integrações de webhook
- E mais — Inbox apps, reações, respostas em tópicos, campanhas de e-mail marketing, períodos de tempo
O Que Você Vai Precisar
- Uma conta Follow Up Boss com acesso à API (a maioria dos planos pagos inclui isso)
- Claude Desktop, Claude Code, ou qualquer ferramenta de IA compatível com MCP
- Node.js 18 ou superior — Esta é uma ferramenta gratuita que executa JavaScript. Se você não tiver, baixe em nodejs.org (escolha a versão LTS)
Configuração (5 Minutos)
Passo 1: Obtenha Sua Chave de API FUB
Sua chave de API é como uma senha que permite a este servidor falar com sua conta FUB.
- Faça login no Follow Up Boss
- Vá para Admin (menu superior) > API
- Copie sua chave de API (parece uma longa sequência de letras e números)
Passo 2: Baixe e Instale
Se você conhece git:
git clone https://github.com/mindwear-capitian/followupboss-mcp-server.git
cd followupboss-mcp-server
npm install
Se você não conhece git:
- Clique no botão verde "Code" no topo desta página
- Selecione "Download ZIP"
- Descompacte o arquivo baixado
- Abra o Terminal (Mac) ou Prompt de Comando (Windows)
- Navegue até a pasta descompactada:
cd path/to/followupboss-mcp-server - Instale as dependências:
npm install
Passo 3: Execute a Configuração
npm run setup
Isto irá:
- Perguntar sua chave de API
- Testar a conexão para garantir que funciona
- Pedir para você escolher entre Modo Seguro ou Acesso Total
- Salvar suas configurações em um arquivo
.envlocal - Mostrar exatamente como conectá-lo ao Claude
Modo Seguro vs Acesso Total
| Modo Seguro (padrão) | Acesso Total | |
|---|---|---|
| Ler dados (contatos, negócios, etc.) | Sim | Sim |
| Criar novos registros | Sim | Sim |
| Atualizar registros existentes | Sim | Sim |
| Excluir registros | Não | Sim |
| Ferramentas disponíveis | 136 | 160 |
O Modo Seguro é o padrão e recomendado para a maioria dos usuários. Ele desativa as 24 ferramentas que emitem solicitações HTTP DELETE, incluindo desativação de inbox app. As ferramentas de criar, atualizar e atualização em massa permanecem disponíveis e ainda podem fazer alterações significativas. Você pode alternar os modos a qualquer momento alterando FUB_SAFE_MODE no seu arquivo .env ou na configuração da ferramenta de IA.
Verificação Rápida (Opcional)
Antes de conectar ao Claude, você pode verificar se tudo funciona:
npm test
Você deve ver:
PASS Server starts and MCP handshake succeeds
PASS Lists 136 tools
PASS Read-only API call works (account: ok)
3 passed, 0 failed
Se todos os 3 passarem, você está pronto. Se algo falhar, verifique novamente sua chave de API no arquivo .env.
Passo 4: Conecte à Sua Ferramenta de IA
Escolha a ferramenta que você usa abaixo. Cada uma precisa de uma pequena edição no arquivo de configuração — o assistente de configuração (npm run setup) mostrará os caminhos exatos e o JSON para o seu computador, mas aqui estão as instruções manuais para cada uma.
O que é um arquivo de configuração? É um arquivo de configurações que informa à sua ferramenta de IA onde encontrar este servidor. Você copiará/colará um pequeno bloco de texto nele. Só isso.
Claude Desktop
- Abra o Finder (Mac) ou Explorador de Arquivos (Windows)
- Vá para este arquivo:
- Mac:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- Mac:
- Se o arquivo não existir, crie-o
- Cole isto (substitua os dois valores de espaço reservado pelos seus):
{
"mcpServers": {
"followupboss": {
"command": "node",
"args": ["/full/path/to/followupboss-mcp-server/index.js"],
"env": {
"FUB_API_KEY": "your_api_key_here"
}
}
}
}
- Substitua
/full/path/to/pelo local onde você baixou este projeto - Substitua
your_api_key_herepela sua chave de API FUB - Reinicie o Claude Desktop (saia completamente e reabra)
Claude Code (CLI)
Execute este comando no seu terminal (substitua o caminho):
claude mcp add followupboss -- node /full/path/to/followupboss-mcp-server/index.js
Depois reinicie o Claude Code.
Cursor
- Abra o Cursor
- Vá para Settings > Developer > clique em "Edit Config" (isso abre
~/.cursor/mcp.json) - Cole isto:
{
"mcpServers": {
"followupboss": {
"command": "node",
"args": ["/full/path/to/followupboss-mcp-server/index.js"],
"env": {
"FUB_API_KEY": "your_api_key_here"
}
}
}
}
- Substitua o caminho e a chave de API pelos seus
- Reinicie o Cursor
Windsurf
- Abra o Windsurf
- Vá para Settings > Cascade > MCP Servers
- Ou edite manualmente este arquivo:
- Mac:
~/.codeium/windsurf/mcp_config.json - Windows:
%USERPROFILE%\.codeium\windsurf\mcp_config.json
- Mac:
- Cole isto:
{
"mcpServers": {
"followupboss": {
"command": "node",
"args": ["/full/path/to/followupboss-mcp-server/index.js"],
"env": {
"FUB_API_KEY": "your_api_key_here"
}
}
}
}
- Substitua o caminho e a chave de API pelos seus
- Saia completamente e reinicie o Windsurf
VS Code com GitHub Copilot
Requer VS Code 1.99 ou mais recente e a extensão GitHub Copilot.
- Abra o VS Code
- Pressione
Cmd+Shift+P(Mac) ouCtrl+Shift+P(Windows) - Digite "MCP: Open User Configuration" e selecione
- Cole isto:
{
"servers": {
"followupboss": {
"type": "stdio",
"command": "node",
"args": ["/full/path/to/followupboss-mcp-server/index.js"],
"env": {
"FUB_API_KEY": "your_api_key_here"
}
}
}
}
- Substitua o caminho e a chave de API pelos seus
- Use as ferramentas no modo Agent do Copilot
Nota: O VS Code usa
"servers"e requer"type": "stdio"— ligeiramente diferente das outras ferramentas.
Cline (Extensão do VS Code)
- Abra o VS Code com o Cline instalado
- Clique no ícone MCP Servers na barra lateral do Cline
- Clique em "Configure MCP Servers"
- Cole isto:
{
"mcpServers": {
"followupboss": {
"command": "node",
"args": ["/full/path/to/followupboss-mcp-server/index.js"],
"env": {
"FUB_API_KEY": "your_api_key_here"
}
}
}
}
- Substitua o caminho e a chave de API pelos seus
Gemini CLI (Google)
Isso funciona com a ferramenta Gemini CLI do Google, não com o site Gemini.
- Edite (ou crie) este arquivo:
- Mac:
~/.gemini/settings.json - Windows:
%USERPROFILE%\.gemini\settings.json
- Mac:
- Cole isto:
{
"mcpServers": {
"followupboss": {
"command": "node",
"args": ["/full/path/to/followupboss-mcp-server/index.js"],
"env": {
"FUB_API_KEY": "your_api_key_here"
}
}
}
}
- Substitua o caminho e a chave de API pelos seus
Continue.dev (Extensão do VS Code)
- No seu projeto, crie uma pasta chamada
.continue/mcpServers/se ela não existir - Crie um arquivo chamado
followupboss.jsondentro dela - Cole isto:
{
"mcpServers": {
"followupboss": {
"command": "node",
"args": ["/full/path/to/followupboss-mcp-server/index.js"],
"env": {
"FUB_API_KEY": "your_api_key_here"
}
}
}
}
- Substitua o caminho e a chave de API pelos seus
- Use as ferramentas no modo Agent do Continue
ChatGPT, OpenAI API e Grok
Essas ferramentas suportam apenas servidores MCP remotos (hospedados na internet), não locais. Isso significa que a configuração é mais avançada — você precisaria hospedar este servidor em um serviço de nuvem com HTTPS.
Se houver interesse suficiente, podemos adicionar uma versão hospedada no futuro. Por enquanto, recomendamos usar uma das ferramentas listadas acima que suportam servidores MCP locais.
Exemplos de Uso
Uma vez conectado, basta falar com sua ferramenta de IA normalmente. Aqui estão algumas coisas que você pode pedir:
"Mostre-me todos os meus leads desta semana"
"Crie uma tarefa para acompanhar John Smith amanhã às 14h"
"Quais negócios tenho no meu funil acima de $500k?"
"Adicione uma nota ao perfil de Jane Doe: Tivemos uma ótima ligação, ela está interessada no anúncio do Oak Park"
"Liste todos os meus compromissos futuros para esta semana"
"Quem são meus leads não contatados?"
"Mova o negócio da Smith para a etapa 'Under Contract'"
"Mostre-me todos os contatos marcados com 'hot lead'"
"Crie um novo modelo de e-mail chamado 'Open House Follow Up'"
"Quais planos de ação eu tenho configurados?"
Todas as 160 Ferramentas Disponíveis
Clique para expandir a lista completa de ferramentas
Eventos (3 ferramentas)
| Ferramenta | Descrição |
|---|---|
listEvents | Listar eventos com filtros por pessoa, tipo, propriedade |
createEvent | Criar um novo evento (evento de lead, consulta de propriedade, etc.) |
getEvent | Obter um único evento por ID |
Pessoas / Contatos (8 ferramentas)
| Ferramenta | Descrição |
|---|---|
listPeople | Pesquisar e filtrar contatos extensivamente |
createPerson | Criar um novo contato |
getPerson | Obter um contato por ID |
updatePerson | Atualizar detalhes do contato, etapa, tags, etc. |
deletePerson | Excluir (enviar para a lixeira) um contato |
checkDuplicate | Verificar se um contato existe por e-mail ou telefone |
listUnclaimed | Listar leads não reivindicados em ponds |
claimPerson | Reivindicar um lead não reivindicado |
Anexos de Pessoas (4 ferramentas)
| Ferramenta | Descrição |
|---|---|
createPersonAttachment | Anexar um arquivo a um contato |
getPersonAttachment | Obter um anexo por ID |
updatePersonAttachment | Atualizar um anexo |
deletePersonAttachment | Excluir um anexo |
Relacionamentos (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listRelationships | Listar relacionamentos de um contato |
createRelationship | Criar um relacionamento entre dois contatos |
getRelationship | Obter um relacionamento por ID |
updateRelationship | Atualizar um relacionamento |
deleteRelationship | Excluir um relacionamento |
Identidade (2 ferramentas)
| Ferramenta | Descrição |
|---|---|
getIdentity | Obter informações da conta para a chave de API |
getCurrentUser | Obter o usuário autenticado atual |
Notas (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listNotes | Listar notas, opcionalmente filtradas por personId |
createNote | Criar uma nota em um contato |
getNote | Obter uma nota por ID |
updateNote | Atualizar uma nota |
deleteNote | Excluir uma nota |
Chamadas (4 ferramentas)
| Ferramenta | Descrição |
|---|---|
listCalls | Listar registros de chamadas |
createCall | Registrar uma chamada |
getCall | Obter uma chamada por ID |
updateCall | Atualizar um registro de chamada |
Mensagens de Texto (3 ferramentas)
| Ferramenta | Descrição |
|---|---|
listTextMessages | Listar mensagens de texto |
createTextMessage | Enviar uma mensagem de texto |
getTextMessage | Obter uma mensagem de texto por ID |
Usuários (3 ferramentas)
| Ferramenta | Descrição |
|---|---|
listUsers | Listar todos os usuários/agentes |
getUser | Obter um usuário por ID |
deleteUser | Excluir um usuário |
Listas Inteligentes (2 ferramentas)
| Ferramenta | Descrição |
|---|---|
listSmartLists | Listar todas as listas inteligentes |
getSmartList | Obter uma lista inteligente por ID |
Planos de Ação (4 ferramentas)
| Ferramenta | Descrição |
|---|---|
listActionPlans | Listar todos os planos de ação |
listActionPlansPeople | Listar pessoas em planos de ação |
addPersonToActionPlan | Adicionar um contato a um plano de ação |
updateActionPlanPerson | Atualizar o status do plano de ação para um contato |
Automações (6 ferramentas)
| Ferramenta | Descrição |
|---|---|
listAutomations | Listar todas as automações |
getAutomation | Obter uma automação por ID |
listAutomationsPeople | Listar pessoas em automações |
getAutomationPerson | Obter entrada de automação-pessoa |
addPersonToAutomation | Adicionar um contato a uma automação |
updateAutomationPerson | Atualizar o status da automação para um contato |
Modelos de E-mail (6 ferramentas)
| Ferramenta | Descrição |
|---|---|
listTemplates | Listar modelos de e-mail |
createTemplate | Criar um modelo de e-mail |
getTemplate | Obter um modelo por ID |
updateTemplate | Atualizar um modelo |
mergeTemplate | Mesclar modelo com dados do contato (mala direta) |
deleteTemplate | Excluir um modelo |
Modelos de Mensagem de Texto (6 ferramentas)
| Ferramenta | Descrição |
|---|---|
listTextMessageTemplates | Listar modelos de mensagem de texto |
createTextMessageTemplate | Criar um modelo de mensagem de texto |
getTextMessageTemplate | Obter um modelo por ID |
updateTextMessageTemplate | Atualizar um modelo |
mergeTextMessageTemplate | Mesclar modelo com dados do contato |
deleteTextMessageTemplate | Excluir um modelo |
Marketing por E-mail (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listEmEvents | Listar eventos de marketing por e-mail |
createEmEvent | Criar eventos de marketing por e-mail |
listEmCampaigns | Listar campanhas de marketing por e-mail |
createEmCampaign | Criar uma campanha |
updateEmCampaign | Atualizar uma campanha |
Campos Personalizados (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listCustomFields | Listar todos os campos personalizados |
createCustomField | Criar um campo personalizado |
getCustomField | Obter um campo personalizado por ID |
updateCustomField | Atualizar um campo personalizado |
deleteCustomField | Excluir um campo personalizado |
Etapas (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listStages | Listar todas as etapas do pipeline |
createStage | Criar uma etapa |
getStage | Obter uma etapa por ID |
updateStage | Atualizar uma etapa |
deleteStage | Excluir uma etapa |
Tarefas (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listTasks | Listar tarefas |
createTask | Criar uma tarefa |
getTask | Obter uma tarefa por ID |
updateTask | Atualizar uma tarefa |
deleteTask | Excluir uma tarefa |
Compromissos (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listAppointments | Listar compromissos |
createAppointment | Criar um compromisso |
getAppointment | Obter um compromisso por ID |
updateAppointment | Atualizar um compromisso |
deleteAppointment | Excluir um compromisso |
Tipos de Compromisso (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listAppointmentTypes | Listar tipos de compromisso |
createAppointmentType | Criar um tipo |
getAppointmentType | Obter um tipo por ID |
updateAppointmentType | Atualizar um tipo |
deleteAppointmentType | Excluir um tipo |
Resultados de Compromisso (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listAppointmentOutcomes | Listar resultados |
createAppointmentOutcome | Criar um resultado |
getAppointmentOutcome | Obter um resultado por ID |
updateAppointmentOutcome | Atualizar um resultado |
deleteAppointmentOutcome | Excluir um resultado |
Webhooks (6 ferramentas)
| Ferramenta | Descrição |
|---|---|
listWebhooks | Listar todos os webhooks |
createWebhook | Criar um webhook |
getWebhook | Obter um webhook por ID |
updateWebhook | Atualizar um webhook |
deleteWebhook | Excluir um webhook |
getWebhookEvents | Obter eventos de um webhook |
Pipelines (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listPipelines | Listar todos os pipelines |
createPipeline | Criar um pipeline |
getPipeline | Obter um pipeline por ID |
updatePipeline | Atualizar um pipeline |
deletePipeline | Excluir um pipeline |
Negócios (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listDeals | Listar negócios com filtragem |
createDeal | Criar um negócio |
getDeal | Obter um negócio por ID |
updateDeal | Atualizar um negócio |
deleteDeal | Excluir um negócio |
Anexos de Negócios (4 ferramentas)
| Ferramenta | Descrição |
|---|---|
createDealAttachment | Anexar um arquivo a um negócio |
getDealAttachment | Obter um anexo por ID |
updateDealAttachment | Atualizar um anexo |
deleteDealAttachment | Excluir um anexo |
Campos Personalizados de Negócios (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listDealCustomFields | Listar campos personalizados de negócios |
createDealCustomField | Criar um campo personalizado de negócio |
getDealCustomField | Obter um campo por ID |
updateDealCustomField | Atualizar um campo |
deleteDealCustomField | Excluir um campo |
Grupos (6 ferramentas)
| Ferramenta | Descrição |
|---|---|
listGroups | Listar todos os grupos |
listRoundRobinGroups | Listar grupos round robin |
createGroup | Criar um grupo |
getGroup | Obter um grupo por ID |
updateGroup | Atualizar um grupo |
deleteGroup | Excluir um grupo |
Equipes (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listTeams | Listar todas as equipes |
createTeam | Criar uma equipe |
getTeam | Obter uma equipe por ID |
updateTeam | Atualizar uma equipe |
deleteTeam | Excluir uma equipe |
Caixas de Entrada da Equipe (1 ferramenta)
| Ferramenta | Descrição |
|---|---|
listTeamInboxes | Listar todas as caixas de entrada da equipe |
Ponds (5 ferramentas)
| Ferramenta | Descrição |
|---|---|
listPonds | Listar todos os ponds |
createPond | Criar um pond |
getPond | Obter um pond por ID |
updatePond | Atualizar um pond |
deletePond | Excluir um pond |
Períodos de Tempo (1 ferramenta)
| Ferramenta | Descrição |
|---|---|
listTimeframes | Listar todos os períodos de tempo |
Apps de Caixa de Entrada (10 ferramentas)
| Ferramenta | Descrição |
|---|---|
inboxAppAddMessage | Adicionar uma mensagem a uma conversa |
inboxAppUpdateMessage | Atualizar uma mensagem |
inboxAppAddNote | Adicionar uma nota a uma conversa |
inboxAppUpdateConversation | Atualizar o status da conversa |
inboxAppGetParticipants | Obter participantes da conversa |
inboxAppCreateParticipant | Adicionar um participante |
inboxAppDeleteParticipant | Remover um participante |
inboxAppInstall | Instalar um app de caixa de entrada |
inboxAppDeactivate | Desativar o app de caixa de entrada |
listInboxAppInstallations | Listar instalações |
Reações (3 ferramentas)
| Ferramenta | Descrição |
|---|---|
getReactions | Obter reações para um item |
createReaction | Adicionar uma reação |
deleteReaction | Remover uma reação |
Respostas em Tópicos (1 ferramenta)
| Ferramenta | Descrição |
|---|---|
getThreadedReplies | Obter respostas em tópicos para um item |
Ferramentas de Conveniência
| Ferramenta | Descrição |
|---|---|
removeTagFromPerson | Remover uma única tag sem afetar outras (gerencia leitura-modificação-escrita internamente) |
getPersonByEmail | Buscar uma pessoa por e-mail; relata ambiguidade com IDs candidatos em vez de escolher silenciosamente quando vários contatos correspondem |
searchPeopleByTag | Encontrar todas as pessoas com tags específicas (separadas por vírgula, lógica OU) |
bulkUpdatePeople | Atualizar várias pessoas de uma vez com limitação de taxa automática |
listAvailableTags | Descobrir todas as tags na sua conta escaneando contatos |
Ferramentas Meta (2 ferramentas, novas na v1.1.2)
| Ferramenta | Descrição |
|---|---|
about | Biografia do autor, projetos relacionados, contribuidores, "como me agradecer" |
help | Dicas de uso, exemplos comuns de ferramentas, links para relatar bugs |
Limitação de Taxa
O servidor tenta novamente automaticamente quando os limites de taxa da FUB são atingidos (HTTP 429). Ele lê o cabeçalho Retry-After e faz backoff com atrasos crescentes, até 3 tentativas por requisição. Os limites da FUB são:
- Global: 250 requisições por 10 segundos
- Atualizações de pessoas: 25 por 10 segundos
- Notas: 10 por 10 segundos
A ferramenta bulkUpdatePeople também adiciona uma pausa embutida a cada 20 operações para permanecer abaixo do limite de PUT.
Solução de Problemas
"Não é possível conectar" ou "Conexão recusada"
- Certifique-se de que o Node.js está instalado: execute
node --versionno seu terminal (deve mostrar v18 ou superior) - Certifique-se de que você executou
npm installna pasta do projeto - Verifique novamente o caminho do arquivo na sua configuração do Claude
"Chave de API inválida" ou "401 Não autorizado"
- Verifique novamente sua chave de API na FUB: Admin > API
- Certifique-se de que não há espaços extras ao copiar/colar
- Execute
npm run setupnovamente para testar sua chave
"Ferramenta não encontrada" no Claude
- Reinicie o Claude Desktop após adicionar a configuração do servidor
- Verifique se o JSON no seu arquivo de configuração é válido (sem vírgulas ou colchetes faltando)
Claude parece não saber sobre a FUB
- Certifique-se de que o nome do servidor na sua configuração corresponde exatamente
- Verifique o console de desenvolvedor do Claude Desktop para mensagens de erro
- Tente perguntar ao Claude: "Quais ferramentas MCP você tem disponíveis?"
FAQ
Meus dados estão seguros?
Sim. Este servidor roda inteiramente no seu computador. Sua chave de API permanece em um arquivo local na sua máquina e nunca é enviada para nenhum lugar, exceto diretamente para a API oficial do Follow Up Boss. Nenhum dado passa por servidores de terceiros.
Isso tem algum custo?
Este servidor é gratuito e de código aberto. Você só precisa de uma conta Follow Up Boss com acesso à API (incluído na maioria dos planos pagos).
O Claude pode modificar meus dados da FUB? Sim, o Claude pode criar, atualizar e excluir registros na sua conta FUB. O Claude normalmente confirma antes de fazer alterações, especialmente em exclusões. Se você quiser acesso somente leitura, pode criar uma chave de API restrita no FUB.
Onde estão as URLs de gravação de chamadas?
Em lugar nenhum, e não é este servidor que as esconde. O Follow Up Boss mascara recordingUrl no nível da API para todas as integrações — a API bruta retorna * Recording URL is hidden for privacy reasons * independentemente dos cabeçalhos ou permissões que você use, e a FUB confirmou diretamente que as URLs de gravação nunca serão expostas pela API. Escrever um recordingUrl também é uma operação sem efeito (a FUB mascara de volta na leitura), então as ferramentas de chamada não o aceitam mais. Se você precisar do áudio da chamada, capture-o no lado do discador; você pode armazenar sua transcrição na chamada com updateCall (campo de nota). História completa em issue #2.
O que é MCP?
MCP (Model Context Protocol) é um padrão aberto criado pela Anthropic que permite que ferramentas de IA como o Claude se conectem a serviços externos. Pense nele como um plugue universal que permite o Claude conversar com seus aplicativos. Saiba mais sobre MCP.
Quem fez isso?
Construído por Ed Neuhaus, corretor na Neuhaus Realty Group e criador da StaySTRA, ambos em Austin, TX. Usamos o Follow Up Boss todos os dias e construímos isso para acelerar nosso próprio fluxo de trabalho.
Contribuindo
Contribuições são bem-vindas! Veja como:
- Faça um fork deste repositório
- Crie um branch de funcionalidade:
git checkout -b my-feature - Faça suas alterações
- Teste-as:
node -c index.js(verificação de sintaxe) - Faça o commit:
git commit -m "Add my feature" - Envie:
git push origin my-feature - Abra um Pull Request
Mantenha o estilo do código consistente e garanta que todas as 160 ferramentas continuem funcionando.
Licença
Elastic License 2.0 — auto-hospedagem gratuita, sem revenda SaaS. Versões ≤ v1.1.1 permanecem licenciadas sob MIT; forks existentes dessas versões não são afetados. Consulte LICENSE e NOTICE para os termos completos e atribuição.
Construído por Ed Neuhaus