MCP Salesforce Server

Proporciona integración fluida con Salesforce mediante autenticación OAuth.

Documentación

MCP Salesforce Server

CI

Un servidor de Model Context Protocol (MCP) que proporciona una integración perfecta con Salesforce mediante autenticación OAuth. Este servidor permite que asistentes de IA como Claude interactúen con cualquier organización de Salesforce a través de una interfaz segura y genérica.

✨ Características

  • 🎯 Autenticación sin interrupciones - Claude detecta automáticamente cuándo se necesita autenticación y la gestiona de forma transparente
  • 🚀 Configuración manual cero - No es necesario ejecutar comandos de terminal ni flujos OAuth manuales
  • 🔐 Autenticación solo con OAuth - Configuración segura basada en navegador con renovación automática de tokens
  • 🌐 Integración universal con Salesforce - Funciona con cualquier organización de Salesforce, incluidos objetos y campos personalizados
  • 🧠 Aprendizaje inteligente de la instalación - Analiza toda tu configuración de Salesforce para ofrecer asistencia inteligente
  • 🔍 Descubrimiento dinámico de esquema - Se adapta automáticamente a tu configuración de Salesforce
  • 🔒 Almacenamiento seguro de tokens - Almacenamiento basado en archivos con permisos estrictos para seguridad de nivel de producción
  • 🏠 Almacenamiento multiplataforma en el directorio de inicio - Credenciales y caché almacenados en el directorio de inicio del usuario
  • 📝 Operaciones CRUD completas - Consultar, crear, actualizar y eliminar cualquier registro de Salesforce
  • 📊 Inspección de esquema - Obtén información detallada sobre objetos y campos
  • 💡 Sugerencias contextuales - Proporciona sugerencias inteligentes de nombres de campos y objetos
  • 💾 Sistema de copia de seguridad integral - Copia de seguridad completa de datos y archivos con soporte para todos los sistemas de archivos de Salesforce
  • ⏰ Función de máquina del tiempo - Recuperación de datos en un punto específico y análisis histórico
  • 📁 Soporte de archivos en múltiples formatos - Realiza copias de seguridad de ContentVersions, Attachments y Documents con los metadatos adecuados

🚀 Inicio rápido

Requisitos previos

  • Node.js 18+
  • macOS (requerido para el almacenamiento seguro de credenciales)
  • Salesforce Connected App con OAuth configurado

Opciones de instalación

🎯 Recomendado: Uso con NPX (sin instalación requerida)

Usa NPX para ejecutar el servidor MCP sin ninguna instalación permanente:

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["@aiondadotcom/mcp-salesforce"]
    }
  }
}

✅ Beneficios del uso de NPX:

  • 🔄 Siempre la última versión: Utiliza automáticamente la última versión publicada
  • 💾 Sin espacio en disco: No se requiere instalación permanente
  • 🛡️ Sin conflictos: Sin conflictos globales de paquetes
  • ⚡ Actualizaciones fáciles: Solo reinicia - obtiene la última versión automáticamente
  • 📋 Configuración simple: Configuración MCP lista para copiar y pegar

Uso desde la línea de comandos con NPX:

# Get version
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --version

# Get help
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --help

# Run OAuth setup
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce setup

🔧 Alternativa: Configuración de desarrollo

Para desarrollo o personalización:

  1. Clona e instala las dependencias:

    git clone https://github.com/AiondaDotCom/mcp-salesforce.git
    cd mcp-salesforce
    npm install
    
  2. Configura las credenciales: Usa la herramienta salesforce_setup para configurar tus credenciales cuando se te solicite

  3. Añade a Claude Desktop usando la ruta local (consulta Configuración a continuación)

🎯 Empieza a usar

¡Eso es todo! Claude gestionará automáticamente la configuración y la autenticación la primera vez que uses cualquier herramienta de Salesforce.

✨ ¡Proceso de configuración interactivo!

  • Usa la herramienta salesforce_setup para configurar tus credenciales
  • Claude te pedirá los detalles de tu Salesforce Connected App
  • Las credenciales se almacenan de forma segura en tu directorio de inicio
  • Flujo OAuth sin interrupciones directamente desde Claude Desktop

🧠 Sistema de aprendizaje inteligente

  • Usa salesforce_learn para analizar tu instalación completa de Salesforce
  • Claude aprende todos tus objetos personalizados, campos y relaciones
  • Proporciona sugerencias inteligentes basadas en tu configuración específica
  • Asistencia contextual para entornos complejos de Salesforce

📦 Estado del paquete NPM

✅ ¡Paquete publicado con éxito!

El paquete @aiondadotcom/mcp-salesforce ya está disponible en NPM y listo para usar.

Uso del paquete publicado

El uso de NPX ya está disponible para todos los usuarios:

# Test the published package
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --version
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce --help

# Run OAuth setup
npx -p @aiondadotcom/mcp-salesforce mcp-salesforce setup

Detalles de la publicación

  • Nombre del paquete: @aiondadotcom/mcp-salesforce
  • Versión: 1.0.7 (última)
  • Registro: Registro público de NPM
  • Organización: @aiondadotcom
  • Acceso: Público

Estado:

  • ✅ Paquete publicado en NPM
  • ✅ Compatibilidad con NPX verificada
  • ✅ Wrapper binario implementado
  • ✅ Comando de configuración funcional
  • ✅ Configuración MCP lista
  • ✅ Disponible para uso inmediato

🎉 ¡Toda la funcionalidad de NPX ya funciona para usuarios finales en todo el mundo!

🔧 Configuración

Configuración de Salesforce Connected App

  1. En la configuración de Salesforce, crea una nueva Connected App:

    • Nombre de la aplicación: MCP Salesforce Integration
    • Nombre de API: mcp_salesforce_integration
    • Correo de contacto: Tu correo electrónico
    • Habilitar configuración de OAuth: ✅ Sí
    • URL de devolución de llamada: http://localhost:9876/callback

      El puerto 9876 se eligió deliberadamente para evitar conflictos con servidores de desarrollo comunes (8080, 8000, 3000) y servicios conocidos.

    • Ámbitos de OAuth seleccionados:
      • Gestionar datos de usuario mediante APIs (api)
      • Realizar solicitudes en cualquier momento (refresh_token, offline_access)
  2. Después de guardar, copia la Consumer Key y el Consumer Secret

Configuración de credenciales

Configura tus credenciales usando la herramienta salesforce_setup la primera vez que uses la aplicación:

  1. Configuración interactiva: Claude te solicitará tus credenciales de Salesforce
  2. ID de cliente: La Consumer Key de tu Salesforce Connected App
  3. Secreto de cliente: El Consumer Secret de tu Salesforce Connected App
  4. URL de instancia: La URL de tu organización de Salesforce (p. ej., https://mycompany.salesforce.com)

La herramienta validará tu entrada y almacenará las credenciales de forma segura en ~/.mcp-salesforce.json con permisos restringidos (600).

📁 Ubicaciones de archivos:

  • Credenciales: ~/.mcp-salesforce.json (contiene tokens OAuth y credenciales)
  • Caché: ~/.mcp-salesforce-cache/ (contiene el esquema y contexto aprendidos de Salesforce)
  • Multiplataforma: Funciona en Windows, macOS y Linux

Ejemplo de interacción:

Claude: I need to set up your Salesforce credentials first. Please use the salesforce_setup tool with your credentials.

You: Use the salesforce_setup tool with clientId: "3MVG9...", clientSecret: "1234567890...", instanceUrl: "https://mycompany.salesforce.com"

Claude: ✅ Salesforce credentials configured successfully! You can now use other Salesforce tools.

Integración con Claude Desktop

🎯 Configuración NPX (recomendada)

Añade esto a tu configuración MCP de Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "salesforce": {
      "command": "npx",
      "args": ["@aiondadotcom/mcp-salesforce"]
    }
  }
}

🔧 Configuración de desarrollo/local

Para desarrollo o instalaciones personalizadas:

{
  "mcpServers": {
    "salesforce": {
      "command": "node",
      "args": ["/path/to/mcp-salesforce/src/index.js"]
    }
  }
}

🌐 Configuración MCP para VS Code

Para VS Code con la extensión MCP:

{
  "servers": {
    "salesforce": {
      "command": "npx",
      "args": ["@aiondadotcom/mcp-salesforce"]
    }
  }
}

📸 Capturas de pantalla de demostración

Aquí tienes un recorrido paso a paso del MCP Salesforce Server en acción, mostrando un caso de uso real de verificación y actualización de la información de dirección de una empresa:

Paso 1: Solicitud de verificación de dirección

Address Verification Claude comprobando si la cuenta de Aionda GmbH en Salesforce tiene la dirección correcta comparándola con la dirección actual de su sitio web

Paso 2: Resultados de la comparación de direcciones

Address Analysis Claude identificando que la dirección de Salesforce está desactualizada, mostrando una comparación detallada entre los datos actuales de Salesforce y la dirección real del sitio web de la empresa

Paso 3: Actualización automática de la dirección

Address Update Claude actualizando correctamente la cuenta de Salesforce con la dirección actual correcta, mostrando exactamente qué campos se cambiaron

Paso 4: Verificación en Salesforce

Salesforce Confirmation El registro de cuenta actualizado en Salesforce que muestra la información de dirección corregida ahora es preciso y está actualizado

🛠️ Herramientas disponibles

salesforce_learn

🧠 Aprende tu instalación completa de Salesforce - Analiza todos los objetos, campos y personalizaciones una vez y almacena esta información localmente para una asistencia inteligente.

// One-time analysis of the Salesforce installation
{}

// Force complete re-analysis
{
  "force_refresh": true,
  "detailed_relationships": true
}

¿Por qué es importante?

  • Claude aprende tus objetos personalizados como "TimeTracking__c", "Project__c", etc.
  • Reconoce todos los campos personalizados y sus tipos de datos
  • Proporciona sugerencias inteligentes basadas en tu configuración específica
  • Ejecútalo una vez y la IA se beneficiará de ello permanentemente

salesforce_installation_info

📊 Resumen de tu instalación aprendida de Salesforce - Muestra los objetos disponibles, campos personalizados y personalizaciones.

// Complete overview of the installation
{}

// Details about a specific object
{
  "object_name": "TimeTracking__c"
}

// Search for specific fields
{
  "field_search": "email",
  "show_custom_only": true
}

salesforce_query

Ejecuta consultas SOQL contra cualquier objeto de Salesforce.

// Example: Get recent contacts
{
  "query": "SELECT Id, FirstName, LastName, Email FROM Contact WHERE CreatedDate = THIS_MONTH ORDER BY CreatedDate DESC LIMIT 10"
}

🧠 Integración de aprendizaje inteligente:

  • Advierte automáticamente cuando la instalación aún no se ha aprendido
  • Sugiere objetos y campos disponibles
  • Ayuda con los nombres de API correctos

salesforce_create

Crea nuevos registros en cualquier objeto de Salesforce.

// Example: Create a new contact
{
  "sobject": "Contact",
  "data": {
    "FirstName": "John",
    "LastName": "Doe", 
    "Email": "john.doe@example.com",
    "Phone": "555-1234"
  }
}

🧠 Contexto inteligente: Muestra automáticamente los campos obligatorios para el objeto seleccionado cuando la instalación se ha aprendido.

salesforce_update

Actualiza registros existentes.

// Example: Update a contact's email
{
  "sobject": "Contact",
  "id": "003XX000008b6cYAQ",
  "data": {
    "Email": "new.email@example.com",
    "Phone": "555-5678"
  }
}

🧠 Contexto inteligente: Considera los permisos de campo y los tipos de datos de la instalación aprendida.

salesforce_delete

Elimina registros (⚠️ acción permanente).

// Example: Delete a record
{
  "sobject": "Contact", 
  "id": "003XX000008b6cYAQ"
}

salesforce_describe

Obtén información de esquema para objetos y campos.

// Example: Get Contact object schema
{
  "sobject": "Contact"
}

// Or get list of all available objects
{} // Empty parameters

salesforce_backup

💾 Sistema integral de copia de seguridad para Salesforce - Crea copias de seguridad completas de todos los datos y archivos con información detallada de recuperación.

// Create complete backup
{}

// Incremental backup since specific date
{
  "backup_type": "incremental",
  "since_date": "2025-01-01T00:00:00Z"
}

// Backup with specific options
{
  "options": {
    "include_files": true,
    "include_attachments": true,
    "include_documents": true,
    "parallel_downloads": 10
  }
}

Qué se incluye en la copia de seguridad:

  • 📊 Todos los datos de objetos - Todos los objetos consultables con hasta 20 campos por objeto
  • 📁 Archivos modernos - ContentVersions con metadatos completos
  • 📎 Adjuntos heredados - Adjuntos clásicos con las extensiones de archivo correctas
  • 📄 Documentos - Documentos basados en carpetas del sistema heredado
  • 🏗️ Información de esquema - Estructuras y relaciones completas de objetos
  • 📋 Manifiesto de copia de seguridad - Estadísticas detalladas e información de recuperación

Estructura de la copia de seguridad:

salesforce-backup-2025-06-04T16-16-35-660Z/
├── metadata/           # Schema and object definitions
├── data/              # JSON data of all objects
├── files/
│   ├── content-versions/  # Modern files
│   ├── attachments/       # Legacy attachments
│   └── documents/         # Legacy documents
└── backup-manifest.json   # Backup overview

salesforce_backup_list

📋 Mostrar copias de seguridad disponibles - Resumen de todas las copias de seguridad locales con estadísticas y metadatos.

// List all available backups
{}

// Details about a specific backup
{
  "backup_name": "salesforce-backup-2025-06-04T16-16-35-660Z"
}

salesforce_time_machine

⏰ Viaje en el tiempo a través de los datos de Salesforce - Analiza los cambios de datos entre diferentes puntos temporales de copia de seguridad y permite la recuperación selectiva.

// Compare current state with a backup
{
  "backup_timestamp": "2025-06-04T16:16:35.660Z",
  "object_name": "Account"
}

// Show all changes since a specific backup
{
  "backup_timestamp": "2025-06-04T16:16:35.660Z",
  "show_all_changes": true
}

// Detailed analysis for specific records
{
  "backup_timestamp": "2025-06-04T16:16:35.660Z",
  "object_name": "Contact", 
  "record_id": "003XX000008b6cYAQ"
}

Características de la máquina del tiempo:

  • 📊 Comparación de datos - Muestra las diferencias entre la copia de seguridad y el estado actual
  • 🔍 Historial de cambios - Qué campos se cambiaron y cuándo
  • 🗑️ Registros eliminados - Encuentra registros que se eliminaron desde la copia de seguridad
  • 📈 Análisis de crecimiento - Evaluación estadística del desarrollo de los datos
  • 🎯 Recuperación selectiva - Identificación precisa de los cambios

salesforce_auth

Autentícate con Salesforce. Detecta automáticamente si se necesita autenticación y gestiona el flujo OAuth.

// Example: Standard authentication (detects if needed)
{}

// Example: Force re-authentication even if tokens appear valid
{
  "force": true
}

✨ Características clave:

  • Detección automática: Claude sugiere automáticamente esta herramienta cuando se necesita autenticación
  • Sin configuración manual: Elimina la necesidad de ejecutar npm run setup manualmente
  • Autenticación inteligente: Solo autentica cuando es necesario, comprueba primero los tokens existentes
  • Integración sin interrupciones: Funciona de forma transparente en segundo plano

Esta herramienta se sugiere automáticamente cuando:

  • Intentas usar herramientas de Salesforce sin autenticación
  • Tus tokens han caducado
  • Se producen errores de autenticación
  • Se necesita la configuración inicial

🧠 Sistema de aprendizaje inteligente

¿Por qué es importante el aprendizaje?

Cada instalación de Salesforce es única con:

  • Objetos personalizados como "TimeTracking__c", "Project__c", "CustomerCare__c"
  • Campos personalizados en objetos estándar
  • Flujos de trabajo específicos y reglas de validación
  • Estructuras de datos individuales

El modelo de entrenamiento normal de la IA solo conoce los objetos estándar de Salesforce. Sin conocimiento de tu instalación específica, la IA no puede proporcionar asistencia inteligente.

¿Cómo funciona el aprendizaje?

  1. Análisis único: salesforce_learn analiza tu instalación completa
  2. Documentación local: Todos los objetos, campos y relaciones se almacenan localmente
  3. Soporte inteligente: Claude puede entonces hacer sugerencias precisas y responder preguntas complejas

Ejemplo de flujo de trabajo:

You: "Are there any time tracking entries for July 2025?"

Without Learning:
❌ Claude: "I don't know any object called 'TimeTracking'"

With Learning:
✅ Claude: "I'm checking the 'TimeTracking__c' object for entries from July 2025..."
   Automatically executes the correct SOQL query

¿Cuándo deberías usar el aprendizaje?

  • Durante la configuración inicial - Una vez después de la instalación
  • Después de cambios importantes - Cuando se añaden nuevos objetos personalizados
  • Cuando hay problemas - Cuando Claude no encuentra objetos o campos

¿Qué se aprende?

  • Todos los SObjects (estándar y personalizados)
  • Todos los campos con tipos de datos y permisos
  • Relaciones entre objetos
  • Valores de listas de selección y reglas de validación
  • Campos obligatorios para una mejor validación

💡 ¡El aprendizaje se ejecuta solo una vez y luego hace que todas las interacciones posteriores sean mucho más inteligentes!

💡 Ejemplos de uso

🚀 Primeros pasos después de la instalación

  1. Autenticación: Claude detecta automáticamente cuando se necesita autenticación
  2. Comenzar a aprender:
    You: "Learn my Salesforce installation"
    Claude: Automatically uses the salesforce_learn tool
    
  3. Explorar instalación:
    You: "Show me an overview of my Salesforce installation"
    Claude: Uses salesforce_installation_info for a summary
    

🔍 Consultas inteligentes con instalación aprendida

You: "Show me all projects from this year"
Claude: Automatically recognizes your "Project__c" Custom Object and creates:
SELECT Id, Name, StartDate__c, Status__c FROM Project__c WHERE CALENDAR_YEAR(CreatedDate) = 2025
You: "Are there any time tracking entries for July 2025?"
Claude: Finds your "TimeTracking__c" object and queries:
SELECT Id, Name, Month__c, Hours__c FROM TimeTracking__c WHERE Month__c = 'July 2025'

Ejemplos de consultas

-- Get all accounts in the technology industry
SELECT Id, Name, Industry, Website FROM Account WHERE Industry = 'Technology'

-- Find contacts created this week
SELECT Id, Name, Email, CreatedDate FROM Contact WHERE CreatedDate = THIS_WEEK

-- Get opportunities closing this quarter
SELECT Id, Name, Amount, CloseDate FROM Opportunity WHERE CloseDate = THIS_QUARTER

Trabajo con objetos personalizados

El servidor descubre automáticamente objetos personalizados:

// Describe a custom object
{
  "sobject": "CustomProject__c"
}

// Query custom object
{
  "query": "SELECT Id, Name, CustomField__c FROM CustomProject__c LIMIT 10"
}

// Create custom object record
{
  "sobject": "CustomProject__c",
  "data": {
    "Name": "New Project",
    "CustomField__c": "Custom Value"
  }
}

💾 Funciones de copia de seguridad y máquina del tiempo

🚀 Sistema de copia de seguridad de Salesforce

El MCP Salesforce Server ofrece un sistema de copia de seguridad profesional que puede proteger tu instalación completa de Salesforce:

¿Qué hace especial al sistema de copia de seguridad?

  • 🎯 Cobertura completa: Realiza copias de seguridad de los tres sistemas de archivos de Salesforce

    • Archivos modernos (ContentDocument/ContentVersion)
    • Adjuntos heredados (adjuntos clásicos)
    • Documentos (documentos heredados basados en carpetas)
  • 📊 Recopilación inteligente de datos:

    • Todos los objetos consultables (estándar + personalizados)
    • Hasta 20 campos por objeto para una copia de seguridad completa de datos
    • Filtrado automático de campos binarios
  • ⚡ Alto rendimiento:

    • Descargas paralelas con concurrencia configurable
    • Lógica de reintentos con retroceso exponencial
    • Procesamiento por lotes para grandes volúmenes de datos

Creación de una copia de seguridad

You: "Create a backup of my Salesforce data"
Claude: Automatically starts the salesforce_backup tool

Resultado de la copia de seguridad:

✅ Backup successfully created!
📊 Statistics:
- 7 objects backed up
- 1,247 records exported  
- 6 files downloaded
- 4.07 MB total size
- Duration: 23 seconds

📁 Location: /backups/salesforce-backup-2025-06-04T16-16-35-660Z/

Estructura de la copia de seguridad

salesforce-backup-2025-06-04T16-16-35-660Z/
├── backup-manifest.json     # Backup overview with statistics
├── metadata/
│   ├── objects-schema.json  # All object definitions
│   └── file-manifest.json   # File download protocol
├── data/                    # JSON data of all objects
│   ├── Account.json         # Account records
│   ├── Contact.json         # Contact records
│   ├── Opportunity.json     # Opportunity records
│   └── CustomObject__c.json # Custom Object data
└── files/                   # All Salesforce files
    ├── content-versions/    # Modern files (.pdf, .docx, etc.)
    ├── attachments/         # Legacy attachments
    └── documents/           # Legacy documents

⏰ Función de máquina del tiempo

La máquina del tiempo te permite viajar en el tiempo y analizar cambios en los datos:

Características principales

  • 🔍 Comparación de datos: Compara el estado actual con copias de seguridad históricas
  • 📊 Análisis de cambios: Muestra exactamente qué campos han cambiado
  • 🗑️ Registros eliminados: Encuentra registros que fueron eliminados desde la copia de seguridad
  • 📈 Análisis de tendencias: Evaluación estadística del desarrollo de los datos

Uso de la máquina del tiempo

You: "Compare the current Account data with the backup from June 4th"
Claude: Uses salesforce_time_machine for detailed analysis

Ejemplo de resultado:

⏰ Time Machine Analysis - Account Object
📅 Backup: 2025-06-04T16:16:35.660Z vs. Current

📊 Changes found:
• Modified records: 3
• New records: 2  
• Deleted records: 1

🔍 Details:
Account "Aionda GmbH" (001XX000003DHPF):
- BillingStreet: "Alte Straße 1" → "Königstraße 10a"
- BillingCity: "München" → "Stuttgart"
- LastModifiedDate: 2025-06-04 → 2025-06-04

Account "TechCorp Ltd" (001XX000003DHPG):
- Status: Active → Inactive
- LastModifiedDate: 2025-06-03 → 2025-06-04

Casos de uso prácticos

  1. 📋 Cumplimiento y auditoría: Evidencia de cambios en los datos
  2. 🔧 Análisis de errores: "¿Qué era diferente antes del problema?"
  3. 📊 Calidad de datos: Monitoreo de la integridad de los datos
  4. 🚨 Gestión de cambios: Control sobre cambios críticos
  5. 💡 Inteligencia empresarial: Análisis de tendencias a lo largo del tiempo

🎯 Flujo de trabajo recomendado para copias de seguridad

1. Initial Setup:
   You: "Learn my Salesforce installation"
   → Claude analyzes your complete org
   
2. Regular Backups:
   You: "Create a backup"
   → Claude backs up all data and files
   
3. Monitoring:
   You: "Show me all available backups"
   → Claude lists backup history
   
4. Analysis:
   You: "What has changed since the last backup?"
   → Claude uses Time Machine for comparison

💡 Consejo profesional: ¡Combina Learning + Backup + Time Machine para un control máximo de Salesforce!

🔒 Seguridad

  • Almacenamiento de tokens: Los tokens de actualización se almacenan de forma segura en cache/salesforce-tokens.json con permisos de archivo restringidos (600)
  • Sin secretos en texto plano: Los tokens de acceso se mantienen solo en memoria
  • Actualización automática: Los tokens se actualizan automáticamente antes de su expiración
  • Limpieza segura: Los tokens se eliminan de la memoria después de su uso
  • Validación de entrada: Todas las entradas se validan y sanitizan
  • Migración: Almacenamiento de tokens basado en archivos con permisos 600 para una gestión segura de credenciales

🧪 Pruebas

# Run tests
npm test

# Test authentication
npm run setup -- --test

# Validate configuration
npm run setup -- --validate

🐛 Solución de problemas

Problemas de autenticación

🎯 Autenticación automática: Claude detecta automáticamente problemas de autenticación y sugiere la herramienta salesforce_auth. ¡No se necesita solución manual de problemas!

Escenarios comunes:

  1. Primer uso: Claude sugerirá automáticamente la autenticación cuando intentes usar las herramientas de Salesforce por primera vez
  2. Expiración de tokens: Cuando los tokens expiran, Claude lo detecta y solicita reautenticación
  3. Credenciales no válidas: Mensajes de error claros te guían para corregir problemas de configuración
  4. Sesión expirada: Detección automática con avisos amigables para reautenticarse

Seguridad de tokens

🔒 Almacenamiento seguro de tokens: Los tokens de autenticación se almacenan de forma segura en el sistema de archivos local con permisos estrictos.

Características de seguridad:

  • Permisos de archivo: Los archivos de tokens se crean con permisos 0600 (legibles/escribibles solo por el propietario)
  • Ubicación: Los tokens se almacenan en cache/salesforce-tokens.json (excluidos de git)
  • Seguridad automática: Verificación de permisos y corrección automática si es necesario
  • Sin exposición en red: Los tokens nunca salen de tu máquina local
  • Seguridad basada en archivos: Almacenamiento seguro de tokens con permisos de archivo estrictos para la protección de credenciales

Verificación de seguridad:

# Check token file security
ls -la cache/salesforce-tokens.json
# Should show: -rw------- (600 permissions)

# Run security test
node test-token-security.js

Qué significa esto:

  • Otros usuarios de tu sistema no pueden leer tus tokens de Salesforce
  • Solo tu cuenta de usuario tiene acceso a los datos de autenticación
  • Previene el acceso no autorizado a tu organización de Salesforce
  • Cumple con las mejores prácticas de seguridad para el almacenamiento de credenciales

Solución rápida en Claude Desktop

Si recibes errores de autenticación, simplemente dile a Claude:

Authenticate with Salesforce

O Claude sugerirá automáticamente: Use the salesforce_auth tool to authenticate with Salesforce

✨ ¡No más configuración manual de terminal! Todo ocurre sin problemas a través de Claude Desktop.

Problemas de conexión

  1. "No se puede conectar a Salesforce": Verifica tu URL de instancia
  2. "Permisos insuficientes": Verifica los permisos de usuario en Salesforce
  3. "Errores CORS": Asegúrate de que la URL de devolución de llamada de la Connected App sea correcta

Errores comunes de SOQL

  1. Campo no encontrado: Usa nombres de API, no etiquetas de campo
  2. Objeto no encontrado: Verifica la ortografía y el nombre de API de los objetos
  3. Errores de sintaxis: Asegúrate de usar la sintaxis correcta de SOQL con comillas simples

📚 Documentación

🤝 Contribuciones

  1. Haz un fork del repositorio
  2. Crea una rama de características: git checkout -b feature-name
  3. Realiza tus cambios y prueba a fondo
  4. Envía un pull request con una descripción detallada

📄 Licencia

Licencia MIT - consulta el archivo LICENSE para más detalles.

🆘 Soporte

  • Issues: Reporta errores y solicitudes de funciones a través de GitHub Issues
  • Documentación: Consulta la carpeta docs/ para guías detalladas
  • Comunidad: Únete a las discusiones en GitHub Discussions

Hecho con ❤️ para el ecosistema MCP