naftiko: 1.0.0-alpha2 info: label: Salesforce Einstein Generative AI description: Workflow capability combining Einstein GPT and Einstein Bots for generative AI and conversational AI workflows. Covers content generation, prompt management, chatbot sessions, and AI-powered customer interactions for CRM developers and customer service teams. tags: - Chatbots - Content Generation - Conversational AI - CRM - Generative AI - GPT - Large Language Models - Salesforce Einstein created: '2026-05-02' modified: '2026-05-06' binds: - namespace: env keys: SALESFORCE_EINSTEIN_GPT_TOKEN: SALESFORCE_EINSTEIN_GPT_TOKEN SALESFORCE_BOTS_TOKEN: SALESFORCE_BOTS_TOKEN SALESFORCE_INSTANCE_URL: SALESFORCE_INSTANCE_URL capability: consumes: - type: http namespace: einstein-gpt baseUri: '{{env.SALESFORCE_INSTANCE_URL}}/services/data/v58.0' description: Salesforce Einstein GPT / Generative AI API. authentication: type: bearer token: '{{env.SALESFORCE_EINSTEIN_GPT_TOKEN}}' resources: - name: generations path: /einstein/llm/prompt/generations description: Generate content from prompt templates. operations: - name: generate-from-prompt method: POST description: Generate content using a prompt template. outputRawFormat: json outputParameters: - name: generation type: object value: $. body: type: json data: promptTemplateName: '{{tools.promptTemplateName}}' inputParams: '{{tools.inputParams}}' - name: completions path: /einstein/llm/prompt/completions description: Direct LLM prompt completions. operations: - name: complete-prompt method: POST description: Send a raw prompt to the LLM for completion. outputRawFormat: json outputParameters: - name: completion type: object value: $. body: type: json data: prompt: '{{tools.prompt}}' modelName: '{{tools.modelName}}' - name: chat path: /einstein/llm/prompt/chat description: Chat-style generation. operations: - name: chat-generation method: POST description: Generate a chat response using conversation history. outputRawFormat: json outputParameters: - name: chat type: object value: $. body: type: json data: messages: '{{tools.messages}}' modelName: '{{tools.modelName}}' - name: prompt-templates path: /einstein/llm/prompt-templates description: Manage prompt templates. operations: - name: list-prompt-templates method: GET description: List all available prompt templates. outputRawFormat: json outputParameters: - name: templates type: object value: $. - name: create-prompt-template method: POST description: Create a new prompt template. outputRawFormat: json outputParameters: - name: template type: object value: $. body: type: json data: name: '{{tools.name}}' templateContent: '{{tools.templateContent}}' - type: http namespace: einstein-bots baseUri: '{{env.SALESFORCE_INSTANCE_URL}}/services/data/v58.0/einstein/bots' description: Salesforce Einstein Bots conversational AI API. authentication: type: bearer token: '{{env.SALESFORCE_BOTS_TOKEN}}' resources: - name: bots path: /bots description: Einstein Bot definitions. operations: - name: list-bots method: GET description: List all Einstein Bots in the org. outputRawFormat: json outputParameters: - name: bots type: object value: $. - name: get-bot method: GET description: Get a bot by ID. inputParameters: - name: botId in: path type: string required: true description: Bot ID. outputRawFormat: json outputParameters: - name: bot type: object value: $. - name: sessions path: /sessions description: Bot conversation sessions. operations: - name: create-session method: POST description: Create a new conversation session with a bot. outputRawFormat: json outputParameters: - name: session type: object value: $. body: type: json data: botId: '{{tools.botId}}' externalSessionKey: '{{tools.externalSessionKey}}' - name: send-message method: POST description: Send a message to an active bot session. inputParameters: - name: sessionId in: path type: string required: true description: Session ID. outputRawFormat: json outputParameters: - name: response type: object value: $. body: type: json data: message: text: '{{tools.text}}' type: '{{tools.type}}' - name: end-session method: DELETE description: End an active bot session. inputParameters: - name: sessionId in: path type: string required: true description: Session ID. outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest port: 8081 namespace: einstein-generative-ai-api description: Unified REST API for Salesforce Einstein generative and conversational AI. resources: - path: /v1/generations name: generations description: AI content generation from prompt templates. operations: - method: POST name: generate-content description: Generate Salesforce content using an Einstein prompt template. call: einstein-gpt.generate-from-prompt outputParameters: - type: object mapping: $. - path: /v1/completions name: completions description: Direct LLM prompt completions. operations: - method: POST name: complete-prompt description: Send a raw prompt for LLM completion. call: einstein-gpt.complete-prompt outputParameters: - type: object mapping: $. - path: /v1/chat name: chat description: Chat-style AI generation. operations: - method: POST name: chat description: Generate a multi-turn chat response. call: einstein-gpt.chat-generation outputParameters: - type: object mapping: $. - path: /v1/prompt-templates name: prompt-templates description: Manage Einstein prompt templates. operations: - method: GET name: list-prompt-templates description: List available prompt templates. call: einstein-gpt.list-prompt-templates outputParameters: - type: object mapping: $. - method: POST name: create-prompt-template description: Create a new prompt template. call: einstein-gpt.create-prompt-template outputParameters: - type: object mapping: $. - path: /v1/bots name: bots description: Einstein Bot definitions. operations: - method: GET name: list-bots description: List all configured Einstein Bots. call: einstein-bots.list-bots outputParameters: - type: object mapping: $. - path: /v1/bot-sessions name: bot-sessions description: Bot conversation sessions. operations: - method: POST name: create-session description: Create a new conversation session with a bot. call: einstein-bots.create-session outputParameters: - type: object mapping: $. - type: mcp port: 9081 namespace: einstein-generative-ai-mcp transport: http description: MCP server for AI-assisted Salesforce Einstein generative AI workflows. tools: - name: generate-salesforce-content description: Generate Salesforce content (emails, summaries, case notes) using an Einstein prompt template. hints: readOnly: false destructive: false call: einstein-gpt.generate-from-prompt outputParameters: - type: object mapping: $. - name: complete-prompt description: Send a raw prompt to Einstein GPT for direct LLM completion. hints: readOnly: false destructive: false call: einstein-gpt.complete-prompt outputParameters: - type: object mapping: $. - name: chat-with-einstein-gpt description: Generate a multi-turn chat response using Einstein GPT. hints: readOnly: false destructive: false call: einstein-gpt.chat-generation outputParameters: - type: object mapping: $. - name: list-prompt-templates description: List all available Einstein prompt templates. hints: readOnly: true idempotent: true call: einstein-gpt.list-prompt-templates outputParameters: - type: object mapping: $. - name: create-prompt-template description: Create a new Einstein prompt template for content generation. hints: readOnly: false destructive: false call: einstein-gpt.create-prompt-template outputParameters: - type: object mapping: $. - name: list-einstein-bots description: List all Einstein Bots configured in the Salesforce org. hints: readOnly: true idempotent: true call: einstein-bots.list-bots outputParameters: - type: object mapping: $. - name: create-bot-conversation description: Start a new conversation session with an Einstein Bot for customer service. hints: readOnly: false destructive: false call: einstein-bots.create-session outputParameters: - type: object mapping: $. - name: send-bot-message description: Send a message to an active Einstein Bot conversation session. hints: readOnly: false destructive: false call: einstein-bots.send-message with: sessionId: tools.sessionId outputParameters: - type: object mapping: $.