Salesforce MCP Server - Enhanced Edition

Um servidor MCP Salesforce com integrações automáticas para serviços como WhatsApp, Slack, e-mail e webhooks personalizados.

Documentação

Salesforce MCP Server - Enhanced Edition

Uma implementação aprimorada de servidor MCP (Model Context Protocol) que integra o Claude com o Salesforce, apresentando integrações automáticas com APIs externas. Este servidor permite que o Claude consulte, modifique e gerencie seus objetos e registros do Salesforce, além de configurar automaticamente integrações com serviços externos como WhatsApp, Slack, e-mail e webhooks personalizados.

🆕 NOVOS RECURSOS - Gerenciamento de Integrações

🔗 Configuração Automática de Integrações

Crie integrações que são acionadas automaticamente quando registros do Salesforce são criados, atualizados ou excluídos:

  • Notificações do WhatsApp quando novos leads são criados
  • Alertas do Slack para atualizações de oportunidades
  • Notificações por e-mail para novos casos
  • Webhooks personalizados para qualquer combinação de objeto/evento

⚡ Modelos de Configuração Rápida

Modelos de integração pré-construídos para cenários comuns:

  • whatsapp_lead - Notificações do WhatsApp para novos leads
  • slack_opportunity - Alertas do Slack para oportunidades
  • email_case - Notificações por e-mail para casos de suporte
  • webhook_custom - Webhook genérico para qualquer caso de uso

Recursos Originais

  • Gerenciamento de Objetos e Campos: Crie e modifique objetos e campos personalizados usando linguagem natural
  • Busca Inteligente de Objetos: Encontre objetos do Salesforce usando correspondências parciais de nome
  • Informações Detalhadas de Esquema: Obtenha detalhes abrangentes de campos e relacionamentos para qualquer objeto
  • Consultas de Dados Flexíveis: Consulte registros com suporte a relacionamentos e filtros complexos
  • Manipulação de Dados: Insira, atualize, exclua e faça upsert de registros com facilidade
  • Busca Entre Objetos: Pesquise em vários objetos usando SOSL
  • Gerenciamento de Código Apex: Leia, crie e atualize classes e triggers Apex
  • Tratamento de Erros Intuitivo: Feedback claro com detalhes de erro específicos do Salesforce

Instalação

npm install -g @tsmztech/mcp-server-salesforce

🆕 Novas Ferramentas de Integração

salesforce_manage_integrations

Gerenciamento completo de integrações:

  • Crie novas integrações com APIs externas
  • Liste todas as integrações configuradas
  • Atualize as configurações de integração
  • Ative/desative integrações
  • Exclua integrações

salesforce_quick_setup_integration

Configuração rápida para cenários comuns de integração:

  • Integração com a API do WhatsApp Business
  • Integração com webhook do Slack
  • Integração com serviço de e-mail
  • Integração com webhook personalizado

Exemplos de Integração

📱 Notificações de Leads no WhatsApp

"Set up WhatsApp notifications when new leads are created"

Quick setup with:
- Type: whatsapp_lead
- Object: Lead
- WhatsApp API token: your_token
- Phone number: +1234567890
- Message: "🔔 New lead: {Name} from {Company} - Rating: {Rating}"

💬 Alertas de Oportunidades no Slack

"Create Slack alerts for opportunity updates"

Quick setup with:
- Type: slack_opportunity  
- Object: Opportunity
- Slack webhook URL: your_webhook_url
- Channel: #sales
- Message: "💰 {Name} - ${Amount} - Stage: {StageName}"

📧 Notificações de Casos por E-mail

"Send email notifications for new support cases"

Quick setup with:
- Type: email_case
- Object: Case  
- Email API endpoint: your_email_service
- Message: "New case #{CaseNumber} from {Contact.Name}"

🎯 Integração com Webhook Personalizado

"Create custom webhook for account updates"

Setup with:
- Type: webhook_custom
- Object: Account
- Webhook URL: https://your-system.com/webhook
- Events: insert, update
- Condition: "Type = 'Customer'"

Como Funciona a Integração

  1. Configuração: Use a configuração rápida ou a configuração manual
  2. Criação Automática:
    • Cria o objeto personalizado Integration_Config__c para armazenar configurações
    • Gera um trigger Apex para o seu objeto de destino
    • Cria a classe utilitária IntegrationCalloutService
  3. Tempo de Execução: Quando os registros correspondem aos seus critérios, callouts automáticos são feitos
  4. Gerenciamento: Controle total para ativar, desativar, atualizar ou excluir integrações

Ferramentas Originais

salesforce_search_objects

Pesquise objetos padrão e personalizados por correspondências parciais de nome.

salesforce_describe_object

Obtenha informações detalhadas do esquema do objeto, incluindo campos, relacionamentos e valores de picklist.

salesforce_query_records

Consulte registros com suporte a relacionamentos e condições WHERE complexas.

salesforce_aggregate_query

Execute consultas agregadas com GROUP BY, funções agregadas e cláusulas HAVING.

salesforce_dml_records

Execute operações de dados: inserir, atualizar, excluir e fazer upsert de registros.

salesforce_manage_object

Crie e modifique objetos personalizados com configurações de compartilhamento.

salesforce_manage_field

Gerencie campos de objetos, incluindo relacionamentos, e conceda automaticamente Segurança em Nível de Campo.

salesforce_manage_field_permissions

Gerencie a Segurança em Nível de Campo (Permissões de Campo) para perfis específicos.

salesforce_search_all

Pesquise em vários objetos usando SOSL com trechos de campos.

salesforce_read_apex / salesforce_write_apex

Leia e gerencie classes Apex com acesso completo ao código-fonte.

salesforce_read_apex_trigger / salesforce_write_apex_trigger

Leia e gerencie triggers Apex para qualquer objeto.

salesforce_execute_anonymous

Execute código Apex anônimo para operações personalizadas.

salesforce_manage_debug_logs

Gerencie logs de depuração para usuários do Salesforce com níveis de log configuráveis.

Configuração

Autenticação do Salesforce

Você pode se conectar ao Salesforce usando um dos dois métodos de autenticação:

1. Autenticação por Nome de Usuário/Senha (Padrão)

  1. Configure suas credenciais do Salesforce
  2. Obtenha seu token de segurança (Redefina nas Configurações do Salesforce)

2. Fluxo de Credenciais de Cliente OAuth 2.0

  1. Crie um Connected App no Salesforce
  2. Ative as configurações de OAuth e selecione "Client Credentials Flow"
  3. Defina os escopos apropriados (normalmente "api" é suficiente)
  4. Salve o Client ID e o Client Secret
  5. Importante: Anote a URL da sua instância (por exemplo, https://your-domain.my.salesforce.com), pois ela é necessária para a autenticação

Uso com o Claude Desktop

Adicione ao seu claude_desktop_config.json:

Para autenticação por Nome de Usuário/Senha:

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["-y", "@tsmztech/mcp-server-salesforce"],
      "env": {
        "SALESFORCE_CONNECTION_TYPE": "User_Password",
        "SALESFORCE_USERNAME": "your_username",
        "SALESFORCE_PASSWORD": "your_password",
        "SALESFORCE_TOKEN": "your_security_token",
        "SALESFORCE_INSTANCE_URL": "org_url"
      }
    }
  }
}

Para o Fluxo de Credenciais de Cliente OAuth 2.0:

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["-y", "@tsmztech/mcp-server-salesforce"],
      "env": {
        "SALESFORCE_CONNECTION_TYPE": "OAuth_2.0_Client_Credentials",
        "SALESFORCE_CLIENT_ID": "your_client_id",
        "SALESFORCE_CLIENT_SECRET": "your_client_secret",
        "SALESFORCE_INSTANCE_URL": "https://your-domain.my.salesforce.com"
      }
    }
  }
}

🆕 Exemplos de Uso de Integração

Configuração Rápida de Integração

"Set up WhatsApp notifications for hot leads"
"Create Slack alerts when opportunities exceed $50k" 
"Send email notifications for high-priority cases"
"Configure webhook for account updates"

Gerenciando Integrações

"List all my integrations"
"Deactivate the WhatsApp lead integration"
"Update the Slack webhook URL"
"Delete the old email integration"

Configuração Avançada de Integração

"Create custom integration for Contact updates that sends data to my CRM webhook when the lead score changes"
"Set up WhatsApp notifications only for leads with rating 'Hot' from specific lead sources"

Exemplos de Uso Tradicional

Pesquisando Objetos

"Find all objects related to Accounts"
"Show me objects that handle customer service"
"What objects are available for order management?"

Obtendo Informações de Esquema

"What fields are available in the Account object?"
"Show me the picklist values for Case Status"
"Describe the relationship fields in Opportunity"

Consultando Registros

"Get all Accounts created this month"
"Show me high-priority Cases with their related Contacts"
"Find all Opportunities over $100k"

Gerenciando Objetos Personalizados

"Create a Customer Feedback object"
"Add a Rating field to the Feedback object"
"Update sharing settings for the Service Request object"

Desenvolvimento

Compilando a partir do código-fonte

# Clone your fork
git clone https://github.com/chetyz/Mcp_Salesforce.git

# Navigate to directory
cd Mcp_Salesforce

# Install dependencies
npm install

# Build the project
npm run build

Contribuição

Contribuições são bem-vindas! Sinta-se à vontade para enviar um Pull Request.

Licença

Este projeto é licenciado sob a Licença MIT - consulte o arquivo LICENSE para obter detalhes.

Problemas e Suporte

Se você encontrar algum problema ou precisar de suporte, abra uma issue no repositório do GitHub.