Standard Chartered Capabilities

Naftiko 0.5 capability definitions for Standard Chartered - 100 capabilities showing integration workflows and service orchestrations.

Sort
Expand

Retrieves the current balance and recent transactions for a customer account from the core banking system.

naftiko: "0.5"
info:
  label: "Account Balance Inquiry"
  description: "Retrieves the current balance and recent transactions for a customer account from the core banking system."
  tags:
    - banking
    - accounts
    - core-banking
capability:
  exposes:
    - type: mcp
      namespace: accounts
      port: 8080
      tools:
        - name: get-account-balance
          description: "Look up the current balance and recent transactions for a customer account."
          inputParameters:
            - name: account_number
              in: body
              type: string
              description: "The customer account number."
          call: "core-banking.get-balance"
          with:
            account: "{{account_number}}"
  consumes:
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: balances
          path: "/accounts/{{account}}/balance"
          inputParameters:
            - name: account
              in: path
          operations:
            - name: get-balance
              method: GET

Generates a customer account statement for a specified period from the core banking system and emails it via MailChimp.

naftiko: "0.5"
info:
  label: "Account Statement Generator"
  description: "Generates a customer account statement for a specified period from the core banking system and emails it via MailChimp."
  tags:
    - banking
    - statements
    - mailchimp
capability:
  exposes:
    - type: mcp
      namespace: statements
      port: 8080
      tools:
        - name: generate-account-statement
          description: "Generate and email a customer account statement."
          inputParameters:
            - name: account_number
              in: body
              type: string
              description: "The customer account number."
            - name: start_date
              in: body
              type: string
              description: "The statement start date in YYYY-MM-DD format."
            - name: end_date
              in: body
              type: string
              description: "The statement end date in YYYY-MM-DD format."
          steps:
            - name: get-statement
              type: call
              call: "core-banking.get-statement"
              with:
                account: "{{account_number}}"
                from: "{{start_date}}"
                to: "{{end_date}}"
            - name: email-statement
              type: call
              call: "mailchimp.send-transactional"
              with:
                template_name: "account_statement"
                to_email: "{{get-statement.customer_email}}"
                merge_vars:
                  customer_name: "{{get-statement.customer_name}}"
                  period: "{{start_date}} to {{end_date}}"
                  opening_balance: "{{get-statement.opening_balance}}"
                  closing_balance: "{{get-statement.closing_balance}}"
  consumes:
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: statements
          path: "/accounts/{{account}}/statement?from={{from}}&to={{to}}"
          inputParameters:
            - name: account
              in: path
            - name: from
              in: query
            - name: to
              in: query
          operations:
            - name: get-statement
              method: GET
    - type: http
      namespace: mailchimp
      baseUri: "https://mandrillapp.com/api/1.0"
      authentication:
        type: apiKey
        key: "$secrets.mailchimp_transactional_key"
      resources:
        - name: messages
          path: "/messages/send-template"
          operations:
            - name: send-transactional
              method: POST

When an AML alert is triggered, retrieves the transaction details, pulls the customer KYC profile, creates a case in the case management system, and notifies the compliance team via Microsoft Teams.

naftiko: "0.5"
info:
  label: "AML Transaction Monitoring Alert Handler"
  description: "When an AML alert is triggered, retrieves the transaction details, pulls the customer KYC profile, creates a case in the case management system, and notifies the compliance team via Microsoft Teams."
  tags:
    - compliance
    - aml
    - risk
    - microsoft-teams
capability:
  exposes:
    - type: mcp
      namespace: aml-monitoring
      port: 8080
      tools:
        - name: handle-aml-alert
          description: "Process an AML alert by gathering transaction and customer data, creating a case, and alerting compliance."
          inputParameters:
            - name: alert_id
              in: body
              type: string
              description: "The AML monitoring alert ID."
          steps:
            - name: get-alert
              type: call
              call: "aml-api.get-alert"
              with:
                id: "{{alert_id}}"
            - name: get-kyc
              type: call
              call: "kyc-api.get-profile"
              with:
                id: "{{get-alert.customer_id}}"
            - name: create-case
              type: call
              call: "case-mgmt.create-case"
              with:
                alert_id: "{{alert_id}}"
                customer_id: "{{get-alert.customer_id}}"
                customer_risk: "{{get-kyc.risk_rating}}"
                transaction_amount: "{{get-alert.amount}}"
                description: "AML alert for {{get-kyc.customer_name}}: {{get-alert.alert_type}}. Transaction: {{get-alert.currency}} {{get-alert.amount}}."
            - name: notify-compliance
              type: call
              call: "msteams.send-channel-message"
              with:
                team_id: "compliance"
                channel_id: "aml_alerts"
                text: "AML Alert {{alert_id}}: {{get-alert.alert_type}} for {{get-kyc.customer_name}} (Risk: {{get-kyc.risk_rating}}). Case: {{create-case.case_number}}."
  consumes:
    - type: http
      namespace: aml-api
      baseUri: "https://api.sc.com/aml/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_aml_token"
      resources:
        - name: alerts
          path: "/alerts/{{id}}"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: get-alert
              method: GET
    - type: http
      namespace: kyc-api
      baseUri: "https://api.sc.com/kyc/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_kyc_token"
      resources:
        - name: profiles
          path: "/customers/{{id}}/profile"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: get-profile
              method: GET
    - type: http
      namespace: case-mgmt
      baseUri: "https://api.sc.com/case-management/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_case_mgmt_token"
      resources:
        - name: cases
          path: "/cases"
          operations:
            - name: create-case
              method: POST
    - type: http
      namespace: msteams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: channel-messages
          path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
          inputParameters:
            - name: team_id
              in: path
            - name: channel_id
              in: path
          operations:
            - name: send-channel-message
              method: POST

Orchestrates aml transaction surveillance pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Aml Transaction Surveillance Pipeline"
  description: "Orchestrates aml transaction surveillance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - aml
    - standard-chartered
    - snowflake
    - slack
    - jira
capability:
  exposes:
    - type: mcp
      namespace: aml
      port: 8080
      tools:
        - name: aml-transaction-surveillance-pipeline
          description: "Orchestrates aml transaction surveillance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "snowflake.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "slack.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "jira.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/aml"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/aml"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/aml"
          operations:
            - name: execute-3
              method: POST

Orchestrates api marketplace governance pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Api Marketplace Governance Pipeline"
  description: "Orchestrates api marketplace governance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - api
    - standard-chartered
    - standard-chartered
    - salesforce
    - servicenow
capability:
  exposes:
    - type: mcp
      namespace: api
      port: 8080
      tools:
        - name: api-marketplace-governance-pipeline
          description: "Orchestrates api marketplace governance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "standard-chartered.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "salesforce.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "servicenow.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/api"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/api"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/api"
          operations:
            - name: execute-3
              method: POST

Retrieves API traffic analytics from the Apigee API gateway for monitoring API usage patterns.

naftiko: "0.5"
info:
  label: "Apigee API Gateway Analytics"
  description: "Retrieves API traffic analytics from the Apigee API gateway for monitoring API usage patterns."
  tags:
    - api-management
    - apigee
    - analytics
capability:
  exposes:
    - type: mcp
      namespace: api-analytics
      port: 8080
      tools:
        - name: get-api-analytics
          description: "Get API traffic analytics from Apigee for a specific API proxy."
          inputParameters:
            - name: api_proxy
              in: body
              type: string
              description: "The API proxy name."
            - name: time_range
              in: body
              type: string
              description: "The time range (e.g., last_hour, last_day, last_week)."
          call: "apigee.get-stats"
          with:
            proxy: "{{api_proxy}}"
            range: "{{time_range}}"
  consumes:
    - type: http
      namespace: apigee
      baseUri: "https://apigee.googleapis.com/v1/organizations/sc-org"
      authentication:
        type: bearer
        token: "$secrets.apigee_token"
      resources:
        - name: stats
          path: "/environments/prod/stats/apiproxy?select=sum(message_count)&timeRange={{range}}&filter=(apiproxy eq '{{proxy}}')"
          inputParameters:
            - name: proxy
              in: query
            - name: range
              in: query
          operations:
            - name: get-stats
              method: GET

Triggers a risk model execution in Azure Databricks for portfolio risk analysis and stores results in SharePoint.

naftiko: "0.5"
info:
  label: "Azure Databricks Risk Model Execution"
  description: "Triggers a risk model execution in Azure Databricks for portfolio risk analysis and stores results in SharePoint."
  tags:
    - risk
    - azure-databricks
    - analytics
    - sharepoint
capability:
  exposes:
    - type: mcp
      namespace: risk-modeling
      port: 8080
      tools:
        - name: run-risk-model
          description: "Execute a risk model in Azure Databricks and store results."
          inputParameters:
            - name: model_name
              in: body
              type: string
              description: "The risk model name."
            - name: portfolio_id
              in: body
              type: string
              description: "The portfolio identifier."
            - name: run_date
              in: body
              type: string
              description: "The run date in YYYY-MM-DD format."
          steps:
            - name: run-model
              type: call
              call: "databricks.run-job"
              with:
                job_name: "{{model_name}}"
                parameters:
                  portfolio: "{{portfolio_id}}"
                  date: "{{run_date}}"
            - name: store-results
              type: call
              call: "sharepoint.update-file"
              with:
                site_id: "risk_models"
                file_path: "Results/{{model_name}}_{{portfolio_id}}_{{run_date}}.json"
                content: "{{run-model.results}}"
  consumes:
    - type: http
      namespace: databricks
      baseUri: "https://adb-sc.azuredatabricks.net/api/2.1"
      authentication:
        type: bearer
        token: "$secrets.databricks_token"
      resources:
        - name: jobs
          path: "/jobs/run-now"
          operations:
            - name: run-job
              method: POST
    - type: http
      namespace: sharepoint
      baseUri: "https://graph.microsoft.com/v1.0/sites"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: files
          path: "/{{site_id}}/drive/root:/{{file_path}}:/content"
          inputParameters:
            - name: site_id
              in: path
            - name: file_path
              in: path
          operations:
            - name: update-file
              method: PUT

Checks the latest pipeline build status in Azure DevOps for a specified project.

naftiko: "0.5"
info:
  label: "Azure DevOps Pipeline Status"
  description: "Checks the latest pipeline build status in Azure DevOps for a specified project."
  tags:
    - devops
    - azure-devops
    - ci-cd
capability:
  exposes:
    - type: mcp
      namespace: devops
      port: 8080
      tools:
        - name: get-pipeline-status
          description: "Get the latest build status for an Azure DevOps pipeline."
          inputParameters:
            - name: project_name
              in: body
              type: string
              description: "The Azure DevOps project name."
            - name: pipeline_id
              in: body
              type: string
              description: "The pipeline definition ID."
          call: "azdo.get-latest-build"
          with:
            project: "{{project_name}}"
            definition_id: "{{pipeline_id}}"
  consumes:
    - type: http
      namespace: azdo
      baseUri: "https://dev.azure.com/standardchartered"
      authentication:
        type: basic
        username: ""
        password: "$secrets.azdo_pat"
      resources:
        - name: builds
          path: "/{{project}}/_apis/build/builds?definitions={{definition_id}}&$top=1&api-version=7.0"
          inputParameters:
            - name: project
              in: path
            - name: definition_id
              in: query
          operations:
            - name: get-latest-build
              method: GET

Retrieves a secret from Azure Key Vault for secure configuration management.

naftiko: "0.5"
info:
  label: "Azure Key Vault Secret Retrieval"
  description: "Retrieves a secret from Azure Key Vault for secure configuration management."
  tags:
    - security
    - azure-key-vault
    - secrets
capability:
  exposes:
    - type: mcp
      namespace: secrets-mgmt
      port: 8080
      tools:
        - name: get-secret
          description: "Retrieve a secret value from Azure Key Vault."
          inputParameters:
            - name: secret_name
              in: body
              type: string
              description: "The secret name."
          call: "keyvault.get-secret"
          with:
            name: "{{secret_name}}"
  consumes:
    - type: http
      namespace: keyvault
      baseUri: "https://sc-vault.vault.azure.net"
      authentication:
        type: bearer
        token: "$secrets.azure_keyvault_token"
      resources:
        - name: secrets
          path: "/secrets/{{name}}?api-version=7.4"
          inputParameters:
            - name: name
              in: path
          operations:
            - name: get-secret
              method: GET

Retrieves real-time market data from Bloomberg Enterprise Data for a specified financial instrument.

naftiko: "0.5"
info:
  label: "Bloomberg Market Data Feed"
  description: "Retrieves real-time market data from Bloomberg Enterprise Data for a specified financial instrument."
  tags:
    - trading
    - bloomberg-enterprise-data
    - market-data
capability:
  exposes:
    - type: mcp
      namespace: market-data
      port: 8080
      tools:
        - name: get-market-data
          description: "Get real-time market data for a financial instrument from Bloomberg."
          inputParameters:
            - name: ticker
              in: body
              type: string
              description: "The Bloomberg ticker symbol."
          call: "bloomberg.get-security"
          with:
            ticker: "{{ticker}}"
  consumes:
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/eap/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: securities
          path: "/data/securities/{{ticker}}"
          inputParameters:
            - name: ticker
              in: path
          operations:
            - name: get-security
              method: GET

Orchestrates cash management optimization pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Cash Management Optimization Pipeline"
  description: "Orchestrates cash management optimization pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - cash
    - standard-chartered
    - splunk
    - bloomberg
    - confluence
capability:
  exposes:
    - type: mcp
      namespace: cash
      port: 8080
      tools:
        - name: cash-management-optimization-pipeline
          description: "Orchestrates cash management optimization pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "splunk.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "bloomberg.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "confluence.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/cash"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/cash"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/cash"
          operations:
            - name: execute-3
              method: POST

Retrieves cash management sweep status data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Cash Management Sweep Status"
  description: "Retrieves cash management sweep status data from the Standard Chartered international banking systems."
  tags:
    - cash
    - standard-chartered
    - status
capability:
  exposes:
    - type: mcp
      namespace: cash
      port: 8080
      tools:
        - name: cash-management-sweep-status
          description: "Retrieves cash management sweep status data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.cash-management-sweep-status"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/cash/management/sweep/status/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: cash-management-sweep-status
              method: GET

Orchestrates client experience optimization pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Client Experience Optimization Pipeline"
  description: "Orchestrates client experience optimization pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - client
    - standard-chartered
    - slack
    - jira
    - teams
capability:
  exposes:
    - type: mcp
      namespace: client
      port: 8080
      tools:
        - name: client-experience-optimization-pipeline
          description: "Orchestrates client experience optimization pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "slack.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "jira.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "teams.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/client"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/client"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/client"
          operations:
            - name: execute-3
              method: POST

Orchestrates client relationship review pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Client Relationship Review Pipeline"
  description: "Orchestrates client relationship review pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - client
    - standard-chartered
    - servicenow
    - snowflake
    - slack
capability:
  exposes:
    - type: mcp
      namespace: client
      port: 8080
      tools:
        - name: client-relationship-review-pipeline
          description: "Orchestrates client relationship review pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "servicenow.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "snowflake.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "slack.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/client"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/client"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/client"
          operations:
            - name: execute-3
              method: POST

Orchestrates client tax reporting pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Client Tax Reporting Pipeline"
  description: "Orchestrates client tax reporting pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - client
    - standard-chartered
    - confluence
    - standard-chartered
    - salesforce
capability:
  exposes:
    - type: mcp
      namespace: client
      port: 8080
      tools:
        - name: client-tax-reporting-pipeline
          description: "Orchestrates client tax reporting pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "confluence.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "standard-chartered.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "salesforce.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/client"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/client"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/client"
          operations:
            - name: execute-3
              method: POST

Searches the Confluence policy knowledge base for compliance and risk management documentation.

naftiko: "0.5"
info:
  label: "Confluence Policy Document Search"
  description: "Searches the Confluence policy knowledge base for compliance and risk management documentation."
  tags:
    - compliance
    - confluence
    - knowledge-management
capability:
  exposes:
    - type: mcp
      namespace: policy-docs
      port: 8080
      tools:
        - name: search-policy-documents
          description: "Search Confluence for policy and compliance documents."
          inputParameters:
            - name: query
              in: body
              type: string
              description: "The search query."
          call: "confluence.search"
          with:
            cql: "space=POLICIES AND text~\"{{query}}\""
  consumes:
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: basic
        username: "$secrets.confluence_user"
        password: "$secrets.confluence_api_token"
      resources:
        - name: search
          path: "/search?cql={{cql}}"
          inputParameters:
            - name: cql
              in: query
          operations:
            - name: search
              method: GET

Retrieves corporate card program summary data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Corporate Card Program Summary"
  description: "Retrieves corporate card program summary data from the Standard Chartered international banking systems."
  tags:
    - corporate
    - standard-chartered
    - summary
capability:
  exposes:
    - type: mcp
      namespace: corporate
      port: 8080
      tools:
        - name: corporate-card-program-summary
          description: "Retrieves corporate card program summary data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.corporate-card-program-summary"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/corporate/card/program/summary/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: corporate-card-program-summary
              method: GET

Orchestrates corporate card reconciliation pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Corporate Card Reconciliation Pipeline"
  description: "Orchestrates corporate card reconciliation pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - corporate
    - standard-chartered
    - jira
    - teams
    - splunk
capability:
  exposes:
    - type: mcp
      namespace: corporate
      port: 8080
      tools:
        - name: corporate-card-reconciliation-pipeline
          description: "Orchestrates corporate card reconciliation pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "jira.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "teams.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "splunk.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/corporate"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/corporate"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/corporate"
          operations:
            - name: execute-3
              method: POST

Orchestrates corporate client onboarding pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Corporate Client Onboarding Pipeline"
  description: "Orchestrates corporate client onboarding pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - corporate
    - standard-chartered
    - standard-chartered
    - salesforce
    - servicenow
capability:
  exposes:
    - type: mcp
      namespace: corporate
      port: 8080
      tools:
        - name: corporate-client-onboarding-pipeline
          description: "Orchestrates corporate client onboarding pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "standard-chartered.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "salesforce.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "servicenow.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/corporate"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/corporate"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/corporate"
          operations:
            - name: execute-3
              method: POST

Orchestrates corporate lending origination pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Corporate Lending Origination Pipeline"
  description: "Orchestrates corporate lending origination pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - corporate
    - standard-chartered
    - jira
    - teams
    - splunk
capability:
  exposes:
    - type: mcp
      namespace: corporate
      port: 8080
      tools:
        - name: corporate-lending-origination-pipeline
          description: "Orchestrates corporate lending origination pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "jira.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "teams.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "splunk.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/corporate"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/corporate"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/corporate"
          operations:
            - name: execute-3
              method: POST

Retrieves corporate loan facility lookup data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Corporate Loan Facility Lookup"
  description: "Retrieves corporate loan facility lookup data from the Standard Chartered international banking systems."
  tags:
    - corporate
    - standard-chartered
    - lookup
capability:
  exposes:
    - type: mcp
      namespace: corporate
      port: 8080
      tools:
        - name: corporate-loan-facility-lookup
          description: "Retrieves corporate loan facility lookup data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.corporate-loan-facility-lookup"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/corporate/loan/facility/lookup/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: corporate-loan-facility-lookup
              method: GET

Processes a corporate loan application by validating credit risk, performing sanctions screening, creating the facility in the core banking system, and logging the application in Salesforce.

naftiko: "0.5"
info:
  label: "Corporate Loan Origination Orchestrator"
  description: "Processes a corporate loan application by validating credit risk, performing sanctions screening, creating the facility in the core banking system, and logging the application in Salesforce."
  tags:
    - banking
    - lending
    - risk
    - salesforce
    - compliance
capability:
  exposes:
    - type: mcp
      namespace: loan-origination
      port: 8080
      tools:
        - name: process-loan-application
          description: "Process a corporate loan application through validation, screening, and facility creation."
          inputParameters:
            - name: customer_id
              in: body
              type: string
              description: "The corporate customer ID."
            - name: facility_amount
              in: body
              type: string
              description: "The requested facility amount."
            - name: currency
              in: body
              type: string
              description: "The currency code."
            - name: tenor_months
              in: body
              type: integer
              description: "The facility tenor in months."
          steps:
            - name: get-credit-risk
              type: call
              call: "risk-api.get-credit-score"
              with:
                id: "{{customer_id}}"
            - name: sanctions-check
              type: call
              call: "sanctions-api.screen"
              with:
                name: "{{get-credit-risk.customer_name}}"
                type: "organization"
            - name: create-facility
              type: call
              call: "core-banking.create-facility"
              with:
                customer_id: "{{customer_id}}"
                amount: "{{facility_amount}}"
                currency: "{{currency}}"
                tenor: "{{tenor_months}}"
                risk_rating: "{{get-credit-risk.rating}}"
            - name: log-application
              type: call
              call: "salesforce.create-opportunity"
              with:
                name: "Loan: {{get-credit-risk.customer_name}} - {{currency}} {{facility_amount}}"
                amount: "{{facility_amount}}"
                stage: "Application"
                facility_id: "{{create-facility.facility_id}}"
  consumes:
    - type: http
      namespace: risk-api
      baseUri: "https://api.sc.com/risk/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_risk_token"
      resources:
        - name: credit-scores
          path: "/customers/{{id}}/credit-score"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: get-credit-score
              method: GET
    - type: http
      namespace: sanctions-api
      baseUri: "https://api.sc.com/compliance/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_compliance_token"
      resources:
        - name: screening
          path: "/sanctions/screen"
          operations:
            - name: screen
              method: POST
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: facilities
          path: "/facilities"
          operations:
            - name: create-facility
              method: POST
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_token"
      resources:
        - name: opportunities
          path: "/sobjects/Opportunity"
          operations:
            - name: create-opportunity
              method: POST

Searches the correspondent banking directory for a bank by SWIFT BIC code or name.

naftiko: "0.5"
info:
  label: "Correspondent Bank Directory Lookup"
  description: "Searches the correspondent banking directory for a bank by SWIFT BIC code or name."
  tags:
    - payments
    - correspondent-banking
    - directory
capability:
  exposes:
    - type: mcp
      namespace: correspondent-banks
      port: 8080
      tools:
        - name: lookup-correspondent-bank
          description: "Search the correspondent banking directory by BIC or bank name."
          inputParameters:
            - name: search_term
              in: body
              type: string
              description: "The SWIFT BIC or bank name to search."
          call: "payments-api.search-correspondents"
          with:
            query: "{{search_term}}"
  consumes:
    - type: http
      namespace: payments-api
      baseUri: "https://api.sc.com/payments/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_payments_token"
      resources:
        - name: correspondents
          path: "/correspondents/search?q={{query}}"
          inputParameters:
            - name: query
              in: query
          operations:
            - name: search-correspondents
              method: GET

Retrieves correspondent banking fee lookup data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Correspondent Banking Fee Lookup"
  description: "Retrieves correspondent banking fee lookup data from the Standard Chartered international banking systems."
  tags:
    - correspondent
    - standard-chartered
    - lookup
capability:
  exposes:
    - type: mcp
      namespace: correspondent
      port: 8080
      tools:
        - name: correspondent-banking-fee-lookup
          description: "Retrieves correspondent banking fee lookup data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.correspondent-banking-fee-lookup"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/correspondent/banking/fee/lookup/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: correspondent-banking-fee-lookup
              method: GET

Orchestrates correspondent banking review pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Correspondent Banking Review Pipeline"
  description: "Orchestrates correspondent banking review pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - correspondent
    - standard-chartered
    - teams
    - splunk
    - bloomberg
capability:
  exposes:
    - type: mcp
      namespace: correspondent
      port: 8080
      tools:
        - name: correspondent-banking-review-pipeline
          description: "Orchestrates correspondent banking review pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "teams.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "splunk.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "bloomberg.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/correspondent"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/correspondent"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/correspondent"
          operations:
            - name: execute-3
              method: POST

Orchestrates credit portfolio monitoring pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Credit Portfolio Monitoring Pipeline"
  description: "Orchestrates credit portfolio monitoring pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - credit
    - standard-chartered
    - bloomberg
    - confluence
    - standard-chartered
capability:
  exposes:
    - type: mcp
      namespace: credit
      port: 8080
      tools:
        - name: credit-portfolio-monitoring-pipeline
          description: "Orchestrates credit portfolio monitoring pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "bloomberg.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "confluence.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "standard-chartered.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/credit"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/credit"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/credit"
          operations:
            - name: execute-3
              method: POST

Retrieves the internal credit risk score and rating for a corporate or retail customer from the risk management system.

naftiko: "0.5"
info:
  label: "Credit Risk Score Lookup"
  description: "Retrieves the internal credit risk score and rating for a corporate or retail customer from the risk management system."
  tags:
    - risk
    - credit
    - banking
capability:
  exposes:
    - type: mcp
      namespace: credit-risk
      port: 8080
      tools:
        - name: get-credit-risk-score
          description: "Look up a customer's credit risk score and internal rating."
          inputParameters:
            - name: customer_id
              in: body
              type: string
              description: "The customer identifier."
          call: "risk-api.get-credit-score"
          with:
            id: "{{customer_id}}"
  consumes:
    - type: http
      namespace: risk-api
      baseUri: "https://api.sc.com/risk/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_risk_token"
      resources:
        - name: credit-scores
          path: "/customers/{{id}}/credit-score"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: get-credit-score
              method: GET

Orchestrates cross border payment pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Cross Border Payment Pipeline"
  description: "Orchestrates cross border payment pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - cross
    - standard-chartered
    - salesforce
    - servicenow
    - snowflake
capability:
  exposes:
    - type: mcp
      namespace: cross
      port: 8080
      tools:
        - name: cross-border-payment-pipeline
          description: "Orchestrates cross border payment pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "salesforce.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "servicenow.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "snowflake.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/cross"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/cross"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/cross"
          operations:
            - name: execute-3
              method: POST

Orchestrates customer complaint management pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Customer Complaint Management Pipeline"
  description: "Orchestrates customer complaint management pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - customer
    - standard-chartered
    - bloomberg
    - confluence
    - standard-chartered
capability:
  exposes:
    - type: mcp
      namespace: customer
      port: 8080
      tools:
        - name: customer-complaint-management-pipeline
          description: "Orchestrates customer complaint management pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "bloomberg.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "confluence.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "standard-chartered.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/customer"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/customer"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/customer"
          operations:
            - name: execute-3
              method: POST

When a customer complaint is received in Salesforce, creates a ServiceNow case, checks customer segment from the CRM, and notifies the branch manager via Microsoft Teams.

naftiko: "0.5"
info:
  label: "Customer Complaint Orchestrator"
  description: "When a customer complaint is received in Salesforce, creates a ServiceNow case, checks customer segment from the CRM, and notifies the branch manager via Microsoft Teams."
  tags:
    - customer-service
    - salesforce
    - servicenow
    - microsoft-teams
capability:
  exposes:
    - type: mcp
      namespace: complaints
      port: 8080
      tools:
        - name: process-complaint
          description: "Process a customer complaint from intake through case creation and manager notification."
          inputParameters:
            - name: case_id
              in: body
              type: string
              description: "The Salesforce case ID."
          steps:
            - name: get-case
              type: call
              call: "salesforce.get-case"
              with:
                case_id: "{{case_id}}"
            - name: get-customer
              type: call
              call: "core-banking.get-customer"
              with:
                customer_id: "{{get-case.customer_id}}"
            - name: create-ticket
              type: call
              call: "servicenow.create-incident"
              with:
                short_description: "Customer complaint: {{get-case.subject}}"
                category: "customer_complaint"
                priority: "{{get-customer.segment_priority}}"
                description: "Complaint from {{get-customer.customer_name}} (Segment: {{get-customer.segment}}). {{get-case.description}}"
            - name: notify-manager
              type: call
              call: "msteams.send-message"
              with:
                recipient_upn: "{{get-customer.relationship_manager_email}}"
                text: "Customer complaint from {{get-customer.customer_name}} ({{get-customer.segment}}). Case: {{case_id}}, Incident: {{create-ticket.number}}."
  consumes:
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_token"
      resources:
        - name: cases
          path: "/sobjects/Case/{{case_id}}"
          inputParameters:
            - name: case_id
              in: path
          operations:
            - name: get-case
              method: GET
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: customers
          path: "/customers/{{customer_id}}"
          inputParameters:
            - name: customer_id
              in: path
          operations:
            - name: get-customer
              method: GET
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: basic
        username: "$secrets.servicenow_user"
        password: "$secrets.servicenow_password"
      resources:
        - name: incidents
          path: "/table/incident"
          operations:
            - name: create-incident
              method: POST
    - type: http
      namespace: msteams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: messages
          path: "/users/{{recipient_upn}}/sendMail"
          inputParameters:
            - name: recipient_upn
              in: path
          operations:
            - name: send-message
              method: POST

Orchestrates customer due diligence pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Customer Due Diligence Pipeline"
  description: "Orchestrates customer due diligence pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - customer
    - standard-chartered
    - servicenow
    - snowflake
    - slack
capability:
  exposes:
    - type: mcp
      namespace: customer
      port: 8080
      tools:
        - name: customer-due-diligence-pipeline
          description: "Orchestrates customer due diligence pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "servicenow.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "snowflake.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "slack.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/customer"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/customer"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/customer"
          operations:
            - name: execute-3
              method: POST

Retrieves a customer's Know Your Customer profile from the KYC system, returning identity verification status, risk rating, and document details.

naftiko: "0.5"
info:
  label: "Customer KYC Profile Lookup"
  description: "Retrieves a customer's Know Your Customer profile from the KYC system, returning identity verification status, risk rating, and document details."
  tags:
    - compliance
    - kyc
    - customer
capability:
  exposes:
    - type: mcp
      namespace: kyc
      port: 8080
      tools:
        - name: get-kyc-profile
          description: "Look up a customer's KYC profile by customer ID."
          inputParameters:
            - name: customer_id
              in: body
              type: string
              description: "The customer identifier."
          call: "kyc-api.get-profile"
          with:
            id: "{{customer_id}}"
  consumes:
    - type: http
      namespace: kyc-api
      baseUri: "https://api.sc.com/kyc/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_kyc_token"
      resources:
        - name: profiles
          path: "/customers/{{id}}/profile"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: get-profile
              method: GET

Orchestrates cybersecurity threat response pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Cybersecurity Threat Response Pipeline"
  description: "Orchestrates cybersecurity threat response pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - cybersecurity
    - standard-chartered
    - salesforce
    - servicenow
    - snowflake
capability:
  exposes:
    - type: mcp
      namespace: cybersecurity
      port: 8080
      tools:
        - name: cybersecurity-threat-response-pipeline
          description: "Orchestrates cybersecurity threat response pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "salesforce.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "servicenow.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "snowflake.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/cybersecurity"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/cybersecurity"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/cybersecurity"
          operations:
            - name: execute-3
              method: POST

Generates the daily profit and loss report by pulling positions from Murex, FX rates from treasury, and posting the consolidated report to the finance Microsoft Teams channel.

naftiko: "0.5"
info:
  label: "Daily P&L Report Orchestrator"
  description: "Generates the daily profit and loss report by pulling positions from Murex, FX rates from treasury, and posting the consolidated report to the finance Microsoft Teams channel."
  tags:
    - finance
    - trading
    - murex
    - microsoft-teams
capability:
  exposes:
    - type: mcp
      namespace: daily-pnl
      port: 8080
      tools:
        - name: generate-daily-pnl
          description: "Generate and distribute the daily P&L report from Murex positions and treasury rates."
          inputParameters:
            - name: report_date
              in: body
              type: string
              description: "The report date in YYYY-MM-DD format."
            - name: desk
              in: body
              type: string
              description: "The trading desk identifier."
          steps:
            - name: get-positions
              type: call
              call: "murex.get-positions"
              with:
                desk: "{{desk}}"
                date: "{{report_date}}"
            - name: get-rates
              type: call
              call: "treasury-api.get-closing-rates"
              with:
                date: "{{report_date}}"
            - name: post-report
              type: call
              call: "msteams.send-channel-message"
              with:
                team_id: "finance"
                channel_id: "daily_pnl"
                text: "P&L for {{desk}} on {{report_date}}: Total PnL: {{get-positions.total_pnl}}. Positions: {{get-positions.position_count}}."
  consumes:
    - type: http
      namespace: murex
      baseUri: "https://murex.sc.com/api/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_murex_token"
      resources:
        - name: positions
          path: "/positions?desk={{desk}}&date={{date}}"
          inputParameters:
            - name: desk
              in: query
            - name: date
              in: query
          operations:
            - name: get-positions
              method: GET
    - type: http
      namespace: treasury-api
      baseUri: "https://api.sc.com/treasury/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_treasury_token"
      resources:
        - name: closing-rates
          path: "/fx/closing-rates?date={{date}}"
          inputParameters:
            - name: date
              in: query
          operations:
            - name: get-closing-rates
              method: GET
    - type: http
      namespace: msteams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: channel-messages
          path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
          inputParameters:
            - name: team_id
              in: path
            - name: channel_id
              in: path
          operations:
            - name: send-channel-message
              method: POST

Orchestrates data quality governance pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Data Quality Governance Pipeline"
  description: "Orchestrates data quality governance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - data
    - standard-chartered
    - snowflake
    - slack
    - jira
capability:
  exposes:
    - type: mcp
      namespace: data
      port: 8080
      tools:
        - name: data-quality-governance-pipeline
          description: "Orchestrates data quality governance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "snowflake.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "slack.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "jira.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/data"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/data"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/data"
          operations:
            - name: execute-3
              method: POST

Retrieves service health and alert status from Datadog for Standard Chartered banking platform services.

naftiko: "0.5"
info:
  label: "Datadog Service Health Monitor"
  description: "Retrieves service health and alert status from Datadog for Standard Chartered banking platform services."
  tags:
    - monitoring
    - datadog
    - infrastructure
capability:
  exposes:
    - type: mcp
      namespace: service-health
      port: 8080
      tools:
        - name: get-service-health
          description: "Get health status and active alerts for a banking platform service in Datadog."
          inputParameters:
            - name: service_name
              in: body
              type: string
              description: "The service name."
          call: "datadog.get-service-status"
          with:
            service: "{{service_name}}"
  consumes:
    - type: http
      namespace: datadog
      baseUri: "https://api.datadoghq.com/api/v1"
      authentication:
        type: apiKey
        key: "$secrets.datadog_api_key"
      inputParameters:
        - name: DD-APPLICATION-KEY
          in: header
          value: "$secrets.datadog_app_key"
      resources:
        - name: services
          path: "/service_summary?service={{service}}"
          inputParameters:
            - name: service
              in: query
          operations:
            - name: get-service-status
              method: GET

Retrieves digital banking channel analytics data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Digital Banking Channel Analytics"
  description: "Retrieves digital banking channel analytics data from the Standard Chartered international banking systems."
  tags:
    - digital
    - standard-chartered
    - analytics
capability:
  exposes:
    - type: mcp
      namespace: digital
      port: 8080
      tools:
        - name: digital-banking-channel-analytics
          description: "Retrieves digital banking channel analytics data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.digital-banking-channel-analytics"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/digital/banking/channel/analytics/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: digital-banking-channel-analytics
              method: GET

Orchestrates digital banking migration pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Digital Banking Migration Pipeline"
  description: "Orchestrates digital banking migration pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - digital
    - standard-chartered
    - slack
    - jira
    - teams
capability:
  exposes:
    - type: mcp
      namespace: digital
      port: 8080
      tools:
        - name: digital-banking-migration-pipeline
          description: "Orchestrates digital banking migration pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "slack.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "jira.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "teams.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/digital"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/digital"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/digital"
          operations:
            - name: execute-3
              method: POST

Orchestrates digital channel enhancement pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Digital Channel Enhancement Pipeline"
  description: "Orchestrates digital channel enhancement pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - digital
    - standard-chartered
    - splunk
    - bloomberg
    - confluence
capability:
  exposes:
    - type: mcp
      namespace: digital
      port: 8080
      tools:
        - name: digital-channel-enhancement-pipeline
          description: "Orchestrates digital channel enhancement pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "splunk.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "bloomberg.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "confluence.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/digital"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/digital"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/digital"
          operations:
            - name: execute-3
              method: POST

Queries Dynatrace for active performance problems on Standard Chartered banking applications.

naftiko: "0.5"
info:
  label: "Dynatrace Application Performance"
  description: "Queries Dynatrace for active performance problems on Standard Chartered banking applications."
  tags:
    - monitoring
    - dynatrace
    - performance
capability:
  exposes:
    - type: mcp
      namespace: app-monitoring
      port: 8080
      tools:
        - name: get-app-problems
          description: "Get active Dynatrace problems for banking applications."
          inputParameters:
            - name: severity
              in: body
              type: string
              description: "Minimum severity level."
          call: "dynatrace.get-problems"
          with:
            severity: "{{severity}}"
  consumes:
    - type: http
      namespace: dynatrace
      baseUri: "https://sc.live.dynatrace.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.dynatrace_token"
      resources:
        - name: problems
          path: "/problems?problemSelector=status(\"OPEN\")&severityLevel={{severity}}"
          inputParameters:
            - name: severity
              in: query
          operations:
            - name: get-problems
              method: GET

On new hire creation in Workday, opens a ServiceNow onboarding ticket, provisions access via Azure Active Directory, and sends a Microsoft Teams welcome message.

naftiko: "0.5"
info:
  label: "Employee Onboarding Orchestrator"
  description: "On new hire creation in Workday, opens a ServiceNow onboarding ticket, provisions access via Azure Active Directory, and sends a Microsoft Teams welcome message."
  tags:
    - hr
    - onboarding
    - workday
    - servicenow
    - azure-active-directory
    - microsoft-teams
capability:
  exposes:
    - type: mcp
      namespace: hr-onboarding
      port: 8080
      tools:
        - name: trigger-onboarding
          description: "Orchestrate the full onboarding sequence for a new Standard Chartered employee."
          inputParameters:
            - name: employee_id
              in: body
              type: string
              description: "The Workday employee ID."
            - name: start_date
              in: body
              type: string
              description: "The start date in YYYY-MM-DD format."
            - name: department
              in: body
              type: string
              description: "The department the new hire is joining."
          steps:
            - name: get-employee
              type: call
              call: "workday.get-worker"
              with:
                worker_id: "{{employee_id}}"
            - name: open-ticket
              type: call
              call: "servicenow.create-incident"
              with:
                short_description: "New hire onboarding: {{get-employee.full_name}}"
                category: "hr_onboarding"
                assigned_group: "IT_Onboarding"
            - name: provision-ad
              type: call
              call: "azure-ad.create-user"
              with:
                display_name: "{{get-employee.full_name}}"
                mail: "{{get-employee.work_email}}"
                department: "{{department}}"
            - name: send-welcome
              type: call
              call: "msteams.send-message"
              with:
                recipient_upn: "{{get-employee.work_email}}"
                text: "Welcome to Standard Chartered, {{get-employee.first_name}}! Your onboarding ticket is {{open-ticket.number}}."
  consumes:
    - type: http
      namespace: workday
      baseUri: "https://wd2-impl-services1.workday.com/ccx/api/v1"
      authentication:
        type: bearer
        token: "$secrets.workday_token"
      resources:
        - name: workers
          path: "/workers/{{worker_id}}"
          inputParameters:
            - name: worker_id
              in: path
          operations:
            - name: get-worker
              method: GET
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: basic
        username: "$secrets.servicenow_user"
        password: "$secrets.servicenow_password"
      resources:
        - name: incidents
          path: "/table/incident"
          operations:
            - name: create-incident
              method: POST
    - type: http
      namespace: azure-ad
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: users
          path: "/users"
          operations:
            - name: create-user
              method: POST
    - type: http
      namespace: msteams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: messages
          path: "/users/{{recipient_upn}}/sendMail"
          inputParameters:
            - name: recipient_upn
              in: path
          operations:
            - name: send-message
              method: POST

When a fraud detection alert fires, retrieves transaction details, freezes the account in the core banking system, creates a fraud case, and notifies the fraud team via Microsoft Teams.

naftiko: "0.5"
info:
  label: "Fraud Detection Alert Orchestrator"
  description: "When a fraud detection alert fires, retrieves transaction details, freezes the account in the core banking system, creates a fraud case, and notifies the fraud team via Microsoft Teams."
  tags:
    - fraud
    - risk
    - banking
    - microsoft-teams
capability:
  exposes:
    - type: mcp
      namespace: fraud-detection
      port: 8080
      tools:
        - name: handle-fraud-alert
          description: "Process a fraud alert by freezing the account, creating a case, and alerting the fraud team."
          inputParameters:
            - name: alert_id
              in: body
              type: string
              description: "The fraud detection alert ID."
          steps:
            - name: get-alert
              type: call
              call: "fraud-api.get-alert"
              with:
                id: "{{alert_id}}"
            - name: freeze-account
              type: call
              call: "core-banking.freeze-account"
              with:
                account: "{{get-alert.account_number}}"
                reason: "Fraud alert: {{get-alert.alert_type}}"
            - name: create-case
              type: call
              call: "case-mgmt.create-case"
              with:
                alert_id: "{{alert_id}}"
                account: "{{get-alert.account_number}}"
                type: "fraud"
                description: "Fraud alert: {{get-alert.alert_type}}. Transaction: {{get-alert.currency}} {{get-alert.amount}}. Account frozen."
            - name: notify-fraud-team
              type: call
              call: "msteams.send-channel-message"
              with:
                team_id: "fraud_operations"
                channel_id: "alerts"
                text: "FRAUD ALERT {{alert_id}}: {{get-alert.alert_type}} on account {{get-alert.account_number}}. Amount: {{get-alert.currency}} {{get-alert.amount}}. Account frozen. Case: {{create-case.case_number}}."
  consumes:
    - type: http
      namespace: fraud-api
      baseUri: "https://api.sc.com/fraud/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_fraud_token"
      resources:
        - name: alerts
          path: "/alerts/{{id}}"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: get-alert
              method: GET
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: accounts
          path: "/accounts/{{account}}/freeze"
          inputParameters:
            - name: account
              in: path
          operations:
            - name: freeze-account
              method: POST
    - type: http
      namespace: case-mgmt
      baseUri: "https://api.sc.com/case-management/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_case_mgmt_token"
      resources:
        - name: cases
          path: "/cases"
          operations:
            - name: create-case
              method: POST
    - type: http
      namespace: msteams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: channel-messages
          path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
          inputParameters:
            - name: team_id
              in: path
            - name: channel_id
              in: path
          operations:
            - name: send-channel-message
              method: POST

Retrieves fx forward contract status data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Fx Forward Contract Status"
  description: "Retrieves fx forward contract status data from the Standard Chartered international banking systems."
  tags:
    - fx
    - standard-chartered
    - status
capability:
  exposes:
    - type: mcp
      namespace: fx
      port: 8080
      tools:
        - name: fx-forward-contract-status
          description: "Retrieves fx forward contract status data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.fx-forward-contract-status"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/fx/forward/contract/status/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: fx-forward-contract-status
              method: GET

Retrieves current foreign exchange rates for a currency pair from the treasury system.

naftiko: "0.5"
info:
  label: "FX Rate Lookup"
  description: "Retrieves current foreign exchange rates for a currency pair from the treasury system."
  tags:
    - treasury
    - forex
    - rates
capability:
  exposes:
    - type: mcp
      namespace: fx-rates
      port: 8080
      tools:
        - name: get-fx-rate
          description: "Get the current foreign exchange rate for a currency pair."
          inputParameters:
            - name: base_currency
              in: body
              type: string
              description: "The base currency code (e.g., USD)."
            - name: quote_currency
              in: body
              type: string
              description: "The quote currency code (e.g., SGD)."
          call: "treasury-api.get-rate"
          with:
            base: "{{base_currency}}"
            quote: "{{quote_currency}}"
  consumes:
    - type: http
      namespace: treasury-api
      baseUri: "https://api.sc.com/treasury/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_treasury_token"
      resources:
        - name: rates
          path: "/fx/rates?base={{base}}&quote={{quote}}"
          inputParameters:
            - name: base
              in: query
            - name: quote
              in: query
          operations:
            - name: get-rate
              method: GET

Orchestrates fx trading risk monitoring pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Fx Trading Risk Monitoring Pipeline"
  description: "Orchestrates fx trading risk monitoring pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - fx
    - standard-chartered
    - slack
    - jira
    - teams
capability:
  exposes:
    - type: mcp
      namespace: fx
      port: 8080
      tools:
        - name: fx-trading-risk-monitoring-pipeline
          description: "Orchestrates fx trading risk monitoring pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "slack.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "jira.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "teams.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/fx"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/fx"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/fx"
          operations:
            - name: execute-3
              method: POST

Retrieves benchmark interest rate data from Bloomberg and builds a yield curve for a specified currency and date.

naftiko: "0.5"
info:
  label: "Interest Rate Curve Builder"
  description: "Retrieves benchmark interest rate data from Bloomberg and builds a yield curve for a specified currency and date."
  tags:
    - treasury
    - bloomberg-enterprise-data
    - interest-rates
capability:
  exposes:
    - type: mcp
      namespace: yield-curves
      port: 8080
      tools:
        - name: build-yield-curve
          description: "Build a yield curve from Bloomberg interest rate data for a currency and date."
          inputParameters:
            - name: currency
              in: body
              type: string
              description: "The currency code."
            - name: curve_date
              in: body
              type: string
              description: "The curve date in YYYY-MM-DD format."
          steps:
            - name: get-rates
              type: call
              call: "bloomberg.get-rates"
              with:
                currency: "{{currency}}"
                date: "{{curve_date}}"
            - name: build-curve
              type: call
              call: "treasury-api.build-curve"
              with:
                currency: "{{currency}}"
                date: "{{curve_date}}"
                rates: "{{get-rates.rate_data}}"
  consumes:
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/eap/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: rates
          path: "/data/rates?currency={{currency}}&date={{date}}"
          inputParameters:
            - name: currency
              in: query
            - name: date
              in: query
          operations:
            - name: get-rates
              method: GET
    - type: http
      namespace: treasury-api
      baseUri: "https://api.sc.com/treasury/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_treasury_token"
      resources:
        - name: curves
          path: "/yield-curves"
          operations:
            - name: build-curve
              method: POST

Orchestrates islamic banking compliance pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Islamic Banking Compliance Pipeline"
  description: "Orchestrates islamic banking compliance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - islamic
    - standard-chartered
    - standard-chartered
    - salesforce
    - servicenow
capability:
  exposes:
    - type: mcp
      namespace: islamic
      port: 8080
      tools:
        - name: islamic-banking-compliance-pipeline
          description: "Orchestrates islamic banking compliance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "standard-chartered.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "salesforce.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "servicenow.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/islamic"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/islamic"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/islamic"
          operations:
            - name: execute-3
              method: POST

Retrieves islamic banking product lookup data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Islamic Banking Product Lookup"
  description: "Retrieves islamic banking product lookup data from the Standard Chartered international banking systems."
  tags:
    - islamic
    - standard-chartered
    - lookup
capability:
  exposes:
    - type: mcp
      namespace: islamic
      port: 8080
      tools:
        - name: islamic-banking-product-lookup
          description: "Retrieves islamic banking product lookup data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.islamic-banking-product-lookup"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/islamic/banking/product/lookup/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: islamic-banking-product-lookup
              method: GET

Creates a new Jira issue in a specified project with given summary, description, and type.

naftiko: "0.5"
info:
  label: "Jira Issue Creator"
  description: "Creates a new Jira issue in a specified project with given summary, description, and type."
  tags:
    - project-management
    - jira
capability:
  exposes:
    - type: mcp
      namespace: project-mgmt
      port: 8080
      tools:
        - name: create-jira-issue
          description: "Create a new issue in Jira."
          inputParameters:
            - name: project_key
              in: body
              type: string
              description: "The Jira project key."
            - name: summary
              in: body
              type: string
              description: "The issue summary."
            - name: description
              in: body
              type: string
              description: "The issue description."
            - name: issue_type
              in: body
              type: string
              description: "The issue type (Bug, Task, Story)."
          call: "jira.create-issue"
          with:
            project: "{{project_key}}"
            summary: "{{summary}}"
            description: "{{description}}"
            issuetype: "{{issue_type}}"
  consumes:
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: basic
        username: "$secrets.jira_user"
        password: "$secrets.jira_api_token"
      resources:
        - name: issues
          path: "/issue"
          operations:
            - name: create-issue
              method: POST

Publishes corporate updates and thought leadership content on the Standard Chartered LinkedIn company page.

naftiko: "0.5"
info:
  label: "LinkedIn Corporate Page Publisher"
  description: "Publishes corporate updates and thought leadership content on the Standard Chartered LinkedIn company page."
  tags:
    - marketing
    - linkedin
    - social-media
capability:
  exposes:
    - type: mcp
      namespace: social-publishing
      port: 8080
      tools:
        - name: publish-linkedin-update
          description: "Post a corporate update on the Standard Chartered LinkedIn page."
          inputParameters:
            - name: post_text
              in: body
              type: string
              description: "The post text."
            - name: link_url
              in: body
              type: string
              description: "Optional URL to include."
          call: "linkedin.create-share"
          with:
            text: "{{post_text}}"
            url: "{{link_url}}"
  consumes:
    - type: http
      namespace: linkedin
      baseUri: "https://api.linkedin.com/v2"
      authentication:
        type: bearer
        token: "$secrets.linkedin_token"
      resources:
        - name: shares
          path: "/shares"
          operations:
            - name: create-share
              method: POST

Calculates the current liquidity position by pulling account balances across multiple currencies and aggregating positions from the core banking system.

naftiko: "0.5"
info:
  label: "Liquidity Position Calculator"
  description: "Calculates the current liquidity position by pulling account balances across multiple currencies and aggregating positions from the core banking system."
  tags:
    - treasury
    - liquidity
    - banking
capability:
  exposes:
    - type: mcp
      namespace: liquidity
      port: 8080
      tools:
        - name: calculate-liquidity-position
          description: "Calculate the aggregate liquidity position across currencies."
          inputParameters:
            - name: entity_code
              in: body
              type: string
              description: "The legal entity code."
            - name: position_date
              in: body
              type: string
              description: "The position date in YYYY-MM-DD format."
          steps:
            - name: get-positions
              type: call
              call: "core-banking.get-liquidity"
              with:
                entity: "{{entity_code}}"
                date: "{{position_date}}"
            - name: get-fx-rates
              type: call
              call: "treasury-api.get-closing-rates"
              with:
                date: "{{position_date}}"
  consumes:
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: liquidity
          path: "/liquidity?entity={{entity}}&date={{date}}"
          inputParameters:
            - name: entity
              in: query
            - name: date
              in: query
          operations:
            - name: get-liquidity
              method: GET
    - type: http
      namespace: treasury-api
      baseUri: "https://api.sc.com/treasury/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_treasury_token"
      resources:
        - name: closing-rates
          path: "/fx/closing-rates?date={{date}}"
          inputParameters:
            - name: date
              in: query
          operations:
            - name: get-closing-rates
              method: GET

Orchestrates loan covenant compliance pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Loan Covenant Compliance Pipeline"
  description: "Orchestrates loan covenant compliance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - loan
    - standard-chartered
    - teams
    - splunk
    - bloomberg
capability:
  exposes:
    - type: mcp
      namespace: loan
      port: 8080
      tools:
        - name: loan-covenant-compliance-pipeline
          description: "Orchestrates loan covenant compliance pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "teams.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "splunk.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "bloomberg.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/loan"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/loan"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/loan"
          operations:
            - name: execute-3
              method: POST

Retrieves loan syndication participant lookup data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Loan Syndication Participant Lookup"
  description: "Retrieves loan syndication participant lookup data from the Standard Chartered international banking systems."
  tags:
    - loan
    - standard-chartered
    - lookup
capability:
  exposes:
    - type: mcp
      namespace: loan
      port: 8080
      tools:
        - name: loan-syndication-participant-lookup
          description: "Retrieves loan syndication participant lookup data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.loan-syndication-participant-lookup"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/loan/syndication/participant/lookup/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: loan-syndication-participant-lookup
              method: GET

Orchestrates market risk reporting pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Market Risk Reporting Pipeline"
  description: "Orchestrates market risk reporting pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - market
    - standard-chartered
    - jira
    - teams
    - splunk
capability:
  exposes:
    - type: mcp
      namespace: market
      port: 8080
      tools:
        - name: market-risk-reporting-pipeline
          description: "Orchestrates market risk reporting pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "jira.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "teams.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "splunk.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/market"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/market"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/market"
          operations:
            - name: execute-3
              method: POST

Queries Microsoft Sentinel for recent security incidents and threat detections.

naftiko: "0.5"
info:
  label: "Microsoft Sentinel Threat Detection"
  description: "Queries Microsoft Sentinel for recent security incidents and threat detections."
  tags:
    - security
    - microsoft-sentinel
    - threat-detection
capability:
  exposes:
    - type: mcp
      namespace: threat-detection
      port: 8080
      tools:
        - name: get-security-incidents
          description: "Get recent security incidents from Microsoft Sentinel."
          inputParameters:
            - name: severity
              in: body
              type: string
              description: "Minimum severity filter (High, Medium, Low, Informational)."
            - name: time_range
              in: body
              type: string
              description: "Time range in hours (e.g., 24, 48, 168)."
          call: "sentinel.get-incidents"
          with:
            severity: "{{severity}}"
            hours: "{{time_range}}"
  consumes:
    - type: http
      namespace: sentinel
      baseUri: "https://management.azure.com/subscriptions/$secrets.azure_subscription_id/resourceGroups/$secrets.azure_rg/providers/Microsoft.SecurityInsights"
      authentication:
        type: bearer
        token: "$secrets.azure_token"
      resources:
        - name: incidents
          path: "/incidents?api-version=2023-11-01&$filter=properties/severity eq '{{severity}}'"
          inputParameters:
            - name: severity
              in: query
          operations:
            - name: get-incidents
              method: GET

Retrieves the Moody's credit rating for a specified corporate entity or sovereign.

naftiko: "0.5"
info:
  label: "Moody's Credit Rating Lookup"
  description: "Retrieves the Moody's credit rating for a specified corporate entity or sovereign."
  tags:
    - risk
    - moodys
    - credit
capability:
  exposes:
    - type: mcp
      namespace: credit-ratings
      port: 8080
      tools:
        - name: get-moodys-rating
          description: "Look up the Moody's credit rating for an entity."
          inputParameters:
            - name: entity_name
              in: body
              type: string
              description: "The entity name."
          call: "moodys.get-rating"
          with:
            name: "{{entity_name}}"
  consumes:
    - type: http
      namespace: moodys
      baseUri: "https://api.moodys.com/v1"
      authentication:
        type: bearer
        token: "$secrets.moodys_token"
      resources:
        - name: ratings
          path: "/ratings/search?name={{name}}"
          inputParameters:
            - name: name
              in: query
          operations:
            - name: get-rating
              method: GET

Checks the runtime status of a MuleSoft integration application deployed on CloudHub.

naftiko: "0.5"
info:
  label: "MuleSoft Integration Status Check"
  description: "Checks the runtime status of a MuleSoft integration application deployed on CloudHub."
  tags:
    - integration
    - mulesoft
    - api-management
capability:
  exposes:
    - type: mcp
      namespace: integration
      port: 8080
      tools:
        - name: get-mulesoft-app-status
          description: "Check the runtime status of a MuleSoft CloudHub application."
          inputParameters:
            - name: app_name
              in: body
              type: string
              description: "The MuleSoft application name."
          call: "mulesoft.get-app-status"
          with:
            app: "{{app_name}}"
  consumes:
    - type: http
      namespace: mulesoft
      baseUri: "https://anypoint.mulesoft.com/cloudhub/api/v2"
      authentication:
        type: bearer
        token: "$secrets.mulesoft_token"
      resources:
        - name: applications
          path: "/applications/{{app}}"
          inputParameters:
            - name: app
              in: path
          operations:
            - name: get-app-status
              method: GET

Retrieves trade details from the Murex trading system by trade ID, returning instrument, counterparty, notional, and maturity information.

naftiko: "0.5"
info:
  label: "Murex Trade Booking Lookup"
  description: "Retrieves trade details from the Murex trading system by trade ID, returning instrument, counterparty, notional, and maturity information."
  tags:
    - trading
    - murex
    - treasury
capability:
  exposes:
    - type: mcp
      namespace: trading
      port: 8080
      tools:
        - name: get-trade
          description: "Look up a trade in Murex by trade ID."
          inputParameters:
            - name: trade_id
              in: body
              type: string
              description: "The Murex trade identifier."
          call: "murex.get-trade"
          with:
            id: "{{trade_id}}"
  consumes:
    - type: http
      namespace: murex
      baseUri: "https://murex.sc.com/api/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_murex_token"
      resources:
        - name: trades
          path: "/trades/{{id}}"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: get-trade
              method: GET

Retrieves application performance metrics from New Relic for Standard Chartered digital banking services.

naftiko: "0.5"
info:
  label: "New Relic Application Monitor"
  description: "Retrieves application performance metrics from New Relic for Standard Chartered digital banking services."
  tags:
    - monitoring
    - new-relic
    - performance
capability:
  exposes:
    - type: mcp
      namespace: apm
      port: 8080
      tools:
        - name: get-app-performance
          description: "Get performance metrics for a banking application from New Relic."
          inputParameters:
            - name: app_name
              in: body
              type: string
              description: "The application name in New Relic."
          call: "newrelic.get-app-summary"
          with:
            app: "{{app_name}}"
  consumes:
    - type: http
      namespace: newrelic
      baseUri: "https://api.newrelic.com/v2"
      authentication:
        type: apiKey
        key: "$secrets.newrelic_api_key"
      resources:
        - name: applications
          path: "/applications.json?filter[name]={{app}}"
          inputParameters:
            - name: app
              in: query
          operations:
            - name: get-app-summary
              method: GET

Retrieves nostro account balances and compares them with correspondent bank statements for daily reconciliation.

naftiko: "0.5"
info:
  label: "Nostro Account Reconciliation"
  description: "Retrieves nostro account balances and compares them with correspondent bank statements for daily reconciliation."
  tags:
    - treasury
    - reconciliation
    - correspondent-banking
capability:
  exposes:
    - type: mcp
      namespace: nostro-recon
      port: 8080
      tools:
        - name: reconcile-nostro
          description: "Perform nostro account reconciliation for a specified currency and date."
          inputParameters:
            - name: currency
              in: body
              type: string
              description: "The nostro account currency."
            - name: recon_date
              in: body
              type: string
              description: "The reconciliation date in YYYY-MM-DD format."
          steps:
            - name: get-internal-balance
              type: call
              call: "core-banking.get-nostro-balance"
              with:
                currency: "{{currency}}"
                date: "{{recon_date}}"
            - name: get-external-statement
              type: call
              call: "payments-api.get-correspondent-statement"
              with:
                currency: "{{currency}}"
                date: "{{recon_date}}"
  consumes:
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: nostro
          path: "/nostro/{{currency}}/balance?date={{date}}"
          inputParameters:
            - name: currency
              in: path
            - name: date
              in: query
          operations:
            - name: get-nostro-balance
              method: GET
    - type: http
      namespace: payments-api
      baseUri: "https://api.sc.com/payments/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_payments_token"
      resources:
        - name: correspondent-statements
          path: "/correspondents/statements?currency={{currency}}&date={{date}}"
          inputParameters:
            - name: currency
              in: query
            - name: date
              in: query
          operations:
            - name: get-correspondent-statement
              method: GET

Orchestrates operational resilience testing pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Operational Resilience Testing Pipeline"
  description: "Orchestrates operational resilience testing pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - operational
    - standard-chartered
    - confluence
    - standard-chartered
    - salesforce
capability:
  exposes:
    - type: mcp
      namespace: operational
      port: 8080
      tools:
        - name: operational-resilience-testing-pipeline
          description: "Orchestrates operational resilience testing pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "confluence.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "standard-chartered.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "salesforce.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/operational"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/operational"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/operational"
          operations:
            - name: execute-3
              method: POST

Orchestrates payment fraud prevention pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Payment Fraud Prevention Pipeline"
  description: "Orchestrates payment fraud prevention pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - payment
    - standard-chartered
    - snowflake
    - slack
    - jira
capability:
  exposes:
    - type: mcp
      namespace: payment
      port: 8080
      tools:
        - name: payment-fraud-prevention-pipeline
          description: "Orchestrates payment fraud prevention pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "snowflake.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "slack.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "jira.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/payment"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/payment"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/payment"
          operations:
            - name: execute-3
              method: POST

Tracks the status of a payment by payment reference, returning current state, timestamps, and settlement details.

naftiko: "0.5"
info:
  label: "Payment Status Tracker"
  description: "Tracks the status of a payment by payment reference, returning current state, timestamps, and settlement details."
  tags:
    - payments
    - tracking
    - banking
capability:
  exposes:
    - type: mcp
      namespace: payment-tracking
      port: 8080
      tools:
        - name: track-payment
          description: "Track the status of a payment by reference number."
          inputParameters:
            - name: payment_reference
              in: body
              type: string
              description: "The payment reference number."
          call: "payments-api.get-status"
          with:
            reference: "{{payment_reference}}"
  consumes:
    - type: http
      namespace: payments-api
      baseUri: "https://api.sc.com/payments/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_payments_token"
      resources:
        - name: status
          path: "/payments/{{reference}}/status"
          inputParameters:
            - name: reference
              in: path
          operations:
            - name: get-status
              method: GET

Triggers a refresh of a Power BI dataset to update banking dashboards with the latest data.

naftiko: "0.5"
info:
  label: "Power BI Dashboard Refresh Trigger"
  description: "Triggers a refresh of a Power BI dataset to update banking dashboards with the latest data."
  tags:
    - analytics
    - power-bi
    - reporting
capability:
  exposes:
    - type: mcp
      namespace: bi-refresh
      port: 8080
      tools:
        - name: refresh-power-bi-dataset
          description: "Trigger a refresh for a Power BI dataset."
          inputParameters:
            - name: dataset_id
              in: body
              type: string
              description: "The Power BI dataset ID."
          call: "powerbi.refresh-dataset"
          with:
            id: "{{dataset_id}}"
  consumes:
    - type: http
      namespace: powerbi
      baseUri: "https://api.powerbi.com/v1.0/myorg"
      authentication:
        type: bearer
        token: "$secrets.powerbi_token"
      resources:
        - name: datasets
          path: "/datasets/{{id}}/refreshes"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: refresh-dataset
              method: POST

Retrieves private banking client summary data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Private Banking Client Summary"
  description: "Retrieves private banking client summary data from the Standard Chartered international banking systems."
  tags:
    - private
    - standard-chartered
    - summary
capability:
  exposes:
    - type: mcp
      namespace: private
      port: 8080
      tools:
        - name: private-banking-client-summary
          description: "Retrieves private banking client summary data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.private-banking-client-summary"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/private/banking/client/summary/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: private-banking-client-summary
              method: GET

Orchestrates private banking portfolio pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Private Banking Portfolio Pipeline"
  description: "Orchestrates private banking portfolio pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - private
    - standard-chartered
    - standard-chartered
    - salesforce
    - servicenow
capability:
  exposes:
    - type: mcp
      namespace: private
      port: 8080
      tools:
        - name: private-banking-portfolio-pipeline
          description: "Orchestrates private banking portfolio pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "standard-chartered.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "salesforce.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "servicenow.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/private"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/private"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/private"
          operations:
            - name: execute-3
              method: POST

Processes a real-time domestic payment through the instant payments rail, validates the beneficiary, and returns the payment confirmation.

naftiko: "0.5"
info:
  label: "Real-Time Payment Processing"
  description: "Processes a real-time domestic payment through the instant payments rail, validates the beneficiary, and returns the payment confirmation."
  tags:
    - payments
    - real-time
    - banking
capability:
  exposes:
    - type: mcp
      namespace: instant-payments
      port: 8080
      tools:
        - name: process-instant-payment
          description: "Submit an instant payment through the real-time payments rail."
          inputParameters:
            - name: debit_account
              in: body
              type: string
              description: "The debit account number."
            - name: credit_account
              in: body
              type: string
              description: "The credit account number."
            - name: amount
              in: body
              type: string
              description: "The payment amount."
            - name: currency
              in: body
              type: string
              description: "The currency code."
            - name: reference
              in: body
              type: string
              description: "The payment reference."
          steps:
            - name: validate
              type: call
              call: "payments-api.validate-instant"
              with:
                debit: "{{debit_account}}"
                credit: "{{credit_account}}"
                amount: "{{amount}}"
            - name: submit
              type: call
              call: "payments-api.submit-instant"
              with:
                debit: "{{debit_account}}"
                credit: "{{credit_account}}"
                amount: "{{amount}}"
                currency: "{{currency}}"
                reference: "{{reference}}"
  consumes:
    - type: http
      namespace: payments-api
      baseUri: "https://api.sc.com/payments/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_payments_token"
      resources:
        - name: validation
          path: "/instant/validate"
          operations:
            - name: validate-instant
              method: POST
        - name: instant-payments
          path: "/instant/submit"
          operations:
            - name: submit-instant
              method: POST

Generates a regulatory report by pulling data from SAP S/4HANA, formatting it per regulatory requirements, and storing it in SharePoint for submission.

naftiko: "0.5"
info:
  label: "Regulatory Report Generator"
  description: "Generates a regulatory report by pulling data from SAP S/4HANA, formatting it per regulatory requirements, and storing it in SharePoint for submission."
  tags:
    - compliance
    - regulatory
    - sap-s4hana
    - sharepoint
capability:
  exposes:
    - type: mcp
      namespace: regulatory-reporting
      port: 8080
      tools:
        - name: generate-regulatory-report
          description: "Generate a regulatory report from SAP data and store it in SharePoint."
          inputParameters:
            - name: report_type
              in: body
              type: string
              description: "The regulatory report type (e.g., basel_iii, mas_610, hkma_return)."
            - name: reporting_period
              in: body
              type: string
              description: "The reporting period (e.g., 2026-Q1)."
          steps:
            - name: extract-data
              type: call
              call: "sap.get-regulatory-data"
              with:
                type: "{{report_type}}"
                period: "{{reporting_period}}"
            - name: upload-report
              type: call
              call: "sharepoint.update-file"
              with:
                site_id: "regulatory_reports"
                file_path: "Reports/{{report_type}}_{{reporting_period}}.json"
                content: "{{extract-data}}"
  consumes:
    - type: http
      namespace: sap
      baseUri: "https://sap-s4.sc.com/sap/opu/odata/sap/API_FINANCIAL_REPORTING"
      authentication:
        type: basic
        username: "$secrets.sap_user"
        password: "$secrets.sap_password"
      resources:
        - name: regulatory
          path: "/regulatory-data?type={{type}}&period={{period}}"
          inputParameters:
            - name: type
              in: query
            - name: period
              in: query
          operations:
            - name: get-regulatory-data
              method: GET
    - type: http
      namespace: sharepoint
      baseUri: "https://graph.microsoft.com/v1.0/sites"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: files
          path: "/{{site_id}}/drive/root:/{{file_path}}:/content"
          inputParameters:
            - name: site_id
              in: path
            - name: file_path
              in: path
          operations:
            - name: update-file
              method: PUT

Orchestrates regulatory reporting automation pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Regulatory Reporting Automation Pipeline"
  description: "Orchestrates regulatory reporting automation pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - regulatory
    - standard-chartered
    - confluence
    - standard-chartered
    - salesforce
capability:
  exposes:
    - type: mcp
      namespace: regulatory
      port: 8080
      tools:
        - name: regulatory-reporting-automation-pipeline
          description: "Orchestrates regulatory reporting automation pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "confluence.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "standard-chartered.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "salesforce.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/regulatory"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/regulatory"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/regulatory"
          operations:
            - name: execute-3
              method: POST

Retrieves pending access certification reviews from SailPoint for a specified manager.

naftiko: "0.5"
info:
  label: "SailPoint Access Certification Review"
  description: "Retrieves pending access certification reviews from SailPoint for a specified manager."
  tags:
    - security
    - sailpoint
    - access-management
capability:
  exposes:
    - type: mcp
      namespace: access-mgmt
      port: 8080
      tools:
        - name: get-pending-certifications
          description: "Get pending access certification reviews for a manager from SailPoint."
          inputParameters:
            - name: manager_id
              in: body
              type: string
              description: "The manager employee ID."
          call: "sailpoint.get-certifications"
          with:
            reviewer: "{{manager_id}}"
  consumes:
    - type: http
      namespace: sailpoint
      baseUri: "https://sc.api.identitynow.com/v3"
      authentication:
        type: bearer
        token: "$secrets.sailpoint_token"
      resources:
        - name: certifications
          path: "/certifications?reviewer={{reviewer}}&status=pending"
          inputParameters:
            - name: reviewer
              in: query
          operations:
            - name: get-certifications
              method: GET

Searches for a client's relationship manager in Salesforce CRM by customer name or account number.

naftiko: "0.5"
info:
  label: "Salesforce Relationship Manager Lookup"
  description: "Searches for a client's relationship manager in Salesforce CRM by customer name or account number."
  tags:
    - crm
    - salesforce
    - relationship-management
capability:
  exposes:
    - type: mcp
      namespace: crm
      port: 8080
      tools:
        - name: find-relationship-manager
          description: "Look up the relationship manager for a client in Salesforce."
          inputParameters:
            - name: client_name
              in: body
              type: string
              description: "The client name or account number."
          call: "salesforce.search-accounts"
          with:
            query: "{{client_name}}"
  consumes:
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_token"
      resources:
        - name: accounts
          path: "/sobjects/Account/search?q={{query}}"
          inputParameters:
            - name: query
              in: query
          operations:
            - name: search-accounts
              method: GET

Screens a customer or counterparty name against global sanctions lists and returns match results with confidence scores.

naftiko: "0.5"
info:
  label: "Sanctions Screening Check"
  description: "Screens a customer or counterparty name against global sanctions lists and returns match results with confidence scores."
  tags:
    - compliance
    - sanctions
    - risk
capability:
  exposes:
    - type: mcp
      namespace: sanctions
      port: 8080
      tools:
        - name: screen-sanctions
          description: "Screen a name against global sanctions lists."
          inputParameters:
            - name: entity_name
              in: body
              type: string
              description: "The name of the entity to screen."
            - name: entity_type
              in: body
              type: string
              description: "The entity type (individual, organization)."
          call: "sanctions-api.screen"
          with:
            name: "{{entity_name}}"
            type: "{{entity_type}}"
  consumes:
    - type: http
      namespace: sanctions-api
      baseUri: "https://api.sc.com/compliance/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_compliance_token"
      resources:
        - name: screening
          path: "/sanctions/screen"
          operations:
            - name: screen
              method: POST

Orchestrates sanctions screening enhancement pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Sanctions Screening Enhancement Pipeline"
  description: "Orchestrates sanctions screening enhancement pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - sanctions
    - standard-chartered
    - teams
    - splunk
    - bloomberg
capability:
  exposes:
    - type: mcp
      namespace: sanctions
      port: 8080
      tools:
        - name: sanctions-screening-enhancement-pipeline
          description: "Orchestrates sanctions screening enhancement pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "teams.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "splunk.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "bloomberg.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/sanctions"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/sanctions"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/sanctions"
          operations:
            - name: execute-3
              method: POST

Retrieves a travel expense report from SAP Concur by report ID.

naftiko: "0.5"
info:
  label: "SAP Concur Travel Expense Lookup"
  description: "Retrieves a travel expense report from SAP Concur by report ID."
  tags:
    - finance
    - sap-concur
    - expenses
capability:
  exposes:
    - type: mcp
      namespace: expenses
      port: 8080
      tools:
        - name: get-expense-report
          description: "Look up a travel expense report in SAP Concur."
          inputParameters:
            - name: report_id
              in: body
              type: string
              description: "The SAP Concur expense report ID."
          call: "concur.get-report"
          with:
            id: "{{report_id}}"
  consumes:
    - type: http
      namespace: concur
      baseUri: "https://us.api.concursolutions.com/api/v3.0"
      authentication:
        type: bearer
        token: "$secrets.concur_token"
      resources:
        - name: reports
          path: "/expense/reports/{{id}}"
          inputParameters:
            - name: id
              in: path
          operations:
            - name: get-report
              method: GET

Looks up a SAP S/4HANA purchase order by number and returns header status, vendor, and total value.

naftiko: "0.5"
info:
  label: "SAP S/4HANA Purchase Order Status"
  description: "Looks up a SAP S/4HANA purchase order by number and returns header status, vendor, and total value."
  tags:
    - procurement
    - sap-s4hana
    - finance
capability:
  exposes:
    - type: mcp
      namespace: procurement
      port: 8080
      tools:
        - name: get-purchase-order
          description: "Look up a SAP S/4HANA purchase order by PO number."
          inputParameters:
            - name: po_number
              in: body
              type: string
              description: "The SAP purchase order number."
          call: "sap.get-po"
          with:
            po_number: "{{po_number}}"
  consumes:
    - type: http
      namespace: sap
      baseUri: "https://sap-s4.sc.com/sap/opu/odata/sap/MM_PUR_PO_MAINT_V2_SRV"
      authentication:
        type: basic
        username: "$secrets.sap_user"
        password: "$secrets.sap_password"
      resources:
        - name: purchase-orders
          path: "/A_PurchaseOrder('{{po_number}}')"
          inputParameters:
            - name: po_number
              in: path
          operations:
            - name: get-po
              method: GET

Retrieves the current status of a ServiceNow incident by number.

naftiko: "0.5"
info:
  label: "ServiceNow Incident Status"
  description: "Retrieves the current status of a ServiceNow incident by number."
  tags:
    - it-support
    - servicenow
capability:
  exposes:
    - type: mcp
      namespace: it-support
      port: 8080
      tools:
        - name: get-incident-status
          description: "Look up a ServiceNow incident by number and return its current status."
          inputParameters:
            - name: incident_number
              in: body
              type: string
              description: "The ServiceNow incident number."
          call: "servicenow.get-incident"
          with:
            number: "{{incident_number}}"
  consumes:
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: basic
        username: "$secrets.servicenow_user"
        password: "$secrets.servicenow_password"
      resources:
        - name: incidents
          path: "/table/incident?sysparm_query=number={{number}}"
          inputParameters:
            - name: number
              in: query
          operations:
            - name: get-incident
              method: GET

Retrieves a compliance policy document from the SharePoint policy library.

naftiko: "0.5"
info:
  label: "SharePoint Policy Document Retrieval"
  description: "Retrieves a compliance policy document from the SharePoint policy library."
  tags:
    - compliance
    - sharepoint
    - documents
capability:
  exposes:
    - type: mcp
      namespace: policy-library
      port: 8080
      tools:
        - name: get-policy-document
          description: "Retrieve a policy document from SharePoint."
          inputParameters:
            - name: document_name
              in: body
              type: string
              description: "The policy document name."
          call: "sharepoint.get-document"
          with:
            site_id: "compliance_policies"
            file_path: "Policies/{{document_name}}"
  consumes:
    - type: http
      namespace: sharepoint
      baseUri: "https://graph.microsoft.com/v1.0/sites"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: documents
          path: "/{{site_id}}/drive/root:/{{file_path}}"
          inputParameters:
            - name: site_id
              in: path
            - name: file_path
              in: path
          operations:
            - name: get-document
              method: GET

Searches Splunk for security events matching specified criteria and returns matching log entries.

naftiko: "0.5"
info:
  label: "Splunk Security Event Lookup"
  description: "Searches Splunk for security events matching specified criteria and returns matching log entries."
  tags:
    - security
    - splunk
    - monitoring
capability:
  exposes:
    - type: mcp
      namespace: security-monitoring
      port: 8080
      tools:
        - name: search-security-events
          description: "Search Splunk for security events matching a query."
          inputParameters:
            - name: search_query
              in: body
              type: string
              description: "The Splunk search query (SPL)."
            - name: time_range
              in: body
              type: string
              description: "The time range (e.g., -24h, -7d)."
          call: "splunk.search"
          with:
            query: "{{search_query}}"
            earliest_time: "{{time_range}}"
  consumes:
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: search
          path: "/search/jobs"
          operations:
            - name: search
              method: POST

Orchestrates structured product lifecycle pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Structured Product Lifecycle Pipeline"
  description: "Orchestrates structured product lifecycle pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - structured
    - standard-chartered
    - splunk
    - bloomberg
    - confluence
capability:
  exposes:
    - type: mcp
      namespace: structured
      port: 8080
      tools:
        - name: structured-product-lifecycle-pipeline
          description: "Orchestrates structured product lifecycle pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "splunk.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "bloomberg.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "confluence.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: splunk
      baseUri: "https://splunk.sc.com:8089/services"
      authentication:
        type: bearer
        token: "$secrets.splunk_token"
      resources:
        - name: splunk-resource
          path: "/api/structured"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/structured"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/structured"
          operations:
            - name: execute-3
              method: POST

Retrieves structured product valuation data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Structured Product Valuation"
  description: "Retrieves structured product valuation data from the Standard Chartered international banking systems."
  tags:
    - structured
    - standard-chartered
    - valuation
capability:
  exposes:
    - type: mcp
      namespace: structured
      port: 8080
      tools:
        - name: structured-product-valuation
          description: "Retrieves structured product valuation data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.structured-product-valuation"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/structured/product/valuation/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: structured-product-valuation
              method: GET

Orchestrates supply chain finance onboarding pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Supply Chain Finance Onboarding Pipeline"
  description: "Orchestrates supply chain finance onboarding pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - supply
    - standard-chartered
    - bloomberg
    - confluence
    - standard-chartered
capability:
  exposes:
    - type: mcp
      namespace: supply
      port: 8080
      tools:
        - name: supply-chain-finance-onboarding-pipeline
          description: "Orchestrates supply chain finance onboarding pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "bloomberg.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "confluence.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "standard-chartered.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: bloomberg
      baseUri: "https://api.bloomberg.com/v1"
      authentication:
        type: bearer
        token: "$secrets.bloomberg_token"
      resources:
        - name: bloomberg-resource
          path: "/api/supply"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: confluence
      baseUri: "https://sc.atlassian.net/wiki/rest/api"
      authentication:
        type: bearer
        token: "$secrets.confluence_token"
      resources:
        - name: confluence-resource
          path: "/api/supply"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: standard-chartered-resource
          path: "/api/supply"
          operations:
            - name: execute-3
              method: POST

Retrieves supply chain finance program lookup data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Supply Chain Finance Program Lookup"
  description: "Retrieves supply chain finance program lookup data from the Standard Chartered international banking systems."
  tags:
    - supply
    - standard-chartered
    - lookup
capability:
  exposes:
    - type: mcp
      namespace: supply
      port: 8080
      tools:
        - name: supply-chain-finance-program-lookup
          description: "Retrieves supply chain finance program lookup data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.supply-chain-finance-program-lookup"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/supply/chain/finance/program/lookup/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: supply-chain-finance-program-lookup
              method: GET

Orchestrates sustainable finance framework pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Sustainable Finance Framework Pipeline"
  description: "Orchestrates sustainable finance framework pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - sustainable
    - standard-chartered
    - slack
    - jira
    - teams
capability:
  exposes:
    - type: mcp
      namespace: sustainable
      port: 8080
      tools:
        - name: sustainable-finance-framework-pipeline
          description: "Orchestrates sustainable finance framework pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "slack.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "jira.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "teams.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/sustainable"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/sustainable"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: teams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.teams_token"
      resources:
        - name: teams-resource
          path: "/api/sustainable"
          operations:
            - name: execute-3
              method: POST

Initiates a SWIFT cross-border payment by validating the beneficiary, submitting the payment instruction, and returning the payment reference.

naftiko: "0.5"
info:
  label: "SWIFT Payment Initiation"
  description: "Initiates a SWIFT cross-border payment by validating the beneficiary, submitting the payment instruction, and returning the payment reference."
  tags:
    - payments
    - swift
    - cross-border
capability:
  exposes:
    - type: mcp
      namespace: payments
      port: 8080
      tools:
        - name: initiate-swift-payment
          description: "Submit a SWIFT cross-border payment instruction."
          inputParameters:
            - name: debit_account
              in: body
              type: string
              description: "The debit account number."
            - name: beneficiary_account
              in: body
              type: string
              description: "The beneficiary account number."
            - name: beneficiary_bank_bic
              in: body
              type: string
              description: "The beneficiary bank SWIFT BIC code."
            - name: amount
              in: body
              type: string
              description: "The payment amount."
            - name: currency
              in: body
              type: string
              description: "The currency code."
            - name: payment_reference
              in: body
              type: string
              description: "The payment reference or description."
          steps:
            - name: validate-beneficiary
              type: call
              call: "payments-api.validate-beneficiary"
              with:
                account: "{{beneficiary_account}}"
                bic: "{{beneficiary_bank_bic}}"
            - name: submit-payment
              type: call
              call: "payments-api.create-payment"
              with:
                debit_account: "{{debit_account}}"
                credit_account: "{{beneficiary_account}}"
                credit_bic: "{{beneficiary_bank_bic}}"
                amount: "{{amount}}"
                currency: "{{currency}}"
                reference: "{{payment_reference}}"
  consumes:
    - type: http
      namespace: payments-api
      baseUri: "https://api.sc.com/payments/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_payments_token"
      resources:
        - name: validation
          path: "/beneficiaries/validate"
          operations:
            - name: validate-beneficiary
              method: POST
        - name: payments
          path: "/payments/swift"
          operations:
            - name: create-payment
              method: POST

Queries Tanium for the security compliance status of endpoint devices, returning patch level and vulnerability counts.

naftiko: "0.5"
info:
  label: "Tanium Endpoint Security Status"
  description: "Queries Tanium for the security compliance status of endpoint devices, returning patch level and vulnerability counts."
  tags:
    - security
    - tanium
    - endpoints
capability:
  exposes:
    - type: mcp
      namespace: endpoint-security
      port: 8080
      tools:
        - name: get-endpoint-status
          description: "Get the security compliance status of endpoints from Tanium."
          inputParameters:
            - name: computer_group
              in: body
              type: string
              description: "The Tanium computer group name."
          call: "tanium.get-group-status"
          with:
            group: "{{computer_group}}"
  consumes:
    - type: http
      namespace: tanium
      baseUri: "https://tanium.sc.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.tanium_token"
      resources:
        - name: groups
          path: "/computer_groups/{{group}}/status"
          inputParameters:
            - name: group
              in: path
          operations:
            - name: get-group-status
              method: GET

Verifies trade finance documents by extracting data from uploaded documents in Box, validating against the LC terms, and updating the trade case in ServiceNow.

naftiko: "0.5"
info:
  label: "Trade Document Verification Orchestrator"
  description: "Verifies trade finance documents by extracting data from uploaded documents in Box, validating against the LC terms, and updating the trade case in ServiceNow."
  tags:
    - trade-finance
    - documents
    - box
    - servicenow
capability:
  exposes:
    - type: mcp
      namespace: trade-docs
      port: 8080
      tools:
        - name: verify-trade-documents
          description: "Extract data from trade documents, validate against LC terms, and update the trade case."
          inputParameters:
            - name: lc_number
              in: body
              type: string
              description: "The letter of credit number."
            - name: document_folder_id
              in: body
              type: string
              description: "The Box folder ID containing the trade documents."
          steps:
            - name: get-documents
              type: call
              call: "box.get-folder-items"
              with:
                folder_id: "{{document_folder_id}}"
            - name: get-lc-terms
              type: call
              call: "trade-api.get-lc"
              with:
                lc_number: "{{lc_number}}"
            - name: update-case
              type: call
              call: "servicenow.update-request"
              with:
                lc_number: "{{lc_number}}"
                document_count: "{{get-documents.item_count}}"
                status: "documents_received"
  consumes:
    - type: http
      namespace: box
      baseUri: "https://api.box.com/2.0"
      authentication:
        type: bearer
        token: "$secrets.box_token"
      resources:
        - name: folders
          path: "/folders/{{folder_id}}/items"
          inputParameters:
            - name: folder_id
              in: path
          operations:
            - name: get-folder-items
              method: GET
    - type: http
      namespace: trade-api
      baseUri: "https://api.sc.com/trade-finance/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_trade_finance_token"
      resources:
        - name: letters-of-credit
          path: "/letters-of-credit/{{lc_number}}"
          inputParameters:
            - name: lc_number
              in: path
          operations:
            - name: get-lc
              method: GET
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: basic
        username: "$secrets.servicenow_user"
        password: "$secrets.servicenow_password"
      resources:
        - name: requests
          path: "/table/sc_request"
          operations:
            - name: update-request
              method: PATCH

Orchestrates trade finance digitization pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Trade Finance Digitization Pipeline"
  description: "Orchestrates trade finance digitization pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - trade
    - standard-chartered
    - salesforce
    - servicenow
    - snowflake
capability:
  exposes:
    - type: mcp
      namespace: trade
      port: 8080
      tools:
        - name: trade-finance-digitization-pipeline
          description: "Orchestrates trade finance digitization pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "salesforce.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "servicenow.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "snowflake.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/trade"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/trade"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/trade"
          operations:
            - name: execute-3
              method: POST

Retrieves the status of a bank guarantee from the trade finance system by guarantee number.

naftiko: "0.5"
info:
  label: "Trade Finance Guarantee Status"
  description: "Retrieves the status of a bank guarantee from the trade finance system by guarantee number."
  tags:
    - trade-finance
    - guarantees
    - banking
capability:
  exposes:
    - type: mcp
      namespace: guarantees
      port: 8080
      tools:
        - name: get-guarantee-status
          description: "Look up a bank guarantee by number."
          inputParameters:
            - name: guarantee_number
              in: body
              type: string
              description: "The bank guarantee number."
          call: "trade-api.get-guarantee"
          with:
            number: "{{guarantee_number}}"
  consumes:
    - type: http
      namespace: trade-api
      baseUri: "https://api.sc.com/trade-finance/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_trade_finance_token"
      resources:
        - name: guarantees
          path: "/guarantees/{{number}}"
          inputParameters:
            - name: number
              in: path
          operations:
            - name: get-guarantee
              method: GET

Processes a new letter of credit request by validating the applicant in the core banking system, creating the LC in the trade finance platform, and notifying the trade operations team via Microsoft Teams.

naftiko: "0.5"
info:
  label: "Trade Finance Letter of Credit Orchestrator"
  description: "Processes a new letter of credit request by validating the applicant in the core banking system, creating the LC in the trade finance platform, and notifying the trade operations team via Microsoft Teams."
  tags:
    - trade-finance
    - banking
    - microsoft-teams
    - letters-of-credit
capability:
  exposes:
    - type: mcp
      namespace: trade-finance
      port: 8080
      tools:
        - name: process-letter-of-credit
          description: "Process a new letter of credit from applicant validation through LC creation and team notification."
          inputParameters:
            - name: applicant_id
              in: body
              type: string
              description: "The applicant customer ID."
            - name: beneficiary_name
              in: body
              type: string
              description: "The beneficiary name."
            - name: amount
              in: body
              type: string
              description: "The LC amount."
            - name: currency
              in: body
              type: string
              description: "The currency code (e.g., USD, GBP, SGD)."
            - name: expiry_date
              in: body
              type: string
              description: "The LC expiry date in YYYY-MM-DD format."
          steps:
            - name: validate-customer
              type: call
              call: "core-banking.get-customer"
              with:
                customer_id: "{{applicant_id}}"
            - name: create-lc
              type: call
              call: "trade-api.create-letter-of-credit"
              with:
                applicant: "{{validate-customer.customer_name}}"
                applicant_id: "{{applicant_id}}"
                beneficiary: "{{beneficiary_name}}"
                amount: "{{amount}}"
                currency: "{{currency}}"
                expiry: "{{expiry_date}}"
            - name: notify-ops
              type: call
              call: "msteams.send-channel-message"
              with:
                team_id: "trade_operations"
                channel_id: "lc_processing"
                text: "New LC created: {{create-lc.lc_number}}. Applicant: {{validate-customer.customer_name}}. Amount: {{currency}} {{amount}}. Expiry: {{expiry_date}}."
  consumes:
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: customers
          path: "/customers/{{customer_id}}"
          inputParameters:
            - name: customer_id
              in: path
          operations:
            - name: get-customer
              method: GET
    - type: http
      namespace: trade-api
      baseUri: "https://api.sc.com/trade-finance/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_trade_finance_token"
      resources:
        - name: letters-of-credit
          path: "/letters-of-credit"
          operations:
            - name: create-letter-of-credit
              method: POST
    - type: http
      namespace: msteams
      baseUri: "https://graph.microsoft.com/v1.0"
      authentication:
        type: bearer
        token: "$secrets.msgraph_token"
      resources:
        - name: channel-messages
          path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
          inputParameters:
            - name: team_id
              in: path
            - name: channel_id
              in: path
          operations:
            - name: send-channel-message
              method: POST

Retrieves trade finance shipment status data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Trade Finance Shipment Status"
  description: "Retrieves trade finance shipment status data from the Standard Chartered international banking systems."
  tags:
    - trade
    - standard-chartered
    - status
capability:
  exposes:
    - type: mcp
      namespace: trade
      port: 8080
      tools:
        - name: trade-finance-shipment-status
          description: "Retrieves trade finance shipment status data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.trade-finance-shipment-status"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/trade/finance/shipment/status/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: trade-finance-shipment-status
              method: GET

Retrieves trade receivable discounting status data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Trade Receivable Discounting Status"
  description: "Retrieves trade receivable discounting status data from the Standard Chartered international banking systems."
  tags:
    - trade
    - standard-chartered
    - status
capability:
  exposes:
    - type: mcp
      namespace: trade
      port: 8080
      tools:
        - name: trade-receivable-discounting-status
          description: "Retrieves trade receivable discounting status data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.trade-receivable-discounting-status"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/trade/receivable/discounting/status/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: trade-receivable-discounting-status
              method: GET

Orchestrates trade settlement exception pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Trade Settlement Exception Pipeline"
  description: "Orchestrates trade settlement exception pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - trade
    - standard-chartered
    - snowflake
    - slack
    - jira
capability:
  exposes:
    - type: mcp
      namespace: trade
      port: 8080
      tools:
        - name: trade-settlement-exception-pipeline
          description: "Orchestrates trade settlement exception pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "snowflake.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "slack.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "jira.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/trade"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/trade"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: bearer
        token: "$secrets.jira_token"
      resources:
        - name: jira-resource
          path: "/api/trade"
          operations:
            - name: execute-3
              method: POST

Reconciles trade settlements by comparing Murex trade records with the core banking settlement records, flagging discrepancies, and creating a Jira ticket for any breaks.

naftiko: "0.5"
info:
  label: "Trade Settlement Reconciliation Orchestrator"
  description: "Reconciles trade settlements by comparing Murex trade records with the core banking settlement records, flagging discrepancies, and creating a Jira ticket for any breaks."
  tags:
    - trading
    - settlements
    - murex
    - jira
capability:
  exposes:
    - type: mcp
      namespace: trade-reconciliation
      port: 8080
      tools:
        - name: reconcile-settlements
          description: "Reconcile trade settlements between Murex and core banking, flagging any breaks."
          inputParameters:
            - name: settlement_date
              in: body
              type: string
              description: "The settlement date in YYYY-MM-DD format."
            - name: desk
              in: body
              type: string
              description: "The trading desk identifier."
          steps:
            - name: get-murex-settlements
              type: call
              call: "murex.get-settlements"
              with:
                desk: "{{desk}}"
                date: "{{settlement_date}}"
            - name: get-banking-settlements
              type: call
              call: "core-banking.get-settlements"
              with:
                date: "{{settlement_date}}"
            - name: create-break-ticket
              type: call
              call: "jira.create-issue"
              with:
                project: "RECON"
                summary: "Settlement breaks for {{desk}} on {{settlement_date}}"
                description: "Murex count: {{get-murex-settlements.count}}. Banking count: {{get-banking-settlements.count}}."
                issuetype: "Bug"
  consumes:
    - type: http
      namespace: murex
      baseUri: "https://murex.sc.com/api/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_murex_token"
      resources:
        - name: settlements
          path: "/settlements?desk={{desk}}&date={{date}}"
          inputParameters:
            - name: desk
              in: query
            - name: date
              in: query
          operations:
            - name: get-settlements
              method: GET
    - type: http
      namespace: core-banking
      baseUri: "https://api.sc.com/core-banking/v1"
      authentication:
        type: bearer
        token: "$secrets.sc_core_banking_token"
      resources:
        - name: settlements
          path: "/settlements?date={{date}}"
          inputParameters:
            - name: date
              in: query
          operations:
            - name: get-settlements
              method: GET
    - type: http
      namespace: jira
      baseUri: "https://sc.atlassian.net/rest/api/3"
      authentication:
        type: basic
        username: "$secrets.jira_user"
        password: "$secrets.jira_api_token"
      resources:
        - name: issues
          path: "/issue"
          operations:
            - name: create-issue
              method: POST

Retrieves treasury cash pool balance data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Treasury Cash Pool Balance"
  description: "Retrieves treasury cash pool balance data from the Standard Chartered international banking systems."
  tags:
    - treasury
    - standard-chartered
    - balance
capability:
  exposes:
    - type: mcp
      namespace: treasury
      port: 8080
      tools:
        - name: treasury-cash-pool-balance
          description: "Retrieves treasury cash pool balance data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.treasury-cash-pool-balance"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/treasury/cash/pool/balance/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: treasury-cash-pool-balance
              method: GET

Orchestrates treasury risk management pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Treasury Risk Management Pipeline"
  description: "Orchestrates treasury risk management pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - treasury
    - standard-chartered
    - salesforce
    - servicenow
    - snowflake
capability:
  exposes:
    - type: mcp
      namespace: treasury
      port: 8080
      tools:
        - name: treasury-risk-management-pipeline
          description: "Orchestrates treasury risk management pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "salesforce.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "servicenow.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "snowflake.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: salesforce
      baseUri: "https://sc.my.salesforce.com/services/data/v58.0"
      authentication:
        type: bearer
        token: "$secrets.salesforce_access_token"
      resources:
        - name: salesforce-resource
          path: "/api/treasury"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/treasury"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/treasury"
          operations:
            - name: execute-3
              method: POST

Orchestrates vendor risk management pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Vendor Risk Management Pipeline"
  description: "Orchestrates vendor risk management pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - vendor
    - standard-chartered
    - servicenow
    - snowflake
    - slack
capability:
  exposes:
    - type: mcp
      namespace: vendor
      port: 8080
      tools:
        - name: vendor-risk-management-pipeline
          description: "Orchestrates vendor risk management pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "servicenow.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "snowflake.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "slack.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/vendor"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/vendor"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/vendor"
          operations:
            - name: execute-3
              method: POST

Orchestrates wealth management advisory pipeline across international banking systems, coordinating multiple services and notifying stakeholders.

naftiko: "0.5"
info:
  label: "Wealth Management Advisory Pipeline"
  description: "Orchestrates wealth management advisory pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
  tags:
    - wealth
    - standard-chartered
    - servicenow
    - snowflake
    - slack
capability:
  exposes:
    - type: mcp
      namespace: wealth
      port: 8080
      tools:
        - name: wealth-management-advisory-pipeline
          description: "Orchestrates wealth management advisory pipeline across international banking systems, coordinating multiple services and notifying stakeholders."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The primary input identifier."
          steps:
            - name: step-1
              type: call
              call: "servicenow.execute-1"
              with:
                input: "{{input_id}}"
            - name: step-2
              type: call
              call: "snowflake.execute-2"
              with:
                input: "{{input_id}}"
            - name: step-3
              type: call
              call: "slack.execute-3"
              with:
                input: "{{input_id}}"
  consumes:
    - type: http
      namespace: servicenow
      baseUri: "https://sc.service-now.com/api/now"
      authentication:
        type: bearer
        token: "$secrets.servicenow_token"
      resources:
        - name: servicenow-resource
          path: "/api/wealth"
          operations:
            - name: execute-1
              method: POST
    - type: http
      namespace: snowflake
      baseUri: "https://sc.snowflakecomputing.com/api/v2"
      authentication:
        type: bearer
        token: "$secrets.snowflake_token"
      resources:
        - name: snowflake-resource
          path: "/api/wealth"
          operations:
            - name: execute-2
              method: POST
    - type: http
      namespace: slack
      baseUri: "https://slack.com/api"
      authentication:
        type: bearer
        token: "$secrets.slack_bot_token"
      resources:
        - name: slack-resource
          path: "/api/wealth"
          operations:
            - name: execute-3
              method: POST

Retrieves wealth management portfolio lookup data from the Standard Chartered international banking systems.

naftiko: "0.5"
info:
  label: "Wealth Management Portfolio Lookup"
  description: "Retrieves wealth management portfolio lookup data from the Standard Chartered international banking systems."
  tags:
    - wealth
    - standard-chartered
    - lookup
capability:
  exposes:
    - type: mcp
      namespace: wealth
      port: 8080
      tools:
        - name: wealth-management-portfolio-lookup
          description: "Retrieves wealth management portfolio lookup data from the Standard Chartered international banking systems."
          inputParameters:
            - name: input_id
              in: body
              type: string
              description: "The input id."
          call: "standard-chartered.wealth-management-portfolio-lookup"
          with:
            input_id: "{{input_id}}"
          outputParameters:
            - name: result
              type: string
              mapping: "$.data"
            - name: status
              type: string
              mapping: "$.status"
  consumes:
    - type: http
      namespace: standard-chartered
      baseUri: "https://api.sc.com/v2"
      authentication:
        type: bearer
        token: "$secrets.sc_api_token"
      resources:
        - name: resource
          path: "/wealth/management/portfolio/lookup/{{input_id}}"
          inputParameters:
            - name: input_id
              in: path
          operations:
            - name: wealth-management-portfolio-lookup
              method: GET

Sends a WhatsApp notification to a client about their banking transaction or account update.

naftiko: "0.5"
info:
  label: "WhatsApp Client Notification Sender"
  description: "Sends a WhatsApp notification to a client about their banking transaction or account update."
  tags:
    - notifications
    - whatsapp
    - customer-service
capability:
  exposes:
    - type: mcp
      namespace: client-notifications
      port: 8080
      tools:
        - name: send-whatsapp-notification
          description: "Send a WhatsApp notification to a client."
          inputParameters:
            - name: phone_number
              in: body
              type: string
              description: "The client phone number in international format."
            - name: template_name
              in: body
              type: string
              description: "The WhatsApp message template name."
            - name: template_params
              in: body
              type: object
              description: "Template parameters."
          call: "whatsapp.send-message"
          with:
            to: "{{phone_number}}"
            template: "{{template_name}}"
            parameters: "{{template_params}}"
  consumes:
    - type: http
      namespace: whatsapp
      baseUri: "https://graph.facebook.com/v17.0"
      authentication:
        type: bearer
        token: "$secrets.whatsapp_business_token"
      resources:
        - name: messages
          path: "/messages"
          operations:
            - name: send-message
              method: POST

Retrieves employee information from Workday by employee ID.

naftiko: "0.5"
info:
  label: "Workday Employee Lookup"
  description: "Retrieves employee information from Workday by employee ID."
  tags:
    - hr
    - workday
    - directory
capability:
  exposes:
    - type: mcp
      namespace: hr
      port: 8080
      tools:
        - name: get-employee
          description: "Look up a Standard Chartered employee in Workday by ID."
          inputParameters:
            - name: employee_id
              in: body
              type: string
              description: "The Workday employee ID."
          call: "workday.get-worker"
          with:
            worker_id: "{{employee_id}}"
  consumes:
    - type: http
      namespace: workday
      baseUri: "https://wd2-impl-services1.workday.com/ccx/api/v1"
      authentication:
        type: bearer
        token: "$secrets.workday_token"
      resources:
        - name: workers
          path: "/workers/{{worker_id}}"
          inputParameters:
            - name: worker_id
              in: path
          operations:
            - name: get-worker
              method: GET