Scotiabank Capabilities
Naftiko 0.5 capability definitions for Scotiabank - 100 capabilities showing integration workflows and service orchestrations.
Orchestrates aml case investigation pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Aml Case Investigation Pipeline"
description: "Orchestrates aml case investigation pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- aml
- scotiabank
- servicenow
- snowflake
- slack
capability:
exposes:
- type: mcp
namespace: aml
port: 8080
tools:
- name: aml-case-investigation-pipeline
description: "Orchestrates aml case investigation pipeline across banking and financial services 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://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/aml"
operations:
- name: execute-1
method: POST
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/aml"
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/aml"
operations:
- name: execute-3
method: POST
Screens a batch of transactions against AML rules via the compliance API, logs results to Splunk, and creates ServiceNow cases for flagged transactions.
naftiko: "0.5"
info:
label: "AML Transaction Screening Pipeline"
description: "Screens a batch of transactions against AML rules via the compliance API, logs results to Splunk, and creates ServiceNow cases for flagged transactions."
tags:
- compliance
- aml
- mulesoft
- splunk
- servicenow
capability:
exposes:
- type: mcp
namespace: aml-screening
port: 8080
tools:
- name: screen-transactions
description: "Given a batch ID, screen transactions, log to Splunk, and create cases for flagged items."
inputParameters:
- name: batch_id
in: body
type: string
description: "The transaction batch ID."
steps:
- name: run-screening
type: call
call: "mulesoft.screen-batch"
with:
batch_id: "{{batch_id}}"
- name: log-results
type: call
call: "splunk.create-event"
with:
index: "aml_screening"
event: "Batch {{batch_id}} screened. Total: {{run-screening.total}}. Flagged: {{run-screening.flagged_count}}."
- name: create-cases
type: call
call: "servicenow.create-task"
with:
short_description: "AML flagged transactions: Batch {{batch_id}}"
assigned_group: "AML_Investigations"
description: "Batch {{batch_id}} — {{run-screening.flagged_count}} transactions flagged for review. Total screened: {{run-screening.total}}."
consumes:
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: screening
path: "/compliance/aml/screen"
operations:
- name: screen-batch
method: POST
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: events
path: "/collectors/event"
operations:
- name: create-event
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: tasks
path: "/table/task"
operations:
- name: create-task
method: POST
Orchestrates anti fraud transaction monitoring pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Anti Fraud Transaction Monitoring Pipeline"
description: "Orchestrates anti fraud transaction monitoring pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- anti
- scotiabank
- servicenow
- snowflake
- slack
capability:
exposes:
- type: mcp
namespace: anti
port: 8080
tools:
- name: anti-fraud-transaction-monitoring-pipeline
description: "Orchestrates anti fraud transaction monitoring pipeline across banking and financial services 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://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/anti"
operations:
- name: execute-1
method: POST
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/anti"
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/anti"
operations:
- name: execute-3
method: POST
Orchestrates atm cash management pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Atm Cash Management Pipeline"
description: "Orchestrates atm cash management pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- atm
- scotiabank
- slack
- jira
- teams
capability:
exposes:
- type: mcp
namespace: atm
port: 8080
tools:
- name: atm-cash-management-pipeline
description: "Orchestrates atm cash management pipeline across banking and financial services 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/atm"
operations:
- name: execute-1
method: POST
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/atm"
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/atm"
operations:
- name: execute-3
method: POST
Retrieves auto loan payment schedule data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Auto Loan Payment Schedule"
description: "Retrieves auto loan payment schedule data from the Scotiabank banking and financial services systems."
tags:
- auto
- scotiabank
- schedule
capability:
exposes:
- type: mcp
namespace: auto
port: 8080
tools:
- name: auto-loan-payment-schedule
description: "Retrieves auto loan payment schedule data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.auto-loan-payment-schedule"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/auto/loan/payment/schedule/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: auto-loan-payment-schedule
method: GET
Retrieves the latest build status for an Azure DevOps pipeline.
naftiko: "0.5"
info:
label: "Azure DevOps Build Status"
description: "Retrieves the latest build status for an Azure DevOps pipeline."
tags:
- ci-cd
- engineering
- azure-devops
capability:
exposes:
- type: mcp
namespace: devops-ci
port: 8080
tools:
- name: get-build-status
description: "Look up latest build for an Azure DevOps pipeline."
inputParameters:
- name: project
in: body
type: string
description: "The project name."
- name: pipeline_id
in: body
type: string
description: "The pipeline ID."
call: "azdevops.get-latest-build"
with:
project: "{{project}}"
pipeline_id: "{{pipeline_id}}"
consumes:
- type: http
namespace: azdevops
baseUri: "https://dev.azure.com/scotiabank"
authentication:
type: basic
username: "$secrets.azdevops_user"
password: "$secrets.azdevops_pat"
resources:
- name: builds
path: "/{{project}}/_apis/build/builds?definitions={{pipeline_id}}&$top=1&api-version=7.0"
inputParameters:
- name: project
in: path
- name: pipeline_id
in: path
operations:
- name: get-latest-build
method: GET
Retrieves a secret value from Azure Key Vault for secure credential management in banking applications.
naftiko: "0.5"
info:
label: "Azure Key Vault Secret Retrieval"
description: "Retrieves a secret value from Azure Key Vault for secure credential management in banking applications."
tags:
- security
- credentials
- azure-key-vault
capability:
exposes:
- type: mcp
namespace: secret-mgmt
port: 8080
tools:
- name: get-secret
description: "Retrieve a secret from Azure Key Vault."
inputParameters:
- name: secret_name
in: body
type: string
description: "The secret name."
call: "keyvault.get-secret"
with:
secret_name: "{{secret_name}}"
consumes:
- type: http
namespace: keyvault
baseUri: "https://scotiabank-vault.vault.azure.net"
authentication:
type: bearer
token: "$secrets.azure_keyvault_token"
resources:
- name: secrets
path: "/secrets/{{secret_name}}?api-version=7.4"
inputParameters:
- name: secret_name
in: path
operations:
- name: get-secret
method: GET
Queries Datadog for ATM device health metrics by branch and alerts the operations team via Microsoft Teams when issues are detected.
naftiko: "0.5"
info:
label: "Branch ATM Health Monitor"
description: "Queries Datadog for ATM device health metrics by branch and alerts the operations team via Microsoft Teams when issues are detected."
tags:
- operations
- atm
- datadog
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: atm-monitoring
port: 8080
tools:
- name: check-atm-health
description: "Given a branch code, check ATM health in Datadog and alert if issues."
inputParameters:
- name: branch_code
in: body
type: string
description: "The branch code."
steps:
- name: get-atm-metrics
type: call
call: "datadog.get-hosts"
with:
filter: "branch:{{branch_code}},device:atm"
- name: notify-ops
type: call
call: "msteams.send-message"
with:
channel_id: "atm_operations"
text: "ATM Health Check — Branch {{branch_code}}: {{get-atm-metrics.total_matching}} ATMs monitored. Check Datadog for details."
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: apiKey
key: "$secrets.datadog_api_key"
resources:
- name: hosts
path: "/hosts?filter={{filter}}"
inputParameters:
- name: filter
in: path
operations:
- name: get-hosts
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Orchestrates branch performance analytics pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Branch Performance Analytics Pipeline"
description: "Orchestrates branch performance analytics pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- branch
- scotiabank
- jira
- teams
- splunk
capability:
exposes:
- type: mcp
namespace: branch
port: 8080
tools:
- name: branch-performance-analytics-pipeline
description: "Orchestrates branch performance analytics pipeline across banking and financial services 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://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/branch"
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/branch"
operations:
- name: execute-2
method: POST
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: splunk-resource
path: "/api/branch"
operations:
- name: execute-3
method: POST
Retrieves business account cash flow summary data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Business Account Cash Flow Summary"
description: "Retrieves business account cash flow summary data from the Scotiabank banking and financial services systems."
tags:
- business
- scotiabank
- summary
capability:
exposes:
- type: mcp
namespace: business
port: 8080
tools:
- name: business-account-cash-flow-summary
description: "Retrieves business account cash flow summary data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.business-account-cash-flow-summary"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/business/account/cash/flow/summary/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: business-account-cash-flow-summary
method: GET
Orchestrates business loan origination pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Business Loan Origination Pipeline"
description: "Orchestrates business loan origination pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- business
- scotiabank
- teams
- splunk
- confluence
capability:
exposes:
- type: mcp
namespace: business
port: 8080
tools:
- name: business-loan-origination-pipeline
description: "Orchestrates business loan origination pipeline across banking and financial services 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: "confluence.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/business"
operations:
- name: execute-1
method: POST
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: splunk-resource
path: "/api/business"
operations:
- name: execute-2
method: POST
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: confluence-resource
path: "/api/business"
operations:
- name: execute-3
method: POST
Queries Cloudflare CDN performance metrics for Scotiabank digital properties.
naftiko: "0.5"
info:
label: "Cloudflare CDN Performance"
description: "Queries Cloudflare CDN performance metrics for Scotiabank digital properties."
tags: [infrastructure, cdn, cloudflare]
capability:
exposes:
- type: mcp
namespace: cdn
port: 8080
tools:
- name: get-cdn-performance
description: "Retrieve Cloudflare zone analytics."
inputParameters:
- name: zone_id
in: body
type: string
description: "Cloudflare zone ID."
call: "cloudflare.get-zone-analytics"
with:
zone_id: "{{zone_id}}"
consumes:
- type: http
namespace: cloudflare
baseUri: "https://api.cloudflare.com/client/v4"
authentication:
type: bearer
token: "$secrets.cloudflare_token"
resources:
- name: analytics
path: "/zones/{{zone_id}}/analytics/dashboard"
inputParameters:
- name: zone_id
in: path
operations:
- name: get-zone-analytics
method: GET
Searches Confluence for policy and operations documentation.
naftiko: "0.5"
info:
label: "Confluence Documentation Search"
description: "Searches Confluence for policy and operations documentation."
tags:
- documentation
- knowledge-management
- confluence
capability:
exposes:
- type: mcp
namespace: knowledge
port: 8080
tools:
- name: search-docs
description: "Search Confluence for documentation."
inputParameters:
- name: query
in: body
type: string
description: "The search keyword."
call: "confluence.search"
with:
query: "{{query}}"
consumes:
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: basic
username: "$secrets.confluence_user"
password: "$secrets.confluence_api_token"
resources:
- name: search
path: "/search?cql=type=page AND text~\"{{query}}\""
inputParameters:
- name: query
in: path
operations:
- name: search
method: GET
Orchestrates correspondent banking compliance pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Correspondent Banking Compliance Pipeline"
description: "Orchestrates correspondent banking compliance pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- correspondent
- scotiabank
- scotiabank
- salesforce
- servicenow
capability:
exposes:
- type: mcp
namespace: correspondent
port: 8080
tools:
- name: correspondent-banking-compliance-pipeline
description: "Orchestrates correspondent banking compliance pipeline across banking and financial services 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: "scotiabank.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: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/correspondent"
operations:
- name: execute-1
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/correspondent"
operations:
- name: execute-2
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/correspondent"
operations:
- name: execute-3
method: POST
When a credit card dispute is filed, creates a ServiceNow case, pulls transaction details via MuleSoft, notifies the disputes team in Microsoft Teams, and sends a status update email via Microsoft Outlook.
naftiko: "0.5"
info:
label: "Credit Card Dispute Resolution Pipeline"
description: "When a credit card dispute is filed, creates a ServiceNow case, pulls transaction details via MuleSoft, notifies the disputes team in Microsoft Teams, and sends a status update email via Microsoft Outlook."
tags:
- payments
- disputes
- servicenow
- mulesoft
- microsoft-teams
- microsoft-outlook
capability:
exposes:
- type: mcp
namespace: card-disputes
port: 8080
tools:
- name: process-card-dispute
description: "Given a transaction ID and customer ID, create a dispute case, pull details, and notify."
inputParameters:
- name: transaction_id
in: body
type: string
description: "The disputed transaction ID."
- name: customer_id
in: body
type: string
description: "The customer ID."
- name: dispute_reason
in: body
type: string
description: "The reason for dispute."
steps:
- name: get-transaction
type: call
call: "mulesoft.get-transaction"
with:
transaction_id: "{{transaction_id}}"
- name: get-customer
type: call
call: "salesforce.get-customer"
with:
customer_id: "{{customer_id}}"
- name: create-dispute-case
type: call
call: "servicenow.create-case"
with:
short_description: "Card Dispute: {{get-customer.name}} — {{get-transaction.merchant}}"
category: "card_dispute"
assigned_group: "Card_Disputes"
description: "Customer: {{get-customer.name}}. Transaction: {{transaction_id}} at {{get-transaction.merchant}} for {{get-transaction.amount}} {{get-transaction.currency}}. Reason: {{dispute_reason}}."
- name: notify-disputes-team
type: call
call: "msteams.send-message"
with:
channel_id: "card_disputes"
text: "New Dispute: {{get-customer.name}} — {{get-transaction.merchant}} ({{get-transaction.amount}} {{get-transaction.currency}}). Case: {{create-dispute-case.number}}. Reason: {{dispute_reason}}."
- name: send-customer-email
type: call
call: "outlook.send-mail"
with:
recipient: "{{get-customer.email}}"
subject: "Dispute Filed: {{create-dispute-case.number}}"
body: "Dear {{get-customer.name}}, your dispute for {{get-transaction.amount}} {{get-transaction.currency}} at {{get-transaction.merchant}} has been filed. Reference: {{create-dispute-case.number}}."
consumes:
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: transactions
path: "/payments/transactions/{{transaction_id}}"
inputParameters:
- name: transaction_id
in: path
operations:
- name: get-transaction
method: GET
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: customers
path: "/sobjects/Account/{{customer_id}}"
inputParameters:
- name: customer_id
in: path
operations:
- name: get-customer
method: GET
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: cases
path: "/table/sn_customerservice_case"
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
- type: http
namespace: outlook
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: mail
path: "/me/sendMail"
operations:
- name: send-mail
method: POST
Retrieves credit card rewards balance data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Credit Card Rewards Balance"
description: "Retrieves credit card rewards balance data from the Scotiabank banking and financial services systems."
tags:
- credit
- scotiabank
- balance
capability:
exposes:
- type: mcp
namespace: credit
port: 8080
tools:
- name: credit-card-rewards-balance
description: "Retrieves credit card rewards balance data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.credit-card-rewards-balance"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/credit/card/rewards/balance/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: credit-card-rewards-balance
method: GET
Orchestrates credit risk monitoring pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Credit Risk Monitoring Pipeline"
description: "Orchestrates credit risk monitoring pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- credit
- scotiabank
- slack
- jira
- teams
capability:
exposes:
- type: mcp
namespace: credit
port: 8080
tools:
- name: credit-risk-monitoring-pipeline
description: "Orchestrates credit risk monitoring pipeline across banking and financial services 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/credit"
operations:
- name: execute-1
method: POST
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/credit"
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/credit"
operations:
- name: execute-3
method: POST
Orchestrates customer accessibility compliance pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Accessibility Compliance Pipeline"
description: "Orchestrates customer accessibility compliance pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- jira
- teams
- splunk
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-accessibility-compliance-pipeline
description: "Orchestrates customer accessibility compliance pipeline across banking and financial services 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://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/customer"
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/customer"
operations:
- name: execute-2
method: POST
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: splunk-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
When a new customer account is created in Salesforce, provisions the account in the core banking system via MuleSoft, opens a ServiceNow onboarding ticket, and notifies the branch manager via Microsoft Teams.
naftiko: "0.5"
info:
label: "Customer Account Opening Orchestrator"
description: "When a new customer account is created in Salesforce, provisions the account in the core banking system via MuleSoft, opens a ServiceNow onboarding ticket, and notifies the branch manager via Microsoft Teams."
tags:
- banking
- account-opening
- salesforce
- mulesoft
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: account-opening
port: 8080
tools:
- name: orchestrate-account-opening
description: "Given a Salesforce customer ID, provision the core banking account, create an onboarding ticket, and notify the branch."
inputParameters:
- name: customer_id
in: body
type: string
description: "The Salesforce customer record ID."
- name: account_type
in: body
type: string
description: "The account type (e.g., chequing, savings, investment)."
- name: branch_code
in: body
type: string
description: "The Scotiabank branch code."
steps:
- name: get-customer
type: call
call: "salesforce.get-customer"
with:
customer_id: "{{customer_id}}"
- name: provision-account
type: call
call: "mulesoft.create-account"
with:
customer_name: "{{get-customer.name}}"
account_type: "{{account_type}}"
branch_code: "{{branch_code}}"
sin_hash: "{{get-customer.sin_hash}}"
- name: create-onboarding-ticket
type: call
call: "servicenow.create-incident"
with:
short_description: "New account onboarding: {{get-customer.name}} — {{account_type}}"
category: "account_onboarding"
assigned_group: "Branch_Ops_{{branch_code}}"
description: "Customer {{get-customer.name}}. Account: {{provision-account.account_number}}. Type: {{account_type}}."
- name: notify-branch
type: call
call: "msteams.send-message"
with:
channel_id: "branch_{{branch_code}}"
text: "New {{account_type}} account opened: {{get-customer.name}}. Account: {{provision-account.account_number}}. Ticket: {{create-onboarding-ticket.number}}."
consumes:
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: customers
path: "/sobjects/Account/{{customer_id}}"
inputParameters:
- name: customer_id
in: path
operations:
- name: get-customer
method: GET
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: accounts
path: "/core-banking/accounts"
operations:
- name: create-account
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.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: channel-messages
path: "/teams/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
When a customer complaint is escalated, creates a ServiceNow priority case, pulls customer relationship data from Salesforce, and notifies the branch manager and ombudsman via Microsoft Teams.
naftiko: "0.5"
info:
label: "Customer Complaint Escalation Pipeline"
description: "When a customer complaint is escalated, creates a ServiceNow priority case, pulls customer relationship data from Salesforce, and notifies the branch manager and ombudsman via Microsoft Teams."
tags:
- customer-service
- complaints
- servicenow
- salesforce
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: complaint-escalation
port: 8080
tools:
- name: escalate-complaint
description: "Given a customer ID and complaint details, create a priority case and notify relevant parties."
inputParameters:
- name: customer_id
in: body
type: string
description: "The Salesforce customer ID."
- name: complaint_summary
in: body
type: string
description: "Summary of the complaint."
- name: branch_code
in: body
type: string
description: "The originating branch code."
steps:
- name: get-customer
type: call
call: "salesforce.get-customer"
with:
customer_id: "{{customer_id}}"
- name: create-case
type: call
call: "servicenow.create-case"
with:
short_description: "Escalated Complaint: {{get-customer.name}} — Branch {{branch_code}}"
category: "customer_complaint"
urgency: "high"
assigned_group: "Customer_Relations"
description: "Customer: {{get-customer.name}} ({{get-customer.segment}}). Branch: {{branch_code}}. Complaint: {{complaint_summary}}."
- name: notify-branch-manager
type: call
call: "msteams.send-message"
with:
channel_id: "branch_{{branch_code}}"
text: "Complaint Escalated: {{get-customer.name}} ({{get-customer.segment}}). Case: {{create-case.number}}. Summary: {{complaint_summary}}."
- name: notify-ombudsman
type: call
call: "msteams.send-message"
with:
channel_id: "customer_relations"
text: "Escalated Complaint: {{get-customer.name}} — Branch {{branch_code}}. Case: {{create-case.number}}. Segment: {{get-customer.segment}}."
consumes:
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: customers
path: "/sobjects/Account/{{customer_id}}"
inputParameters:
- name: customer_id
in: path
operations:
- name: get-customer
method: GET
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: cases
path: "/table/sn_customerservice_case"
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Orchestrates customer complaint management pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Complaint Management Pipeline"
description: "Orchestrates customer complaint management pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- splunk
- confluence
- bloomberg
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-complaint-management-pipeline
description: "Orchestrates customer complaint management pipeline across banking and financial services 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: "confluence.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "bloomberg.execute-3"
with:
input: "{{input_id}}"
consumes:
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: splunk-resource
path: "/api/customer"
operations:
- name: execute-1
method: POST
- type: http
namespace: confluence
baseUri: "https://scotiabank.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: bloomberg
baseUri: "https://api.bloomberg.com/v1"
authentication:
type: bearer
token: "$secrets.bloomberg_token"
resources:
- name: bloomberg-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
Orchestrates customer cross sell pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Cross Sell Pipeline"
description: "Orchestrates customer cross sell pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- teams
- splunk
- confluence
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-cross-sell-pipeline
description: "Orchestrates customer cross sell pipeline across banking and financial services 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: "confluence.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/customer"
operations:
- name: execute-1
method: POST
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: splunk-resource
path: "/api/customer"
operations:
- name: execute-2
method: POST
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: confluence-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
Orchestrates customer data quality pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Data Quality Pipeline"
description: "Orchestrates customer data quality pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- confluence
- bloomberg
- scotiabank
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-data-quality-pipeline
description: "Orchestrates customer data quality pipeline across banking and financial services 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: "bloomberg.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "scotiabank.execute-3"
with:
input: "{{input_id}}"
consumes:
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: confluence-resource
path: "/api/customer"
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/customer"
operations:
- name: execute-2
method: POST
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
Retrieves customer digital engagement score data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Customer Digital Engagement Score"
description: "Retrieves customer digital engagement score data from the Scotiabank banking and financial services systems."
tags:
- customer
- scotiabank
- score
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-digital-engagement-score
description: "Retrieves customer digital engagement score data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.customer-digital-engagement-score"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/customer/digital/engagement/score/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: customer-digital-engagement-score
method: GET
Orchestrates customer feedback action pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Feedback Action Pipeline"
description: "Orchestrates customer feedback action pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- salesforce
- servicenow
- snowflake
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-feedback-action-pipeline
description: "Orchestrates customer feedback action pipeline across banking and financial services 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://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/customer"
operations:
- name: execute-1
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/customer"
operations:
- name: execute-2
method: POST
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
Orchestrates customer financial wellness pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Financial Wellness Pipeline"
description: "Orchestrates customer financial wellness pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- snowflake
- slack
- jira
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-financial-wellness-pipeline
description: "Orchestrates customer financial wellness pipeline across banking and financial services 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://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/customer"
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/customer"
operations:
- name: execute-2
method: POST
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
Orchestrates customer identity verification pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Identity Verification Pipeline"
description: "Orchestrates customer identity verification pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- bloomberg
- scotiabank
- salesforce
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-identity-verification-pipeline
description: "Orchestrates customer identity verification pipeline across banking and financial services 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: "scotiabank.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "salesforce.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: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/customer"
operations:
- name: execute-2
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
Orchestrates customer journey analytics pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Journey Analytics Pipeline"
description: "Orchestrates customer journey analytics pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- servicenow
- snowflake
- slack
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-journey-analytics-pipeline
description: "Orchestrates customer journey analytics pipeline across banking and financial services 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://scotiabank.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://scotiabank.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
Orchestrates customer onboarding digital pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Onboarding Digital Pipeline"
description: "Orchestrates customer onboarding digital pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- snowflake
- slack
- jira
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-onboarding-digital-pipeline
description: "Orchestrates customer onboarding digital pipeline across banking and financial services 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://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/customer"
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/customer"
operations:
- name: execute-2
method: POST
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
Retrieves customer product eligibility data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Customer Product Eligibility"
description: "Retrieves customer product eligibility data from the Scotiabank banking and financial services systems."
tags:
- customer
- scotiabank
- eligibility
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-product-eligibility
description: "Retrieves customer product eligibility data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.customer-product-eligibility"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/customer/product/eligibility/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: customer-product-eligibility
method: GET
Orchestrates customer retention intervention pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Customer Retention Intervention Pipeline"
description: "Orchestrates customer retention intervention pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- customer
- scotiabank
- scotiabank
- salesforce
- servicenow
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-retention-intervention-pipeline
description: "Orchestrates customer retention intervention pipeline across banking and financial services 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: "scotiabank.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: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/customer"
operations:
- name: execute-1
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/customer"
operations:
- name: execute-2
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/customer"
operations:
- name: execute-3
method: POST
Retrieves customer segment classification data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Customer Segment Classification"
description: "Retrieves customer segment classification data from the Scotiabank banking and financial services systems."
tags:
- customer
- scotiabank
- classification
capability:
exposes:
- type: mcp
namespace: customer
port: 8080
tools:
- name: customer-segment-classification
description: "Retrieves customer segment classification data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.customer-segment-classification"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/customer/segment/classification/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: customer-segment-classification
method: GET
Orchestrates cybersecurity threat intelligence pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Cybersecurity Threat Intelligence Pipeline"
description: "Orchestrates cybersecurity threat intelligence pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- cybersecurity
- scotiabank
- splunk
- confluence
- bloomberg
capability:
exposes:
- type: mcp
namespace: cybersecurity
port: 8080
tools:
- name: cybersecurity-threat-intelligence-pipeline
description: "Orchestrates cybersecurity threat intelligence pipeline across banking and financial services 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: "confluence.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "bloomberg.execute-3"
with:
input: "{{input_id}}"
consumes:
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: splunk-resource
path: "/api/cybersecurity"
operations:
- name: execute-1
method: POST
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: confluence-resource
path: "/api/cybersecurity"
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/cybersecurity"
operations:
- name: execute-3
method: POST
Queries Datadog for infrastructure host health.
naftiko: "0.5"
info:
label: "Datadog Infrastructure Monitor"
description: "Queries Datadog for infrastructure host health."
tags:
- monitoring
- infrastructure
- datadog
capability:
exposes:
- type: mcp
namespace: infra-monitoring
port: 8080
tools:
- name: get-host-health
description: "Query Datadog for host health."
inputParameters:
- name: host_name
in: body
type: string
description: "The host name."
call: "datadog.get-host"
with:
host_name: "{{host_name}}"
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: apiKey
key: "$secrets.datadog_api_key"
resources:
- name: hosts
path: "/hosts?filter={{host_name}}"
inputParameters:
- name: host_name
in: path
operations:
- name: get-host
method: GET
Orchestrates digital banking feature rollout pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Digital Banking Feature Rollout Pipeline"
description: "Orchestrates digital banking feature rollout pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- digital
- scotiabank
- salesforce
- servicenow
- snowflake
capability:
exposes:
- type: mcp
namespace: digital
port: 8080
tools:
- name: digital-banking-feature-rollout-pipeline
description: "Orchestrates digital banking feature rollout pipeline across banking and financial services 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://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/digital"
operations:
- name: execute-1
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/digital"
operations:
- name: execute-2
method: POST
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/digital"
operations:
- name: execute-3
method: POST
Orchestrates digital lending decisioning pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Digital Lending Decisioning Pipeline"
description: "Orchestrates digital lending decisioning pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- digital
- scotiabank
- salesforce
- servicenow
- snowflake
capability:
exposes:
- type: mcp
namespace: digital
port: 8080
tools:
- name: digital-lending-decisioning-pipeline
description: "Orchestrates digital lending decisioning pipeline across banking and financial services 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://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/digital"
operations:
- name: execute-1
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/digital"
operations:
- name: execute-2
method: POST
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/digital"
operations:
- name: execute-3
method: POST
Retrieves DocuSign envelope status for loan agreements.
naftiko: "0.5"
info:
label: "DocuSign Agreement Status"
description: "Retrieves DocuSign envelope status for loan agreements."
tags:
- lending
- document-signing
- docusign
capability:
exposes:
- type: mcp
namespace: doc-signing
port: 8080
tools:
- name: get-envelope-status
description: "Look up a DocuSign envelope status."
inputParameters:
- name: envelope_id
in: body
type: string
description: "The DocuSign envelope ID."
call: "docusign.get-envelope"
with:
envelope_id: "{{envelope_id}}"
consumes:
- type: http
namespace: docusign
baseUri: "https://na4.docusign.net/restapi/v2.1/accounts/$secrets.docusign_account_id"
authentication:
type: bearer
token: "$secrets.docusign_token"
resources:
- name: envelopes
path: "/envelopes/{{envelope_id}}"
inputParameters:
- name: envelope_id
in: path
operations:
- name: get-envelope
method: GET
On new hire creation in Workday, opens a ServiceNow onboarding ticket, provisions a SharePoint folder, 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 a SharePoint folder, and sends a Microsoft Teams welcome message."
tags:
- hr
- onboarding
- workday
- servicenow
- sharepoint
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: hr-onboarding
port: 8080
tools:
- name: trigger-onboarding
description: "Given a Workday employee ID and start date, orchestrate onboarding across ServiceNow, SharePoint, and Microsoft Teams."
inputParameters:
- name: workday_employee_id
in: body
type: string
description: "The Workday worker ID."
- name: start_date
in: body
type: string
description: "Start date in YYYY-MM-DD."
- name: department
in: body
type: string
description: "The department."
steps:
- name: get-employee
type: call
call: "workday.get-worker"
with:
worker_id: "{{workday_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"
description: "Onboarding for {{get-employee.full_name}} starting {{start_date}} in {{department}}."
- name: provision-folder
type: call
call: "sharepoint.create-folder"
with:
site_id: "hr_onboarding_site"
folder_path: "OnboardingDocs/{{get-employee.full_name}}_{{start_date}}"
- name: send-welcome
type: call
call: "msteams.send-message"
with:
channel_id: "new_hires"
text: "Welcome to Scotiabank, {{get-employee.first_name}}! Your onboarding ticket is {{open-ticket.number}}. Documents: {{provision-folder.url}}."
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://scotiabank.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: sharepoint
baseUri: "https://graph.microsoft.com/v1.0/sites"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: drive-items
path: "/{{site_id}}/drive/root:/{{folder_path}}"
inputParameters:
- name: site_id
in: path
- name: folder_path
in: path
operations:
- name: create-folder
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Orchestrates esg portfolio screening pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Esg Portfolio Screening Pipeline"
description: "Orchestrates esg portfolio screening pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- esg
- scotiabank
- bloomberg
- scotiabank
- salesforce
capability:
exposes:
- type: mcp
namespace: esg
port: 8080
tools:
- name: esg-portfolio-screening-pipeline
description: "Orchestrates esg portfolio screening pipeline across banking and financial services 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: "scotiabank.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "salesforce.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/esg"
operations:
- name: execute-1
method: POST
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/esg"
operations:
- name: execute-2
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/esg"
operations:
- name: execute-3
method: POST
Retrieves expense reports from SAP Concur, validates against Workday cost center, and opens a ServiceNow task.
naftiko: "0.5"
info:
label: "Expense Report Review Pipeline"
description: "Retrieves expense reports from SAP Concur, validates against Workday cost center, and opens a ServiceNow task."
tags:
- finance
- expense
- sap-concur
- workday
- servicenow
capability:
exposes:
- type: mcp
namespace: expense-review
port: 8080
tools:
- name: review-expense-report
description: "Validate an expense report and flag exceptions."
inputParameters:
- name: expense_report_id
in: body
type: string
description: "Concur report ID."
- name: employee_id
in: body
type: string
description: "Workday employee ID."
steps:
- name: get-expense-report
type: call
call: "concur.get-expense-report"
with:
report_id: "{{expense_report_id}}"
- name: get-employee
type: call
call: "workday.get-worker"
with:
worker_id: "{{employee_id}}"
- name: open-review-task
type: call
call: "servicenow.create-task"
with:
short_description: "Expense review: {{get-expense-report.report_name}} — {{get-employee.full_name}}"
assigned_group: "Finance_Audit"
consumes:
- type: http
namespace: concur
baseUri: "https://www.concursolutions.com/api/v3.0"
authentication:
type: bearer
token: "$secrets.concur_token"
resources:
- name: expense-reports
path: "/expense/reports/{{report_id}}"
inputParameters:
- name: report_id
in: path
operations:
- name: get-expense-report
method: GET
- 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://scotiabank.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: tasks
path: "/table/task"
operations:
- name: create-task
method: POST
Retrieves Figma file metadata for design assets.
naftiko: "0.5"
info:
label: "Figma Design File Viewer"
description: "Retrieves Figma file metadata for design assets."
tags: [design, ux, figma]
capability:
exposes:
- type: mcp
namespace: design
port: 8080
tools:
- name: get-figma-file
description: "Retrieve Figma file metadata."
inputParameters:
- name: file_key
in: body
type: string
description: "Figma file key."
call: "figma.get-file"
with:
file_key: "{{file_key}}"
consumes:
- type: http
namespace: figma
baseUri: "https://api.figma.com/v1"
authentication:
type: bearer
token: "$secrets.figma_token"
resources:
- name: files
path: "/files/{{file_key}}"
inputParameters:
- name: file_key
in: path
operations:
- name: get-file
method: GET
Retrieves foreign exchange rate lookup data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Foreign Exchange Rate Lookup"
description: "Retrieves foreign exchange rate lookup data from the Scotiabank banking and financial services systems."
tags:
- foreign
- scotiabank
- lookup
capability:
exposes:
- type: mcp
namespace: foreign
port: 8080
tools:
- name: foreign-exchange-rate-lookup
description: "Retrieves foreign exchange rate lookup data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.foreign-exchange-rate-lookup"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/foreign/exchange/rate/lookup/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: foreign-exchange-rate-lookup
method: GET
When a fraud alert is triggered, enriches with customer data from Salesforce, creates a ServiceNow security incident, blocks the account via MuleSoft, and notifies the fraud operations team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Fraud Alert Investigation Pipeline"
description: "When a fraud alert is triggered, enriches with customer data from Salesforce, creates a ServiceNow security incident, blocks the account via MuleSoft, and notifies the fraud operations team via Microsoft Teams."
tags:
- fraud-detection
- risk
- salesforce
- servicenow
- mulesoft
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: fraud-ops
port: 8080
tools:
- name: investigate-fraud-alert
description: "Given a customer ID and alert details, enrich, create incident, block account, and notify fraud ops."
inputParameters:
- name: customer_id
in: body
type: string
description: "The Salesforce customer ID."
- name: alert_type
in: body
type: string
description: "The fraud alert type."
- name: transaction_id
in: body
type: string
description: "The suspicious transaction ID."
- name: alert_score
in: body
type: number
description: "The fraud risk score."
steps:
- name: get-customer
type: call
call: "salesforce.get-customer"
with:
customer_id: "{{customer_id}}"
- name: create-security-incident
type: call
call: "servicenow.create-incident"
with:
short_description: "Fraud Alert: {{alert_type}} — {{get-customer.name}}"
category: "fraud"
urgency: "critical"
assigned_group: "Fraud_Operations"
description: "Customer: {{get-customer.name}}. Transaction: {{transaction_id}}. Alert type: {{alert_type}}. Score: {{alert_score}}."
- name: block-account
type: call
call: "mulesoft.block-account"
with:
customer_id: "{{customer_id}}"
reason: "fraud_alert_{{alert_type}}"
- name: notify-fraud-ops
type: call
call: "msteams.send-message"
with:
channel_id: "fraud_operations"
text: "FRAUD ALERT: {{alert_type}} for {{get-customer.name}}. Score: {{alert_score}}. Transaction: {{transaction_id}}. Account blocked. Incident: {{create-security-incident.number}}."
consumes:
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: customers
path: "/sobjects/Account/{{customer_id}}"
inputParameters:
- name: customer_id
in: path
operations:
- name: get-customer
method: GET
- type: http
namespace: servicenow
baseUri: "https://scotiabank.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: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: account-actions
path: "/core-banking/accounts/{{customer_id}}/block"
inputParameters:
- name: customer_id
in: path
operations:
- name: block-account
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Retrieves gic rate comparison data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Gic Rate Comparison"
description: "Retrieves gic rate comparison data from the Scotiabank banking and financial services systems."
tags:
- gic
- scotiabank
- comparison
capability:
exposes:
- type: mcp
namespace: gic
port: 8080
tools:
- name: gic-rate-comparison
description: "Retrieves gic rate comparison data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.gic-rate-comparison"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/gic/rate/comparison/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: gic-rate-comparison
method: GET
Retrieves GitHub pull request status.
naftiko: "0.5"
info:
label: "GitHub Pull Request Status"
description: "Retrieves GitHub pull request status."
tags:
- engineering
- ci-cd
- github
capability:
exposes:
- type: mcp
namespace: engineering-ci
port: 8080
tools:
- name: get-pr-status
description: "Look up a GitHub pull request."
inputParameters:
- name: repo
in: body
type: string
description: "The repo in owner/repo format."
- name: pr_number
in: body
type: string
description: "The PR number."
call: "github.get-pull-request"
with:
repo: "{{repo}}"
pr_number: "{{pr_number}}"
consumes:
- type: http
namespace: github
baseUri: "https://api.github.com/repos"
authentication:
type: bearer
token: "$secrets.github_token"
resources:
- name: pull-requests
path: "/{{repo}}/pulls/{{pr_number}}"
inputParameters:
- name: repo
in: path
- name: pr_number
in: path
operations:
- name: get-pull-request
method: GET
Retrieves latest GitLab CI pipeline status.
naftiko: "0.5"
info:
label: "GitLab CI Pipeline Status"
description: "Retrieves latest GitLab CI pipeline status."
tags: [ci-cd, engineering, gitlab]
capability:
exposes:
- type: mcp
namespace: gitlab-ci
port: 8080
tools:
- name: get-pipeline-status
description: "Look up latest GitLab pipeline."
inputParameters:
- name: project_id
in: body
type: string
description: "GitLab project ID."
call: "gitlab.get-latest-pipeline"
with:
project_id: "{{project_id}}"
consumes:
- type: http
namespace: gitlab
baseUri: "https://gitlab.scotiabank.com/api/v4"
authentication:
type: bearer
token: "$secrets.gitlab_token"
resources:
- name: pipelines
path: "/projects/{{project_id}}/pipelines?per_page=1"
inputParameters:
- name: project_id
in: path
operations:
- name: get-latest-pipeline
method: GET
Retrieves digital banking funnel analytics from Google Analytics.
naftiko: "0.5"
info:
label: "Google Analytics Digital Banking Funnel"
description: "Retrieves digital banking funnel analytics from Google Analytics."
tags:
- marketing
- analytics
- google-analytics
capability:
exposes:
- type: mcp
namespace: web-analytics
port: 8080
tools:
- name: get-banking-funnel
description: "Retrieve digital banking funnel metrics."
inputParameters:
- name: property_id
in: body
type: string
description: "Google Analytics property ID."
- name: start_date
in: body
type: string
description: "Start date."
- name: end_date
in: body
type: string
description: "End date."
call: "ga.run-report"
with:
property_id: "{{property_id}}"
start_date: "{{start_date}}"
end_date: "{{end_date}}"
consumes:
- type: http
namespace: ga
baseUri: "https://analyticsdata.googleapis.com/v1beta"
authentication:
type: bearer
token: "$secrets.google_analytics_token"
resources:
- name: reports
path: "/properties/{{property_id}}:runReport"
inputParameters:
- name: property_id
in: path
operations:
- name: run-report
method: POST
Checks Informatica data integration job status.
naftiko: "0.5"
info:
label: "Informatica Data Integration Monitor"
description: "Checks Informatica data integration job status."
tags: [data-engineering, etl, informatica]
capability:
exposes:
- type: mcp
namespace: data-integration
port: 8080
tools:
- name: get-job-status
description: "Check Informatica job status."
inputParameters:
- name: job_id
in: body
type: string
description: "Informatica job ID."
call: "informatica.get-job"
with:
job_id: "{{job_id}}"
consumes:
- type: http
namespace: informatica
baseUri: "https://dm-us.informaticacloud.com/saas/api/v2"
authentication:
type: bearer
token: "$secrets.informatica_token"
resources:
- name: jobs
path: "/job/{{job_id}}"
inputParameters:
- name: job_id
in: path
operations:
- name: get-job
method: GET
Checks the status of an Interac e-Transfer via the payments API.
naftiko: "0.5"
info:
label: "Interac e-Transfer Status"
description: "Checks the status of an Interac e-Transfer via the payments API."
tags:
- payments
- interac
- mulesoft
capability:
exposes:
- type: mcp
namespace: etransfer
port: 8080
tools:
- name: get-etransfer-status
description: "Look up an Interac e-Transfer by reference."
inputParameters:
- name: transfer_reference
in: body
type: string
description: "The e-Transfer reference number."
call: "mulesoft.get-etransfer"
with:
reference: "{{transfer_reference}}"
consumes:
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: etransfers
path: "/payments/interac/{{reference}}"
inputParameters:
- name: reference
in: path
operations:
- name: get-etransfer
method: GET
Retrieves investment portfolio allocation data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Investment Portfolio Allocation"
description: "Retrieves investment portfolio allocation data from the Scotiabank banking and financial services systems."
tags:
- investment
- scotiabank
- allocation
capability:
exposes:
- type: mcp
namespace: investment
port: 8080
tools:
- name: investment-portfolio-allocation
description: "Retrieves investment portfolio allocation data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.investment-portfolio-allocation"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/investment/portfolio/allocation/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: investment-portfolio-allocation
method: GET
When a trade is executed on the wealth management platform, logs the trade in Splunk, updates the client record in Salesforce, and notifies the investment advisor via Microsoft Teams.
naftiko: "0.5"
info:
label: "Investment Trade Execution Notifier"
description: "When a trade is executed on the wealth management platform, logs the trade in Splunk, updates the client record in Salesforce, and notifies the investment advisor via Microsoft Teams."
tags:
- wealth
- trading
- splunk
- salesforce
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: trade-execution
port: 8080
tools:
- name: notify-trade-execution
description: "Given trade details, log to Splunk, update Salesforce, and notify the advisor."
inputParameters:
- name: trade_id
in: body
type: string
description: "The trade execution ID."
- name: client_id
in: body
type: string
description: "The Salesforce client ID."
- name: symbol
in: body
type: string
description: "The traded security symbol."
- name: quantity
in: body
type: number
description: "The quantity traded."
- name: price
in: body
type: number
description: "The execution price."
- name: side
in: body
type: string
description: "Buy or Sell."
steps:
- name: log-trade
type: call
call: "splunk.create-event"
with:
index: "trade_executions"
event: "Trade {{trade_id}}: {{side}} {{quantity}} {{symbol}} at {{price}}. Client: {{client_id}}."
- name: update-client
type: call
call: "salesforce.update-activity"
with:
client_id: "{{client_id}}"
activity_type: "trade_execution"
description: "{{side}} {{quantity}} {{symbol}} at {{price}}. Trade: {{trade_id}}."
- name: notify-advisor
type: call
call: "msteams.send-message"
with:
channel_id: "wealth_advisors"
text: "Trade Executed: {{side}} {{quantity}} {{symbol}} at ${{price}} for client {{client_id}}. Trade ID: {{trade_id}}."
consumes:
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: events
path: "/collectors/event"
operations:
- name: create-event
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: activities
path: "/sobjects/Task"
operations:
- name: update-activity
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Orchestrates investment trade settlement pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Investment Trade Settlement Pipeline"
description: "Orchestrates investment trade settlement pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- investment
- scotiabank
- bloomberg
- scotiabank
- salesforce
capability:
exposes:
- type: mcp
namespace: investment
port: 8080
tools:
- name: investment-trade-settlement-pipeline
description: "Orchestrates investment trade settlement pipeline across banking and financial services 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: "scotiabank.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "salesforce.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/investment"
operations:
- name: execute-1
method: POST
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/investment"
operations:
- name: execute-2
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/investment"
operations:
- name: execute-3
method: POST
Fetches active sprint details from Jira.
naftiko: "0.5"
info:
label: "Jira Sprint Tracker"
description: "Fetches active sprint details from Jira."
tags:
- engineering
- project-management
- jira
capability:
exposes:
- type: mcp
namespace: engineering-pm
port: 8080
tools:
- name: get-sprint-status
description: "Retrieve active sprint details for a Jira board."
inputParameters:
- name: board_id
in: body
type: string
description: "The Jira board ID."
call: "jira.get-active-sprint"
with:
board_id: "{{board_id}}"
consumes:
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/agile/1.0"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: sprints
path: "/board/{{board_id}}/sprint?state=active"
inputParameters:
- name: board_id
in: path
operations:
- name: get-active-sprint
method: GET
Generates release notes from Jira issues and publishes to Confluence.
naftiko: "0.5"
info:
label: "Jira to Confluence Release Notes"
description: "Generates release notes from Jira issues and publishes to Confluence."
tags:
- engineering
- release-management
- jira
- confluence
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: release-mgmt
port: 8080
tools:
- name: generate-release-notes
description: "Fetch completed Jira issues and publish release notes."
inputParameters:
- name: project_key
in: body
type: string
description: "Jira project key."
- name: version_name
in: body
type: string
description: "Release version."
steps:
- name: get-issues
type: call
call: "jira.search-issues"
with:
jql: "project = {{project_key}} AND fixVersion = '{{version_name}}' AND status = Done"
- name: create-notes
type: call
call: "confluence.create-page"
with:
space_key: "ENG"
title: "Release Notes: {{project_key}} {{version_name}}"
body: "Release {{version_name}}. Issues: {{get-issues.total}}."
- name: notify-team
type: call
call: "msteams.send-message"
with:
channel_id: "engineering_releases"
text: "Release notes: {{project_key}} {{version_name}}. URL: {{create-notes.url}}."
consumes:
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: search
path: "/search?jql={{jql}}"
inputParameters:
- name: jql
in: path
operations:
- name: search-issues
method: GET
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: basic
username: "$secrets.confluence_user"
password: "$secrets.confluence_api_token"
resources:
- name: content
path: "/content"
operations:
- name: create-page
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Retrieves a lending application status from the Salesforce lending module, returning application stage, credit decision, and next steps.
naftiko: "0.5"
info:
label: "Lending Application Status"
description: "Retrieves a lending application status from the Salesforce lending module, returning application stage, credit decision, and next steps."
tags:
- lending
- credit
- salesforce
capability:
exposes:
- type: mcp
namespace: lending
port: 8080
tools:
- name: get-lending-application
description: "Look up a lending application by ID."
inputParameters:
- name: application_id
in: body
type: string
description: "The Salesforce lending application ID."
call: "salesforce.get-application"
with:
application_id: "{{application_id}}"
outputParameters:
- name: stage
type: string
mapping: "$.Stage__c"
- name: credit_decision
type: string
mapping: "$.Credit_Decision__c"
- name: amount_requested
type: number
mapping: "$.Amount_Requested__c"
- name: applicant_name
type: string
mapping: "$.Applicant_Name__c"
consumes:
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: applications
path: "/sobjects/Lending_Application__c/{{application_id}}"
inputParameters:
- name: application_id
in: path
operations:
- name: get-application
method: GET
Retrieves line of credit utilization data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Line Of Credit Utilization"
description: "Retrieves line of credit utilization data from the Scotiabank banking and financial services systems."
tags:
- line
- scotiabank
- utilization
capability:
exposes:
- type: mcp
namespace: line
port: 8080
tools:
- name: line-of-credit-utilization
description: "Retrieves line of credit utilization data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.line-of-credit-utilization"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/line/of/credit/utilization/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: line-of-credit-utilization
method: GET
Retrieves LinkedIn job posting status.
naftiko: "0.5"
info:
label: "LinkedIn Recruitment Status"
description: "Retrieves LinkedIn job posting status."
tags:
- recruitment
- linkedin
capability:
exposes:
- type: mcp
namespace: recruitment
port: 8080
tools:
- name: get-job-posting-status
description: "Look up a LinkedIn job posting."
inputParameters:
- name: job_posting_id
in: body
type: string
description: "The LinkedIn job posting ID."
call: "linkedin.get-job-posting"
with:
job_posting_id: "{{job_posting_id}}"
consumes:
- type: http
namespace: linkedin
baseUri: "https://api.linkedin.com/v2"
authentication:
type: bearer
token: "$secrets.linkedin_token"
resources:
- name: job-postings
path: "/jobPostings/{{job_posting_id}}"
inputParameters:
- name: job_posting_id
in: path
operations:
- name: get-job-posting
method: GET
Retrieves a Looker dashboard for risk analytics.
naftiko: "0.5"
info:
label: "Looker Risk Analytics Dashboard"
description: "Retrieves a Looker dashboard for risk analytics."
tags: [risk, analytics, looker]
capability:
exposes:
- type: mcp
namespace: looker-analytics
port: 8080
tools:
- name: get-risk-dashboard
description: "Retrieve a Looker risk dashboard."
inputParameters:
- name: dashboard_id
in: body
type: string
description: "Looker dashboard ID."
call: "looker.get-dashboard"
with:
dashboard_id: "{{dashboard_id}}"
consumes:
- type: http
namespace: looker
baseUri: "https://scotiabank.looker.com/api/4.0"
authentication:
type: bearer
token: "$secrets.looker_token"
resources:
- name: dashboards
path: "/dashboards/{{dashboard_id}}"
inputParameters:
- name: dashboard_id
in: path
operations:
- name: get-dashboard
method: GET
Orchestrates market risk var calculation pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Market Risk Var Calculation Pipeline"
description: "Orchestrates market risk var calculation pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- market
- scotiabank
- slack
- jira
- teams
capability:
exposes:
- type: mcp
namespace: market
port: 8080
tools:
- name: market-risk-var-calculation-pipeline
description: "Orchestrates market risk var calculation pipeline across banking and financial services 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/market"
operations:
- name: execute-1
method: POST
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/market"
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/market"
operations:
- name: execute-3
method: POST
Sends a formatted message to a Microsoft Teams channel.
naftiko: "0.5"
info:
label: "Microsoft Teams Channel Notifier"
description: "Sends a formatted message to a Microsoft Teams channel."
tags:
- communications
- messaging
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: comms
port: 8080
tools:
- name: send-teams-notification
description: "Send a message to a Microsoft Teams channel."
inputParameters:
- name: channel_id
in: body
type: string
description: "The Teams channel ID."
- name: message
in: body
type: string
description: "The message text."
call: "msteams.send-message"
with:
channel_id: "{{channel_id}}"
text: "{{message}}"
consumes:
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Responds to mobile banking incidents by triaging severity, alerting engineering, and communicating with affected customers.
naftiko: "0.5"
info:
label: "Mobile Banking Incident Pipeline"
description: "Responds to mobile banking incidents by triaging severity, alerting engineering, and communicating with affected customers."
tags:
- mobile
- scotiabank
- datadog
- jira
capability:
exposes:
- type: mcp
namespace: mobile
port: 8080
tools:
- name: mobile-banking-incident-pipeline
description: "Responds to mobile banking incidents by triaging severity, alerting engineering, and communicating with affected customers."
inputParameters:
- name: input_id
in: body
type: string
description: "The primary input identifier."
steps:
- name: triage-incident
type: call
call: "datadog.query-metrics"
with:
input: "{{input_id}}"
- name: alert-team
type: call
call: "slack.post-message"
with:
input: "{{input_id}}"
- name: create-ticket
type: call
call: "jira.create-issue"
with:
input: "{{input_id}}"
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v2"
authentication:
type: bearer
token: "$secrets.datadog_api_key"
resources:
- name: datadog-resource
path: "/query"
operations:
- name: query-metrics
method: GET
- type: http
namespace: slack
baseUri: "https://slack.com/api"
authentication:
type: bearer
token: "$secrets.slack_bot_token"
resources:
- name: slack-resource
path: "/chat.postMessage"
operations:
- name: post-message
method: POST
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/issue"
operations:
- name: create-issue
method: POST
Retrieves mobile deposit limit check data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Mobile Deposit Limit Check"
description: "Retrieves mobile deposit limit check data from the Scotiabank banking and financial services systems."
tags:
- mobile
- scotiabank
- check
capability:
exposes:
- type: mcp
namespace: mobile
port: 8080
tools:
- name: mobile-deposit-limit-check
description: "Retrieves mobile deposit limit check data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.mobile-deposit-limit-check"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/mobile/deposit/limit/check/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: mobile-deposit-limit-check
method: GET
Orchestrates mortgage application decisioning pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Mortgage Application Decisioning Pipeline"
description: "Orchestrates mortgage application decisioning pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- mortgage
- scotiabank
- scotiabank
- salesforce
- servicenow
capability:
exposes:
- type: mcp
namespace: mortgage
port: 8080
tools:
- name: mortgage-application-decisioning-pipeline
description: "Orchestrates mortgage application decisioning pipeline across banking and financial services 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: "scotiabank.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: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/mortgage"
operations:
- name: execute-1
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/mortgage"
operations:
- name: execute-2
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/mortgage"
operations:
- name: execute-3
method: POST
When a mortgage application is submitted in Salesforce, pulls credit data via MuleSoft, runs affordability checks, creates a ServiceNow task for the underwriting team, and notifies the mortgage advisor via Microsoft Teams.
naftiko: "0.5"
info:
label: "Mortgage Application Pipeline"
description: "When a mortgage application is submitted in Salesforce, pulls credit data via MuleSoft, runs affordability checks, creates a ServiceNow task for the underwriting team, and notifies the mortgage advisor via Microsoft Teams."
tags:
- lending
- mortgage
- salesforce
- mulesoft
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: mortgage-pipeline
port: 8080
tools:
- name: process-mortgage-application
description: "Given a mortgage application ID, pull credit data, create underwriting task, and notify advisor."
inputParameters:
- name: application_id
in: body
type: string
description: "The Salesforce mortgage application ID."
steps:
- name: get-application
type: call
call: "salesforce.get-mortgage-app"
with:
application_id: "{{application_id}}"
- name: get-credit-data
type: call
call: "mulesoft.get-credit-report"
with:
customer_id: "{{get-application.applicant_id}}"
- name: create-underwriting-task
type: call
call: "servicenow.create-task"
with:
short_description: "Mortgage underwriting: {{get-application.applicant_name}} — ${{get-application.amount}}"
assigned_group: "Mortgage_Underwriting"
description: "Application {{application_id}}. Amount: ${{get-application.amount}}. Credit score: {{get-credit-data.score}}. DTI: {{get-credit-data.debt_to_income}}."
- name: notify-advisor
type: call
call: "msteams.send-message"
with:
channel_id: "mortgage_advisors"
text: "Mortgage application submitted: {{get-application.applicant_name}} for ${{get-application.amount}}. Credit: {{get-credit-data.score}}. Task: {{create-underwriting-task.number}}."
consumes:
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: mortgage-apps
path: "/sobjects/Mortgage_Application__c/{{application_id}}"
inputParameters:
- name: application_id
in: path
operations:
- name: get-mortgage-app
method: GET
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: credit
path: "/credit/customers/{{customer_id}}/report"
inputParameters:
- name: customer_id
in: path
operations:
- name: get-credit-report
method: GET
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: tasks
path: "/table/task"
operations:
- name: create-task
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Retrieves mortgage rate schedule lookup data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Mortgage Rate Schedule Lookup"
description: "Retrieves mortgage rate schedule lookup data from the Scotiabank banking and financial services systems."
tags:
- mortgage
- scotiabank
- lookup
capability:
exposes:
- type: mcp
namespace: mortgage
port: 8080
tools:
- name: mortgage-rate-schedule-lookup
description: "Retrieves mortgage rate schedule lookup data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.mortgage-rate-schedule-lookup"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/mortgage/rate/schedule/lookup/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: mortgage-rate-schedule-lookup
method: GET
Queries New Relic for banking application performance.
naftiko: "0.5"
info:
label: "New Relic Application Performance"
description: "Queries New Relic for banking application performance."
tags: [monitoring, performance, new-relic]
capability:
exposes:
- type: mcp
namespace: apm
port: 8080
tools:
- name: get-app-performance
description: "Check New Relic APM metrics."
inputParameters:
- name: app_id
in: body
type: string
description: "New Relic app ID."
call: "newrelic.get-app"
with:
app_id: "{{app_id}}"
consumes:
- type: http
namespace: newrelic
baseUri: "https://api.newrelic.com/v2"
authentication:
type: apiKey
key: "$secrets.newrelic_api_key"
resources:
- name: applications
path: "/applications/{{app_id}}.json"
inputParameters:
- name: app_id
in: path
operations:
- name: get-app
method: GET
Orchestrates open banking api pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Open Banking Api Pipeline"
description: "Orchestrates open banking api pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- open
- scotiabank
- servicenow
- snowflake
- slack
capability:
exposes:
- type: mcp
namespace: open
port: 8080
tools:
- name: open-banking-api-pipeline
description: "Orchestrates open banking api pipeline across banking and financial services 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://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/open"
operations:
- name: execute-1
method: POST
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/open"
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/open"
operations:
- name: execute-3
method: POST
Orchestrates operational risk incident pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Operational Risk Incident Pipeline"
description: "Orchestrates operational risk incident pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- operational
- scotiabank
- splunk
- confluence
- bloomberg
capability:
exposes:
- type: mcp
namespace: operational
port: 8080
tools:
- name: operational-risk-incident-pipeline
description: "Orchestrates operational risk incident pipeline across banking and financial services 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: "confluence.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "bloomberg.execute-3"
with:
input: "{{input_id}}"
consumes:
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: splunk-resource
path: "/api/operational"
operations:
- name: execute-1
method: POST
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: confluence-resource
path: "/api/operational"
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/operational"
operations:
- name: execute-3
method: POST
Retrieves firewall rule configurations from Palo Alto Networks for security auditing.
naftiko: "0.5"
info:
label: "Palo Alto Firewall Rule Audit"
description: "Retrieves firewall rule configurations from Palo Alto Networks for security auditing."
tags:
- security
- firewall
- palo-alto-networks
capability:
exposes:
- type: mcp
namespace: security-audit
port: 8080
tools:
- name: audit-firewall-rules
description: "Query Palo Alto for firewall rule statistics."
inputParameters:
- name: device_group
in: body
type: string
description: "The device group name."
call: "paloalto.get-security-rules"
with:
device_group: "{{device_group}}"
consumes:
- type: http
namespace: paloalto
baseUri: "https://panorama.scotiabank.com/restapi/v10.2"
authentication:
type: apiKey
key: "$secrets.paloalto_api_key"
resources:
- name: security-rules
path: "/Policies/SecurityRules?location=device-group&device-group={{device_group}}"
inputParameters:
- name: device_group
in: path
operations:
- name: get-security-rules
method: GET
Orchestrates payment modernization pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Payment Modernization Pipeline"
description: "Orchestrates payment modernization pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- payment
- scotiabank
- confluence
- bloomberg
- scotiabank
capability:
exposes:
- type: mcp
namespace: payment
port: 8080
tools:
- name: payment-modernization-pipeline
description: "Orchestrates payment modernization pipeline across banking and financial services 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: "bloomberg.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "scotiabank.execute-3"
with:
input: "{{input_id}}"
consumes:
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: confluence-resource
path: "/api/payment"
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/payment"
operations:
- name: execute-2
method: POST
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/payment"
operations:
- name: execute-3
method: POST
Retrieves the status of a payment transaction via the MuleSoft payments API, returning transaction ID, status, amount, and timestamp.
naftiko: "0.5"
info:
label: "Payment Transaction Status Lookup"
description: "Retrieves the status of a payment transaction via the MuleSoft payments API, returning transaction ID, status, amount, and timestamp."
tags:
- payments
- banking
- mulesoft
capability:
exposes:
- type: mcp
namespace: payments
port: 8080
tools:
- name: get-transaction-status
description: "Look up a payment transaction by ID."
inputParameters:
- name: transaction_id
in: body
type: string
description: "The payment transaction ID."
call: "mulesoft.get-transaction"
with:
transaction_id: "{{transaction_id}}"
outputParameters:
- name: status
type: string
mapping: "$.status"
- name: amount
type: number
mapping: "$.amount"
- name: currency
type: string
mapping: "$.currency"
- name: timestamp
type: string
mapping: "$.created_at"
consumes:
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: transactions
path: "/payments/transactions/{{transaction_id}}"
inputParameters:
- name: transaction_id
in: path
operations:
- name: get-transaction
method: GET
Triggers Postman API collection test runs.
naftiko: "0.5"
info:
label: "Postman API Test Runner"
description: "Triggers Postman API collection test runs."
tags: [engineering, testing, postman]
capability:
exposes:
- type: mcp
namespace: api-testing
port: 8080
tools:
- name: run-api-tests
description: "Trigger a Postman collection run."
inputParameters:
- name: collection_id
in: body
type: string
description: "Postman collection ID."
call: "postman.run-collection"
with:
collection_id: "{{collection_id}}"
consumes:
- type: http
namespace: postman
baseUri: "https://api.getpostman.com"
authentication:
type: apiKey
key: "$secrets.postman_api_key"
resources:
- name: monitors
path: "/monitors/{{collection_id}}/run"
inputParameters:
- name: collection_id
in: path
operations:
- name: run-collection
method: POST
Triggers a Power BI dataset refresh for the enterprise risk dashboard.
naftiko: "0.5"
info:
label: "Power BI Risk Dashboard Refresh"
description: "Triggers a Power BI dataset refresh for the enterprise risk dashboard."
tags:
- risk
- analytics
- power-bi
capability:
exposes:
- type: mcp
namespace: risk-analytics
port: 8080
tools:
- name: refresh-risk-dashboard
description: "Trigger a Power BI dataset refresh."
inputParameters:
- name: dataset_id
in: body
type: string
description: "The Power BI dataset ID."
call: "powerbi.refresh-dataset"
with:
dataset_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/{{dataset_id}}/refreshes"
inputParameters:
- name: dataset_id
in: path
operations:
- name: refresh-dataset
method: POST
Orchestrates real time payment monitoring pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Real Time Payment Monitoring Pipeline"
description: "Orchestrates real time payment monitoring pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- real
- scotiabank
- snowflake
- slack
- jira
capability:
exposes:
- type: mcp
namespace: real
port: 8080
tools:
- name: real-time-payment-monitoring-pipeline
description: "Orchestrates real time payment monitoring pipeline across banking and financial services 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://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/real"
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/real"
operations:
- name: execute-2
method: POST
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/real"
operations:
- name: execute-3
method: POST
Orchestrates regulatory capital calculation pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Regulatory Capital Calculation Pipeline"
description: "Orchestrates regulatory capital calculation pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- regulatory
- scotiabank
- confluence
- bloomberg
- scotiabank
capability:
exposes:
- type: mcp
namespace: regulatory
port: 8080
tools:
- name: regulatory-capital-calculation-pipeline
description: "Orchestrates regulatory capital calculation pipeline across banking and financial services 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: "bloomberg.execute-2"
with:
input: "{{input_id}}"
- name: step-3
type: call
call: "scotiabank.execute-3"
with:
input: "{{input_id}}"
consumes:
- type: http
namespace: confluence
baseUri: "https://scotiabank.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: bloomberg
baseUri: "https://api.bloomberg.com/v1"
authentication:
type: bearer
token: "$secrets.bloomberg_token"
resources:
- name: bloomberg-resource
path: "/api/regulatory"
operations:
- name: execute-2
method: POST
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/regulatory"
operations:
- name: execute-3
method: POST
Orchestrates regulatory reporting automation pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Regulatory Reporting Automation Pipeline"
description: "Orchestrates regulatory reporting automation pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- regulatory
- scotiabank
- snowflake
- slack
- jira
capability:
exposes:
- type: mcp
namespace: regulatory
port: 8080
tools:
- name: regulatory-reporting-automation-pipeline
description: "Orchestrates regulatory reporting automation pipeline across banking and financial services 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://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/regulatory"
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/regulatory"
operations:
- name: execute-2
method: POST
- type: http
namespace: jira
baseUri: "https://scotiabank.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: jira-resource
path: "/api/regulatory"
operations:
- name: execute-3
method: POST
Extracts regulatory data from Snowflake, formats the report, uploads to SharePoint, and notifies the compliance team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Regulatory Reporting Pipeline"
description: "Extracts regulatory data from Snowflake, formats the report, uploads to SharePoint, and notifies the compliance team via Microsoft Teams."
tags:
- compliance
- regulatory
- snowflake
- sharepoint
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: regulatory-reporting
port: 8080
tools:
- name: generate-regulatory-report
description: "Given a report type and period, extract data, upload report, and notify compliance."
inputParameters:
- name: report_type
in: body
type: string
description: "The regulatory report type (e.g., OSFI_LCR, FINTRAC_STR)."
- name: reporting_period
in: body
type: string
description: "The reporting period."
steps:
- name: extract-data
type: call
call: "snowflake.execute-sql"
with:
statement: "SELECT * FROM regulatory_{{report_type}} WHERE period = '{{reporting_period}}'"
- name: upload-report
type: call
call: "sharepoint.create-file"
with:
site_id: "regulatory_reports"
file_path: "{{report_type}}/{{reporting_period}}_report.xlsx"
- name: notify-compliance
type: call
call: "msteams.send-message"
with:
channel_id: "regulatory_compliance"
text: "Regulatory Report Ready: {{report_type}} for {{reporting_period}}. Document: {{upload-report.url}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-sql
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: create-file
method: PUT
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Retrieves customer financial data from the core banking API via MuleSoft, runs a risk scoring model in Azure Machine Learning, and updates the risk rating in Salesforce.
naftiko: "0.5"
info:
label: "Risk Score Calculation Pipeline"
description: "Retrieves customer financial data from the core banking API via MuleSoft, runs a risk scoring model in Azure Machine Learning, and updates the risk rating in Salesforce."
tags:
- risk
- machine-learning
- mulesoft
- azure-machine-learning
- salesforce
capability:
exposes:
- type: mcp
namespace: risk-scoring
port: 8080
tools:
- name: calculate-risk-score
description: "Given a customer ID, fetch financial data, run risk model, and update Salesforce."
inputParameters:
- name: customer_id
in: body
type: string
description: "The customer ID."
steps:
- name: get-financial-data
type: call
call: "mulesoft.get-customer-financials"
with:
customer_id: "{{customer_id}}"
- name: run-risk-model
type: call
call: "azureml.score"
with:
income: "{{get-financial-data.annual_income}}"
balance: "{{get-financial-data.total_balance}}"
credit_utilization: "{{get-financial-data.credit_utilization}}"
- name: update-risk-rating
type: call
call: "salesforce.update-customer"
with:
customer_id: "{{customer_id}}"
risk_score: "{{run-risk-model.risk_score}}"
risk_category: "{{run-risk-model.risk_category}}"
consumes:
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: customer-financials
path: "/core-banking/customers/{{customer_id}}/financials"
inputParameters:
- name: customer_id
in: path
operations:
- name: get-customer-financials
method: GET
- type: http
namespace: azureml
baseUri: "https://scotiabank-risk.canadacentral.inference.ml.azure.com"
authentication:
type: bearer
token: "$secrets.azure_ml_token"
resources:
- name: scoring
path: "/score"
operations:
- name: score
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: customers
path: "/sobjects/Account/{{customer_id}}"
inputParameters:
- name: customer_id
in: path
operations:
- name: update-customer
method: PATCH
Triggers a SailPoint identity access review, collects results, and creates ServiceNow tasks for any access violations found.
naftiko: "0.5"
info:
label: "SailPoint Access Review Pipeline"
description: "Triggers a SailPoint identity access review, collects results, and creates ServiceNow tasks for any access violations found."
tags:
- security
- identity
- sailpoint
- servicenow
capability:
exposes:
- type: mcp
namespace: access-review
port: 8080
tools:
- name: run-access-review
description: "Given a campaign name, trigger SailPoint review and create tasks for violations."
inputParameters:
- name: campaign_name
in: body
type: string
description: "The SailPoint certification campaign name."
steps:
- name: trigger-campaign
type: call
call: "sailpoint.create-campaign"
with:
name: "{{campaign_name}}"
- name: create-violation-tasks
type: call
call: "servicenow.create-task"
with:
short_description: "Access review violations: {{campaign_name}}"
assigned_group: "Identity_Access_Management"
description: "SailPoint campaign {{campaign_name}} — Campaign ID: {{trigger-campaign.campaign_id}}. Review pending violations."
consumes:
- type: http
namespace: sailpoint
baseUri: "https://scotiabank.api.identitynow.com/v3"
authentication:
type: bearer
token: "$secrets.sailpoint_token"
resources:
- name: campaigns
path: "/campaigns"
operations:
- name: create-campaign
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: tasks
path: "/table/task"
operations:
- name: create-task
method: POST
Retrieves a Salesforce customer profile by ID, returning name, segment, relationship manager, and total assets under management.
naftiko: "0.5"
info:
label: "Salesforce Customer Profile Lookup"
description: "Retrieves a Salesforce customer profile by ID, returning name, segment, relationship manager, and total assets under management."
tags:
- banking
- crm
- salesforce
capability:
exposes:
- type: mcp
namespace: customer-crm
port: 8080
tools:
- name: get-customer-profile
description: "Look up a Salesforce customer profile by ID."
inputParameters:
- name: customer_id
in: body
type: string
description: "The Salesforce customer record ID."
call: "salesforce.get-customer"
with:
customer_id: "{{customer_id}}"
outputParameters:
- name: name
type: string
mapping: "$.Name"
- name: segment
type: string
mapping: "$.Client_Segment__c"
- name: relationship_manager
type: string
mapping: "$.Owner.Name"
- name: total_assets
type: number
mapping: "$.Total_Assets__c"
consumes:
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: customers
path: "/sobjects/Account/{{customer_id}}"
inputParameters:
- name: customer_id
in: path
operations:
- name: get-customer
method: GET
Retrieves a SAP Concur expense report by ID.
naftiko: "0.5"
info:
label: "SAP Concur Expense Report Lookup"
description: "Retrieves a SAP Concur expense report by ID."
tags:
- finance
- expense
- sap-concur
capability:
exposes:
- type: mcp
namespace: finance-expense
port: 8080
tools:
- name: get-expense-report
description: "Look up a SAP Concur expense report."
inputParameters:
- name: report_id
in: body
type: string
description: "The expense report ID."
call: "concur.get-expense-report"
with:
report_id: "{{report_id}}"
consumes:
- type: http
namespace: concur
baseUri: "https://www.concursolutions.com/api/v3.0"
authentication:
type: bearer
token: "$secrets.concur_token"
resources:
- name: expense-reports
path: "/expense/reports/{{report_id}}"
inputParameters:
- name: report_id
in: path
operations:
- name: get-expense-report
method: GET
Retrieves scotia rewards catalog lookup data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Scotia Rewards Catalog Lookup"
description: "Retrieves scotia rewards catalog lookup data from the Scotiabank banking and financial services systems."
tags:
- scotia
- scotiabank
- lookup
capability:
exposes:
- type: mcp
namespace: scotia
port: 8080
tools:
- name: scotia-rewards-catalog-lookup
description: "Retrieves scotia rewards catalog lookup data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.scotia-rewards-catalog-lookup"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/scotia/rewards/catalog/lookup/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: scotia-rewards-catalog-lookup
method: GET
Retrieves a ServiceNow incident by number.
naftiko: "0.5"
info:
label: "ServiceNow Incident Lookup"
description: "Retrieves a ServiceNow incident by number."
tags:
- it-operations
- itsm
- servicenow
capability:
exposes:
- type: mcp
namespace: itsm
port: 8080
tools:
- name: get-incident
description: "Look up a ServiceNow incident by number."
inputParameters:
- name: incident_number
in: body
type: string
description: "The ServiceNow incident number."
call: "servicenow.get-incident"
with:
incident_number: "{{incident_number}}"
outputParameters:
- name: state
type: string
mapping: "$.result.state"
- name: priority
type: string
mapping: "$.result.priority"
consumes:
- type: http
namespace: servicenow
baseUri: "https://scotiabank.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={{incident_number}}"
inputParameters:
- name: incident_number
in: path
operations:
- name: get-incident
method: GET
Searches SharePoint for compliance and policy documents.
naftiko: "0.5"
info:
label: "SharePoint Document Search"
description: "Searches SharePoint for compliance and policy documents."
tags:
- documentation
- sharepoint
capability:
exposes:
- type: mcp
namespace: doc-search
port: 8080
tools:
- name: search-documents
description: "Search SharePoint for documents."
inputParameters:
- name: site_id
in: body
type: string
description: "The SharePoint site ID."
- name: query
in: body
type: string
description: "The search keyword."
call: "sharepoint.search"
with:
site_id: "{{site_id}}"
query: "{{query}}"
consumes:
- type: http
namespace: sharepoint
baseUri: "https://graph.microsoft.com/v1.0/sites"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: search
path: "/{{site_id}}/drive/root/search(q='{{query}}')"
inputParameters:
- name: site_id
in: path
- name: query
in: path
operations:
- name: search
method: GET
Executes a SQL query against Snowflake.
naftiko: "0.5"
info:
label: "Snowflake Data Warehouse Query"
description: "Executes a SQL query against Snowflake."
tags:
- data-management
- analytics
- snowflake
capability:
exposes:
- type: mcp
namespace: data-warehouse
port: 8080
tools:
- name: execute-snowflake-query
description: "Execute a SQL statement against Snowflake."
inputParameters:
- name: warehouse
in: body
type: string
description: "Warehouse name."
- name: database
in: body
type: string
description: "Database name."
- name: sql_statement
in: body
type: string
description: "SQL statement."
call: "snowflake.execute-sql"
with:
warehouse: "{{warehouse}}"
database: "{{database}}"
statement: "{{sql_statement}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-sql
method: POST
Queries Snowflake warehouse credit consumption metrics.
naftiko: "0.5"
info:
label: "Snowflake Data Warehouse Usage"
description: "Queries Snowflake warehouse credit consumption metrics."
tags: [data-management, cost-management, snowflake]
capability:
exposes:
- type: mcp
namespace: finops
port: 8080
tools:
- name: get-warehouse-usage
description: "Query Snowflake warehouse credits."
inputParameters:
- name: warehouse_name
in: body
type: string
description: "Warehouse name."
call: "snowflake.execute-sql"
with:
statement: "SELECT sum(credits_used) FROM snowflake.account_usage.warehouse_metering_history WHERE warehouse_name = '{{warehouse_name}}'"
consumes:
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-sql
method: POST
Queries SolarWinds for network node health at branch locations.
naftiko: "0.5"
info:
label: "SolarWinds Network Health"
description: "Queries SolarWinds for network node health at branch locations."
tags: [networking, infrastructure, solarwinds]
capability:
exposes:
- type: mcp
namespace: network-health
port: 8080
tools:
- name: get-network-health
description: "Query SolarWinds network nodes."
inputParameters:
- name: branch_code
in: body
type: string
description: "Branch code."
call: "solarwinds.query-nodes"
with:
branch_code: "{{branch_code}}"
consumes:
- type: http
namespace: solarwinds
baseUri: "https://solarwinds.scotiabank.com:17778/SolarWinds/InformationService/v3/Json"
authentication:
type: basic
username: "$secrets.solarwinds_user"
password: "$secrets.solarwinds_password"
resources:
- name: nodes
path: "/Query?query=SELECT+NodeID,Caption,Status+FROM+Orion.Nodes+WHERE+Location='{{branch_code}}'"
inputParameters:
- name: branch_code
in: path
operations:
- name: query-nodes
method: GET
Queries Splunk for security-related log events.
naftiko: "0.5"
info:
label: "Splunk Security Log Search"
description: "Queries Splunk for security-related log events."
tags:
- security
- logging
- splunk
capability:
exposes:
- type: mcp
namespace: security-logs
port: 8080
tools:
- name: search-security-logs
description: "Search Splunk for security events."
inputParameters:
- name: search_query
in: body
type: string
description: "The Splunk search query."
- name: time_range
in: body
type: string
description: "The time range (e.g., -24h, -7d)."
call: "splunk.search"
with:
search: "{{search_query}}"
earliest_time: "{{time_range}}"
consumes:
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: search
path: "/search/jobs"
operations:
- name: search
method: POST
Orchestrates stress testing scenario pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Stress Testing Scenario Pipeline"
description: "Orchestrates stress testing scenario pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- stress
- scotiabank
- scotiabank
- salesforce
- servicenow
capability:
exposes:
- type: mcp
namespace: stress
port: 8080
tools:
- name: stress-testing-scenario-pipeline
description: "Orchestrates stress testing scenario pipeline across banking and financial services 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: "scotiabank.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: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: scotiabank-resource
path: "/api/stress"
operations:
- name: execute-1
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/stress"
operations:
- name: execute-2
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/stress"
operations:
- name: execute-3
method: POST
Retrieves a Tableau view for risk analytics and posts to Microsoft Teams.
naftiko: "0.5"
info:
label: "Tableau Risk Analytics Dashboard"
description: "Retrieves a Tableau view for risk analytics and posts to Microsoft Teams."
tags:
- risk
- analytics
- tableau
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: risk-dashboards
port: 8080
tools:
- name: share-risk-dashboard
description: "Fetch a Tableau risk view and share to Teams."
inputParameters:
- name: workbook_id
in: body
type: string
description: "Tableau workbook ID."
- name: view_id
in: body
type: string
description: "Tableau view ID."
steps:
- name: get-view
type: call
call: "tableau.get-view"
with:
workbook_id: "{{workbook_id}}"
view_id: "{{view_id}}"
- name: post-to-teams
type: call
call: "msteams.send-message"
with:
channel_id: "risk_management"
text: "Risk Dashboard: {{get-view.url}}"
consumes:
- type: http
namespace: tableau
baseUri: "https://tableau.scotiabank.com/api/3.19"
authentication:
type: bearer
token: "$secrets.tableau_token"
resources:
- name: views
path: "/sites/$secrets.tableau_site_id/workbooks/{{workbook_id}}/views/{{view_id}}"
inputParameters:
- name: workbook_id
in: path
- name: view_id
in: path
operations:
- name: get-view
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Retrieves trade execution status data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Trade Execution Status"
description: "Retrieves trade execution status data from the Scotiabank banking and financial services systems."
tags:
- trade
- scotiabank
- status
capability:
exposes:
- type: mcp
namespace: trade
port: 8080
tools:
- name: trade-execution-status
description: "Retrieves trade execution status data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.trade-execution-status"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/trade/execution/status/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: trade-execution-status
method: GET
Orchestrates treasury liquidity management pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Treasury Liquidity Management Pipeline"
description: "Orchestrates treasury liquidity management pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- treasury
- scotiabank
- teams
- splunk
- confluence
capability:
exposes:
- type: mcp
namespace: treasury
port: 8080
tools:
- name: treasury-liquidity-management-pipeline
description: "Orchestrates treasury liquidity management pipeline across banking and financial services 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: "confluence.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/treasury"
operations:
- name: execute-1
method: POST
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: splunk-resource
path: "/api/treasury"
operations:
- name: execute-2
method: POST
- type: http
namespace: confluence
baseUri: "https://scotiabank.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: confluence-resource
path: "/api/treasury"
operations:
- name: execute-3
method: POST
Retrieves wealth advisor availability data from the Scotiabank banking and financial services systems.
naftiko: "0.5"
info:
label: "Wealth Advisor Availability"
description: "Retrieves wealth advisor availability data from the Scotiabank banking and financial services systems."
tags:
- wealth
- scotiabank
- availability
capability:
exposes:
- type: mcp
namespace: wealth
port: 8080
tools:
- name: wealth-advisor-availability
description: "Retrieves wealth advisor availability data from the Scotiabank banking and financial services systems."
inputParameters:
- name: input_id
in: body
type: string
description: "The input id."
call: "scotiabank.wealth-advisor-availability"
with:
input_id: "{{input_id}}"
outputParameters:
- name: result
type: string
mapping: "$.data"
- name: status
type: string
mapping: "$.status"
consumes:
- type: http
namespace: scotiabank
baseUri: "https://api.scotiabank.com/v2"
authentication:
type: bearer
token: "$secrets.scotiabank_api_token"
resources:
- name: resource
path: "/wealth/advisor/availability/{{input_id}}"
inputParameters:
- name: input_id
in: path
operations:
- name: wealth-advisor-availability
method: GET
Coordinates annual wealth client reviews by assembling portfolio data, generating reports, and scheduling advisor meetings.
naftiko: "0.5"
info:
label: "Wealth Client Review Pipeline"
description: "Coordinates annual wealth client reviews by assembling portfolio data, generating reports, and scheduling advisor meetings."
tags:
- wealth
- scotiabank
- salesforce
- teams
capability:
exposes:
- type: mcp
namespace: wealth
port: 8080
tools:
- name: wealth-client-review-pipeline
description: "Coordinates annual wealth client reviews by assembling portfolio data, generating reports, and scheduling advisor meetings."
inputParameters:
- name: input_id
in: body
type: string
description: "The primary input identifier."
steps:
- name: get-portfolio
type: call
call: "snowflake.run-query"
with:
input: "{{input_id}}"
- name: update-crm
type: call
call: "salesforce.update-contact"
with:
input: "{{input_id}}"
- name: schedule-meeting
type: call
call: "teams.create-event"
with:
input: "{{input_id}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/statements"
operations:
- name: run-query
method: POST
- type: http
namespace: salesforce
baseUri: "https://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/sobjects/Contact"
operations:
- name: update-contact
method: PATCH
- type: http
namespace: teams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.teams_token"
resources:
- name: teams-resource
path: "/users/events"
operations:
- name: create-event
method: POST
Retrieves a wealth management client's portfolio summary from the investment platform via MuleSoft, returning asset allocation, total value, and performance metrics.
naftiko: "0.5"
info:
label: "Wealth Management Portfolio Summary"
description: "Retrieves a wealth management client's portfolio summary from the investment platform via MuleSoft, returning asset allocation, total value, and performance metrics."
tags:
- wealth
- portfolio
- mulesoft
capability:
exposes:
- type: mcp
namespace: wealth-mgmt
port: 8080
tools:
- name: get-portfolio-summary
description: "Look up a client portfolio summary."
inputParameters:
- name: client_id
in: body
type: string
description: "The wealth management client ID."
call: "mulesoft.get-portfolio"
with:
client_id: "{{client_id}}"
outputParameters:
- name: total_value
type: number
mapping: "$.total_market_value"
- name: ytd_return
type: number
mapping: "$.ytd_return_pct"
- name: asset_allocation
type: object
mapping: "$.asset_allocation"
consumes:
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: portfolios
path: "/wealth/clients/{{client_id}}/portfolio"
inputParameters:
- name: client_id
in: path
operations:
- name: get-portfolio
method: GET
Orchestrates wealth management rebalancing pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders.
naftiko: "0.5"
info:
label: "Wealth Management Rebalancing Pipeline"
description: "Orchestrates wealth management rebalancing pipeline across banking and financial services systems, coordinating multiple services and notifying stakeholders."
tags:
- wealth
- scotiabank
- salesforce
- servicenow
- snowflake
capability:
exposes:
- type: mcp
namespace: wealth
port: 8080
tools:
- name: wealth-management-rebalancing-pipeline
description: "Orchestrates wealth management rebalancing pipeline across banking and financial services 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://scotiabank.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_access_token"
resources:
- name: salesforce-resource
path: "/api/wealth"
operations:
- name: execute-1
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: servicenow-resource
path: "/api/wealth"
operations:
- name: execute-2
method: POST
- type: http
namespace: snowflake
baseUri: "https://scotiabank.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: snowflake-resource
path: "/api/wealth"
operations:
- name: execute-3
method: POST
Initiates a wire transfer via MuleSoft, logs the transaction to Splunk for compliance, creates a ServiceNow tracking ticket, and notifies the treasury operations team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Wire Transfer Processing Pipeline"
description: "Initiates a wire transfer via MuleSoft, logs the transaction to Splunk for compliance, creates a ServiceNow tracking ticket, and notifies the treasury operations team via Microsoft Teams."
tags:
- payments
- wire-transfer
- mulesoft
- splunk
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: wire-transfers
port: 8080
tools:
- name: process-wire-transfer
description: "Given transfer details, initiate wire, log to Splunk, create tracking ticket, and notify treasury."
inputParameters:
- name: from_account
in: body
type: string
description: "The source account number."
- name: to_account
in: body
type: string
description: "The destination account number."
- name: amount
in: body
type: number
description: "The transfer amount."
- name: currency
in: body
type: string
description: "The currency code."
- name: beneficiary_bank
in: body
type: string
description: "The beneficiary bank SWIFT code."
steps:
- name: initiate-transfer
type: call
call: "mulesoft.initiate-wire"
with:
from_account: "{{from_account}}"
to_account: "{{to_account}}"
amount: "{{amount}}"
currency: "{{currency}}"
swift_code: "{{beneficiary_bank}}"
- name: log-transaction
type: call
call: "splunk.create-event"
with:
index: "wire_transfers"
event: "Wire transfer {{initiate-transfer.reference}}. From: {{from_account}}. To: {{to_account}}. Amount: {{amount}} {{currency}}."
- name: create-ticket
type: call
call: "servicenow.create-task"
with:
short_description: "Wire Transfer: {{initiate-transfer.reference}} — {{amount}} {{currency}}"
assigned_group: "Treasury_Operations"
description: "Wire ref: {{initiate-transfer.reference}}. From: {{from_account}}. To: {{to_account}} ({{beneficiary_bank}}). Amount: {{amount}} {{currency}}."
- name: notify-treasury
type: call
call: "msteams.send-message"
with:
channel_id: "treasury_operations"
text: "Wire Transfer Initiated: {{initiate-transfer.reference}} — {{amount}} {{currency}} to {{beneficiary_bank}}. Ticket: {{create-ticket.number}}."
consumes:
- type: http
namespace: mulesoft
baseUri: "https://api.scotiabank.com/mulesoft/v1"
authentication:
type: bearer
token: "$secrets.mulesoft_token"
resources:
- name: wire-transfers
path: "/payments/wire-transfers"
operations:
- name: initiate-wire
method: POST
- type: http
namespace: splunk
baseUri: "https://splunk.scotiabank.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: events
path: "/collectors/event"
operations:
- name: create-event
method: POST
- type: http
namespace: servicenow
baseUri: "https://scotiabank.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: tasks
path: "/table/task"
operations:
- name: create-task
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST
Retrieves compensation data from Workday and sends a review package to the manager via Outlook.
naftiko: "0.5"
info:
label: "Workday Compensation Review"
description: "Retrieves compensation data from Workday and sends a review package to the manager via Outlook."
tags:
- hr
- compensation
- workday
- microsoft-outlook
capability:
exposes:
- type: mcp
namespace: hr-compensation
port: 8080
tools:
- name: generate-comp-review
description: "Generate a compensation review for an employee."
inputParameters:
- name: employee_id
in: body
type: string
description: "Workday employee ID."
steps:
- name: get-employee
type: call
call: "workday.get-worker"
with:
worker_id: "{{employee_id}}"
- name: get-compensation
type: call
call: "workday.get-compensation"
with:
worker_id: "{{employee_id}}"
- name: send-review
type: call
call: "outlook.send-mail"
with:
recipient: "{{get-employee.manager_email}}"
subject: "Compensation Review: {{get-employee.full_name}}"
body: "Employee: {{get-employee.full_name}}. Base: {{get-compensation.base_pay}}. Performance: {{get-compensation.performance_rating}}."
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
- name: compensation
path: "/workers/{{worker_id}}/compensation"
inputParameters:
- name: worker_id
in: path
operations:
- name: get-compensation
method: GET
- type: http
namespace: outlook
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: mail
path: "/me/sendMail"
operations:
- name: send-mail
method: POST
Retrieves a Workday worker profile by employee ID.
naftiko: "0.5"
info:
label: "Workday Employee Profile Lookup"
description: "Retrieves a Workday worker profile by employee ID."
tags:
- hr
- employee-data
- workday
capability:
exposes:
- type: mcp
namespace: hr-data
port: 8080
tools:
- name: get-employee-profile
description: "Look up a Workday employee by ID."
inputParameters:
- name: employee_id
in: body
type: string
description: "The Workday worker ID."
call: "workday.get-worker"
with:
worker_id: "{{employee_id}}"
outputParameters:
- name: full_name
type: string
mapping: "$.descriptor"
- name: department
type: string
mapping: "$.primaryPosition.department"
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
Creates a Zoom meeting and notifies via Microsoft Teams.
naftiko: "0.5"
info:
label: "Zoom Meeting Scheduler"
description: "Creates a Zoom meeting and notifies via Microsoft Teams."
tags:
- collaboration
- meetings
- zoom
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: collaboration
port: 8080
tools:
- name: schedule-zoom-meeting
description: "Create a Zoom meeting and notify via Teams."
inputParameters:
- name: topic
in: body
type: string
description: "Meeting topic."
- name: start_time
in: body
type: string
description: "Start time ISO 8601."
- name: duration
in: body
type: number
description: "Duration in minutes."
- name: teams_channel_id
in: body
type: string
description: "Teams channel."
steps:
- name: create-meeting
type: call
call: "zoom.create-meeting"
with:
topic: "{{topic}}"
start_time: "{{start_time}}"
duration: "{{duration}}"
- name: notify-teams
type: call
call: "msteams.send-message"
with:
channel_id: "{{teams_channel_id}}"
text: "Zoom meeting scheduled: {{topic}} at {{start_time}}. Join: {{create-meeting.join_url}}"
consumes:
- type: http
namespace: zoom
baseUri: "https://api.zoom.us/v2"
authentication:
type: bearer
token: "$secrets.zoom_token"
resources:
- name: meetings
path: "/users/me/meetings"
operations:
- name: create-meeting
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/{{channel_id}}/channels/general/messages"
inputParameters:
- name: channel_id
in: path
operations:
- name: send-message
method: POST