naftiko: 1.0.0-alpha2 info: label: Salesforce Process Automation description: Workflow capability for Salesforce process automation combining Flow invocation, approval process management, and automation record querying. Serves admins, developers, and integration engineers managing business process automation across Salesforce organizations. tags: - Approval Process - Automation - CRM - Flow - Process Builder - Salesforce - Workflow created: '2026-05-02' modified: '2026-05-06' binds: - namespace: env keys: SALESFORCE_OAUTH2_TOKEN: SALESFORCE_OAUTH2_TOKEN SALESFORCE_INSTANCE_URL: SALESFORCE_INSTANCE_URL capability: consumes: - type: http namespace: sf-flow-automation baseUri: '{{env.SALESFORCE_INSTANCE_URL}}/services/data/v59.0' description: Salesforce Flow and Automation APIs. authentication: type: bearer token: '{{env.SALESFORCE_OAUTH2_TOKEN}}' resources: - name: flow-definitions path: /tooling/query description: Query Salesforce Flow definitions via Tooling API. operations: - name: query-flow-definitions method: GET description: Query Flow definitions using SOQL. inputParameters: - name: q in: query type: string required: true description: SOQL query for FlowDefinition objects. outputRawFormat: json outputParameters: - name: flows type: object value: $. - name: flow-version path: /tooling/sobjects/Flow/{id} description: Retrieve a specific Flow version. operations: - name: get-flow-version method: GET description: Get a Flow version record by ID. inputParameters: - name: id in: path type: string required: true description: Salesforce Flow record ID. outputRawFormat: json outputParameters: - name: flow type: object value: $. - name: flow-invocation path: /actions/custom/flow/{flowApiName} description: Invoke an autolaunched flow via REST action. operations: - name: invoke-flow method: POST description: Invoke a Salesforce autolaunched Flow with input variables. inputParameters: - name: flowApiName in: path type: string required: true description: API name of the flow to invoke. outputRawFormat: json outputParameters: - name: result type: object value: $. body: type: json data: inputs: '{{tools.inputs}}' - name: approval-processes path: /process/approvals description: List approval processes and submit approval actions. operations: - name: list-approval-processes method: GET description: Retrieve all approval process configurations. outputRawFormat: json outputParameters: - name: approvals type: object value: $. - name: submit-approval-request method: POST description: Submit, approve, or reject an approval process request. outputRawFormat: json outputParameters: - name: result type: array value: $. body: type: json data: requests: '{{tools.requests}}' - name: soql-query path: /query description: Execute SOQL queries against Salesforce objects. operations: - name: query-automation-records method: GET description: Query ProcessInstance, FlowInterview, or WorkflowRule records. inputParameters: - name: q in: query type: string required: true description: SOQL query string. outputRawFormat: json outputParameters: - name: records type: object value: $. exposes: - type: rest port: 8080 namespace: salesforce-process-automation-api description: Unified REST API for Salesforce process automation workflows. resources: - path: /v1/flows name: flows description: Salesforce Flow definitions and invocation. operations: - method: GET name: list-flows description: Query active and draft Flow definitions. call: sf-flow-automation.query-flow-definitions with: q: rest.q outputParameters: - type: object mapping: $. - path: /v1/flows/{id} name: flow-by-id operations: - method: GET name: get-flow description: Get a Flow version record by ID. call: sf-flow-automation.get-flow-version with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/flows/{flowApiName}/invoke name: flow-invocation operations: - method: POST name: invoke-flow description: Invoke an autolaunched Flow with input variables. call: sf-flow-automation.invoke-flow with: flowApiName: rest.flowApiName outputParameters: - type: object mapping: $. - path: /v1/approvals name: approvals description: Approval process management. operations: - method: GET name: list-approval-processes description: List all approval process configurations. call: sf-flow-automation.list-approval-processes outputParameters: - type: object mapping: $. - method: POST name: submit-approval description: Submit, approve, reject, or recall approval requests. call: sf-flow-automation.submit-approval-request outputParameters: - type: array mapping: $. - path: /v1/automation-records name: automation-records description: Query automation-related Salesforce records. operations: - method: GET name: query-automation-records description: Query ProcessInstance, FlowInterview, or WorkflowRule records. call: sf-flow-automation.query-automation-records with: q: rest.q outputParameters: - type: object mapping: $. - type: mcp port: 9080 namespace: salesforce-process-automation-mcp transport: http description: MCP server for AI-assisted Salesforce process automation. tools: - name: list-flows description: Query Salesforce Flow definitions. Returns active and draft flows with their API names, labels, and statuses. hints: readOnly: true idempotent: true call: sf-flow-automation.query-flow-definitions outputParameters: - type: object mapping: $. - name: get-flow-version description: Get the metadata for a specific Salesforce Flow version by record ID. hints: readOnly: true idempotent: true call: sf-flow-automation.get-flow-version with: id: tools.id outputParameters: - type: object mapping: $. - name: invoke-flow description: Invoke a Salesforce autolaunched Flow with input variables. Returns output variable values from the flow execution. hints: readOnly: false destructive: false call: sf-flow-automation.invoke-flow with: flowApiName: tools.flowApiName outputParameters: - type: object mapping: $. - name: list-approval-processes description: List all approval process definitions configured in the Salesforce org. hints: readOnly: true idempotent: true call: sf-flow-automation.list-approval-processes outputParameters: - type: object mapping: $. - name: submit-approval description: Submit a record for approval, approve or reject an approval request, or recall an in-progress approval. hints: readOnly: false destructive: false call: sf-flow-automation.submit-approval-request outputParameters: - type: array mapping: $. - name: query-automation-records description: Execute a SOQL query to retrieve ProcessInstance, FlowInterview, or WorkflowRule records from Salesforce. hints: readOnly: true idempotent: true call: sf-flow-automation.query-automation-records with: q: tools.q outputParameters: - type: object mapping: $.