Nasdaq Capabilities
Naftiko 0.5 capability definitions for Nasdaq - 100 capabilities showing integration workflows and service orchestrations.
Processes AML alerts by pulling transaction patterns from Snowflake, checking entity details in Salesforce, creating a ServiceNow case, and escalating to the compliance team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Anti-Money Laundering Alert Pipeline"
description: "Processes AML alerts by pulling transaction patterns from Snowflake, checking entity details in Salesforce, creating a ServiceNow case, and escalating to the compliance team via Microsoft Teams."
tags:
- compliance
- aml
- snowflake
- salesforce
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: aml-alerts
port: 8080
tools:
- name: process-aml-alert
description: "Given an alert ID, investigate the AML alert and escalate."
inputParameters:
- name: alert_id
in: body
type: string
description: "The AML alert ID."
- name: entity_id
in: body
type: string
description: "The entity under investigation."
steps:
- name: pull-transactions
type: call
call: "snowflake.execute-query"
with:
alert_id: "{{alert_id}}"
entity_id: "{{entity_id}}"
- name: get-entity-info
type: call
call: "salesforce.get-entity"
with:
entity_id: "{{entity_id}}"
- name: create-case
type: call
call: "servicenow.create-incident"
with:
short_description: "AML investigation: Alert {{alert_id}} - {{get-entity-info.Name}}"
category: "aml_compliance"
description: "{{pull-transactions.rowCount}} suspicious transactions flagged."
- name: escalate-compliance
type: call
call: "msteams.post-message"
with:
team_id: "compliance-team"
channel_id: "aml-alerts"
message: "AML alert {{alert_id}} for {{get-entity-info.Name}}: {{pull-transactions.rowCount}} transactions flagged. Case: {{create-case.number}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: entities
path: "/query/?q=SELECT+Name,Entity_Type__c+FROM+Account+WHERE+Entity_ID__c='{{entity_id}}'"
inputParameters:
- name: entity_id
in: query
operations:
- name: get-entity
method: GET
- type: http
namespace: servicenow
baseUri: "https://nasdaq.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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Triggers a deployment pipeline for the exchange platform in Azure DevOps and returns the deployment run status.
naftiko: "0.5"
info:
label: "Azure DevOps Exchange Platform Deployment"
description: "Triggers a deployment pipeline for the exchange platform in Azure DevOps and returns the deployment run status."
tags:
- ci-cd
- exchange
- azure-devops
capability:
exposes:
- type: mcp
namespace: exchange-deployment
port: 8080
tools:
- name: trigger-exchange-deploy
description: "Trigger exchange platform deployment pipeline."
inputParameters:
- name: pipeline_id
in: body
type: string
description: "The Azure DevOps pipeline ID."
- name: environment
in: body
type: string
description: "The target environment (staging, production)."
call: "azuredevops.run-pipeline"
with:
pipeline_id: "{{pipeline_id}}"
environment: "{{environment}}"
consumes:
- type: http
namespace: azuredevops
baseUri: "https://dev.azure.com/nasdaq"
authentication:
type: bearer
token: "$secrets.azuredevops_token"
resources:
- name: pipelines
path: "/exchange/_apis/pipelines/{{pipeline_id}}/runs?api-version=7.0"
inputParameters:
- name: pipeline_id
in: path
operations:
- name: run-pipeline
method: POST
Checks the latest build status for an Azure DevOps pipeline used by the exchange technology platform teams.
naftiko: "0.5"
info:
label: "Azure DevOps Pipeline Status"
description: "Checks the latest build status for an Azure DevOps pipeline used by the exchange technology platform teams."
tags:
- devops
- azure-devops
capability:
exposes:
- type: mcp
namespace: ci-cd
port: 8080
tools:
- name: get-pipeline-status
description: "Check the latest Azure DevOps build for a pipeline."
inputParameters:
- name: pipeline_id
in: body
type: string
description: "The pipeline definition ID."
call: "azuredevops.get-builds"
with:
pipeline_id: "{{pipeline_id}}"
consumes:
- type: http
namespace: azuredevops
baseUri: "https://dev.azure.com/nasdaq/ExchangePlatform/_apis/build"
authentication:
type: basic
username: "$secrets.azdo_user"
password: "$secrets.azdo_pat"
resources:
- name: builds
path: "/builds?definitions={{pipeline_id}}&$top=1&api-version=7.0"
inputParameters:
- name: pipeline_id
in: query
operations:
- name: get-builds
method: GET
Retrieves market data from Bloomberg Enterprise Data for cross-listing reference data and competitive analysis.
naftiko: "0.5"
info:
label: "Bloomberg Market Data Feed"
description: "Retrieves market data from Bloomberg Enterprise Data for cross-listing reference data and competitive analysis."
tags:
- market-data
- bloomberg-enterprise-data
capability:
exposes:
- type: mcp
namespace: bloomberg-data
port: 8080
tools:
- name: get-bloomberg-data
description: "Fetch market data from Bloomberg by security identifier."
inputParameters:
- name: identifier
in: body
type: string
description: "The security identifier."
- name: identifier_type
in: body
type: string
description: "Type of identifier (ISIN, TICKER)."
call: "bloomberg.get-pricing"
with:
identifier: "{{identifier}}"
identifier_type: "{{identifier_type}}"
consumes:
- type: http
namespace: bloomberg
baseUri: "https://api.bloomberg.com/eap/catalogs/bbg/datasets"
authentication:
type: bearer
token: "$secrets.bloomberg_token"
resources:
- name: pricing
path: "/pricing?identifier={{identifier}}&identifierType={{identifier_type}}"
inputParameters:
- name: identifier
in: query
- name: identifier_type
in: query
operations:
- name: get-pricing
method: GET
Retrieves reference data for a security from Bloomberg, including company name, sector, country, and market capitalization.
naftiko: "0.5"
info:
label: "Bloomberg Reference Data Fetch"
description: "Retrieves reference data for a security from Bloomberg, including company name, sector, country, and market capitalization."
tags:
- reference-data
- bloomberg
capability:
exposes:
- type: mcp
namespace: reference-data
port: 8080
tools:
- name: get-reference-data
description: "Fetch reference data by Bloomberg identifier."
inputParameters:
- name: identifier
in: body
type: string
description: "The Bloomberg identifier."
call: "bloomberg.get-reference"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: bloomberg
baseUri: "https://api.bloomberg.com/eap/catalogs/bbg/datasets"
authentication:
type: bearer
token: "$secrets.bloomberg_token"
resources:
- name: reference
path: "/reference?identifier={{identifier}}"
inputParameters:
- name: identifier
in: query
operations:
- name: get-reference
method: GET
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 1"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- salesforce
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-1
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-1"
with:
identifier: "{{identifier}}"
- name: create
type: call
call: "salesforce.create-account"
with:
data: "{{process.result}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-1
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: accounts
path: "/accounts"
operations:
- name: create-account
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 10"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- sharepoint
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-10
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-10"
with:
identifier: "{{identifier}}"
- name: upload
type: call
call: "sharepoint.upload-document"
with:
content: "{{process.document}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-10
method: POST
- type: http
namespace: sharepoint
baseUri: "https://nasdaq.sharepoint.com/_api/v2.0"
authentication:
type: bearer
token: "$secrets.sharepoint_token"
resources:
- name: documents
path: "/documents"
operations:
- name: upload-document
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 11"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- hubspot
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-11
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-11"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "hubspot.send-email"
with:
to: "{{process.email}}"
subject: "Workflow 11 Complete"
body: "{{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-11
method: POST
- type: http
namespace: hubspot
baseUri: "https://api.hubapi.com/crm/v3"
authentication:
type: bearer
token: "$secrets.hubspot_token"
resources:
- name: contacts
path: "/contacts"
operations:
- name: send-email
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 12"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- datadog
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-12
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-12"
with:
identifier: "{{identifier}}"
- name: push
type: call
call: "datadog.submit-metrics"
with:
metric_name: "capital-markets.workflow_12"
data: "{{process.metrics}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-12
method: POST
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v2"
authentication:
type: bearer
token: "$secrets.datadog_token"
resources:
- name: metrics
path: "/metrics"
operations:
- name: submit-metrics
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 13"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- salesforce
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-13
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-13"
with:
identifier: "{{identifier}}"
- name: create
type: call
call: "salesforce.create-account"
with:
data: "{{process.result}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-13
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: accounts
path: "/accounts"
operations:
- name: create-account
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 14"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- servicenow
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-14
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-14"
with:
identifier: "{{identifier}}"
- name: create
type: call
call: "servicenow.create-incident"
with:
data: "{{process.result}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-14
method: POST
- type: http
namespace: servicenow
baseUri: "https://nasdaq.service-now.com/api/now/v1"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: incidents
path: "/incidents"
operations:
- name: create-incident
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 15"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- slack
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-15
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-15"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "slack.post-message"
with:
channel: "#capital-markets"
text: "Completed workflow 15: {{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-15
method: POST
- type: http
namespace: slack
baseUri: "https://slack.com/api"
authentication:
type: bearer
token: "$secrets.slack_token"
resources:
- name: messages
path: "/messages"
operations:
- name: post-message
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 16"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- confluence
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-16
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-16"
with:
identifier: "{{identifier}}"
- name: publish
type: call
call: "confluence.create-page"
with:
space: "CAPITA"
title: "Report 16"
content: "{{process.report}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-16
method: POST
- type: http
namespace: confluence
baseUri: "https://nasdaq.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: pages
path: "/pages"
operations:
- name: create-page
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 17"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- powerbi
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-17
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-17"
with:
identifier: "{{identifier}}"
- name: refresh
type: call
call: "powerbi.refresh-dataset"
with:
dataset_id: "workflow_17"
data: "{{process.metrics}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-17
method: POST
- type: http
namespace: powerbi
baseUri: "https://api.powerbi.com/v1.0"
authentication:
type: bearer
token: "$secrets.powerbi_token"
resources:
- name: datasets
path: "/datasets"
operations:
- name: refresh-dataset
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 18"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- jira
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-18
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-18"
with:
identifier: "{{identifier}}"
- name: create-ticket
type: call
call: "jira.create-issue"
with:
project: "CAPI"
summary: "Task from workflow 18"
description: "{{process.details}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-18
method: POST
- type: http
namespace: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: issues
path: "/issues"
operations:
- name: create-issue
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 19"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- teams
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-19
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-19"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "teams.send-message"
with:
channel_id: "capital-markets"
message: "Workflow 19 complete: {{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-19
method: POST
- type: http
namespace: teams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.teams_token"
resources:
- name: messages
path: "/messages"
operations:
- name: send-message
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 2"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- servicenow
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-2
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-2"
with:
identifier: "{{identifier}}"
- name: create
type: call
call: "servicenow.create-incident"
with:
data: "{{process.result}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-2
method: POST
- type: http
namespace: servicenow
baseUri: "https://nasdaq.service-now.com/api/now/v1"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: incidents
path: "/incidents"
operations:
- name: create-incident
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 20"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- tableau
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-20
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-20"
with:
identifier: "{{identifier}}"
- name: refresh
type: call
call: "tableau.publish-datasource"
with:
dataset_id: "workflow_20"
data: "{{process.metrics}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-20
method: POST
- type: http
namespace: tableau
baseUri: "https://nasdaq-tableau.online.tableau.com/api/3.19"
authentication:
type: bearer
token: "$secrets.tableau_token"
resources:
- name: datasources
path: "/datasources"
operations:
- name: publish-datasource
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 21"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- box
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-21
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-21"
with:
identifier: "{{identifier}}"
- name: upload
type: call
call: "box.upload-file"
with:
content: "{{process.document}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-21
method: POST
- type: http
namespace: box
baseUri: "https://api.box.com/2.0"
authentication:
type: bearer
token: "$secrets.box_token"
resources:
- name: files
path: "/files"
operations:
- name: upload-file
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 22"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- sharepoint
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-22
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-22"
with:
identifier: "{{identifier}}"
- name: upload
type: call
call: "sharepoint.upload-document"
with:
content: "{{process.document}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-22
method: POST
- type: http
namespace: sharepoint
baseUri: "https://nasdaq.sharepoint.com/_api/v2.0"
authentication:
type: bearer
token: "$secrets.sharepoint_token"
resources:
- name: documents
path: "/documents"
operations:
- name: upload-document
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 23"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- hubspot
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-23
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-23"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "hubspot.send-email"
with:
to: "{{process.email}}"
subject: "Workflow 23 Complete"
body: "{{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-23
method: POST
- type: http
namespace: hubspot
baseUri: "https://api.hubapi.com/crm/v3"
authentication:
type: bearer
token: "$secrets.hubspot_token"
resources:
- name: contacts
path: "/contacts"
operations:
- name: send-email
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 24"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- datadog
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-24
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-24"
with:
identifier: "{{identifier}}"
- name: push
type: call
call: "datadog.submit-metrics"
with:
metric_name: "capital-markets.workflow_24"
data: "{{process.metrics}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-24
method: POST
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v2"
authentication:
type: bearer
token: "$secrets.datadog_token"
resources:
- name: metrics
path: "/metrics"
operations:
- name: submit-metrics
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 25"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- salesforce
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-25
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-25"
with:
identifier: "{{identifier}}"
- name: create
type: call
call: "salesforce.create-account"
with:
data: "{{process.result}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-25
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: accounts
path: "/accounts"
operations:
- name: create-account
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 26"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- servicenow
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-26
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-26"
with:
identifier: "{{identifier}}"
- name: create
type: call
call: "servicenow.create-incident"
with:
data: "{{process.result}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-26
method: POST
- type: http
namespace: servicenow
baseUri: "https://nasdaq.service-now.com/api/now/v1"
authentication:
type: bearer
token: "$secrets.servicenow_token"
resources:
- name: incidents
path: "/incidents"
operations:
- name: create-incident
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 27"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- slack
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-27
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-27"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "slack.post-message"
with:
channel: "#capital-markets"
text: "Completed workflow 27: {{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-27
method: POST
- type: http
namespace: slack
baseUri: "https://slack.com/api"
authentication:
type: bearer
token: "$secrets.slack_token"
resources:
- name: messages
path: "/messages"
operations:
- name: post-message
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 28"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- confluence
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-28
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-28"
with:
identifier: "{{identifier}}"
- name: publish
type: call
call: "confluence.create-page"
with:
space: "CAPITA"
title: "Report 28"
content: "{{process.report}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-28
method: POST
- type: http
namespace: confluence
baseUri: "https://nasdaq.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: pages
path: "/pages"
operations:
- name: create-page
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 29"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- powerbi
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-29
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-29"
with:
identifier: "{{identifier}}"
- name: refresh
type: call
call: "powerbi.refresh-dataset"
with:
dataset_id: "workflow_29"
data: "{{process.metrics}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-29
method: POST
- type: http
namespace: powerbi
baseUri: "https://api.powerbi.com/v1.0"
authentication:
type: bearer
token: "$secrets.powerbi_token"
resources:
- name: datasets
path: "/datasets"
operations:
- name: refresh-dataset
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 3"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- slack
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-3
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-3"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "slack.post-message"
with:
channel: "#capital-markets"
text: "Completed workflow 3: {{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-3
method: POST
- type: http
namespace: slack
baseUri: "https://slack.com/api"
authentication:
type: bearer
token: "$secrets.slack_token"
resources:
- name: messages
path: "/messages"
operations:
- name: post-message
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 30"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- jira
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-30
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-30"
with:
identifier: "{{identifier}}"
- name: create-ticket
type: call
call: "jira.create-issue"
with:
project: "CAPI"
summary: "Task from workflow 30"
description: "{{process.details}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-30
method: POST
- type: http
namespace: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: issues
path: "/issues"
operations:
- name: create-issue
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 31"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- teams
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-31
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-31"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "teams.send-message"
with:
channel_id: "capital-markets"
message: "Workflow 31 complete: {{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-31
method: POST
- type: http
namespace: teams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.teams_token"
resources:
- name: messages
path: "/messages"
operations:
- name: send-message
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 32"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- tableau
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-32
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-32"
with:
identifier: "{{identifier}}"
- name: refresh
type: call
call: "tableau.publish-datasource"
with:
dataset_id: "workflow_32"
data: "{{process.metrics}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-32
method: POST
- type: http
namespace: tableau
baseUri: "https://nasdaq-tableau.online.tableau.com/api/3.19"
authentication:
type: bearer
token: "$secrets.tableau_token"
resources:
- name: datasources
path: "/datasources"
operations:
- name: publish-datasource
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 33"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- box
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-33
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-33"
with:
identifier: "{{identifier}}"
- name: upload
type: call
call: "box.upload-file"
with:
content: "{{process.document}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-33
method: POST
- type: http
namespace: box
baseUri: "https://api.box.com/2.0"
authentication:
type: bearer
token: "$secrets.box_token"
resources:
- name: files
path: "/files"
operations:
- name: upload-file
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 34"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- sharepoint
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-34
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-34"
with:
identifier: "{{identifier}}"
- name: upload
type: call
call: "sharepoint.upload-document"
with:
content: "{{process.document}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-34
method: POST
- type: http
namespace: sharepoint
baseUri: "https://nasdaq.sharepoint.com/_api/v2.0"
authentication:
type: bearer
token: "$secrets.sharepoint_token"
resources:
- name: documents
path: "/documents"
operations:
- name: upload-document
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 35"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- hubspot
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-35
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-35"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "hubspot.send-email"
with:
to: "{{process.email}}"
subject: "Workflow 35 Complete"
body: "{{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-35
method: POST
- type: http
namespace: hubspot
baseUri: "https://api.hubapi.com/crm/v3"
authentication:
type: bearer
token: "$secrets.hubspot_token"
resources:
- name: contacts
path: "/contacts"
operations:
- name: send-email
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 4"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- confluence
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-4
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-4"
with:
identifier: "{{identifier}}"
- name: publish
type: call
call: "confluence.create-page"
with:
space: "CAPITA"
title: "Report 4"
content: "{{process.report}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-4
method: POST
- type: http
namespace: confluence
baseUri: "https://nasdaq.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: pages
path: "/pages"
operations:
- name: create-page
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 5"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- powerbi
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-5
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-5"
with:
identifier: "{{identifier}}"
- name: refresh
type: call
call: "powerbi.refresh-dataset"
with:
dataset_id: "workflow_5"
data: "{{process.metrics}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-5
method: POST
- type: http
namespace: powerbi
baseUri: "https://api.powerbi.com/v1.0"
authentication:
type: bearer
token: "$secrets.powerbi_token"
resources:
- name: datasets
path: "/datasets"
operations:
- name: refresh-dataset
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 6"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- jira
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-6
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-6"
with:
identifier: "{{identifier}}"
- name: create-ticket
type: call
call: "jira.create-issue"
with:
project: "CAPI"
summary: "Task from workflow 6"
description: "{{process.details}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-6
method: POST
- type: http
namespace: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: issues
path: "/issues"
operations:
- name: create-issue
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 7"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- teams
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-7
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-7"
with:
identifier: "{{identifier}}"
- name: notify
type: call
call: "teams.send-message"
with:
channel_id: "capital-markets"
message: "Workflow 7 complete: {{process.summary}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-7
method: POST
- type: http
namespace: teams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.teams_token"
resources:
- name: messages
path: "/messages"
operations:
- name: send-message
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 8"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- tableau
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-8
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-8"
with:
identifier: "{{identifier}}"
- name: refresh
type: call
call: "tableau.publish-datasource"
with:
dataset_id: "workflow_8"
data: "{{process.metrics}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-8
method: POST
- type: http
namespace: tableau
baseUri: "https://nasdaq-tableau.online.tableau.com/api/3.19"
authentication:
type: bearer
token: "$secrets.tableau_token"
resources:
- name: datasources
path: "/datasources"
operations:
- name: publish-datasource
method: POST
Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq.
naftiko: "0.5"
info:
label: "Nasdaq Workflow 9"
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
tags:
- capital-markets
- operations
- box
capability:
exposes:
- type: mcp
namespace: capital-markets
port: 8080
tools:
- name: nasdaq-workflow-9
description: "Orchestrates capital-markets operations including data retrieval, processing, and automated notification for Nasdaq."
inputParameters:
- name: identifier
in: body
type: string
description: "Primary identifier for this workflow"
steps:
- name: process
type: call
call: "nasdaq-ops.run-workflow-9"
with:
identifier: "{{identifier}}"
- name: upload
type: call
call: "box.upload-file"
with:
content: "{{process.document}}"
consumes:
- type: http
namespace: nasdaq-ops
baseUri: "https://api.nasdaq.com/operations/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: operations
path: "/operations"
operations:
- name: run-workflow-9
method: POST
- type: http
namespace: box
baseUri: "https://api.box.com/2.0"
authentication:
type: bearer
token: "$secrets.box_token"
resources:
- name: files
path: "/files"
operations:
- name: upload-file
method: POST
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 1"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-1
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-1"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-1
path: "/data-1/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-1
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 10"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-10
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-10"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-10
path: "/data-10/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-10
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 11"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-11
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-11"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-11
path: "/data-11/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-11
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 12"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-12
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-12"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-12
path: "/data-12/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-12
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 13"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-13
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-13"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-13
path: "/data-13/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-13
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 14"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-14
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-14"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-14
path: "/data-14/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-14
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 15"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-15
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-15"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-15
path: "/data-15/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-15
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 2"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-2
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-2"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-2
path: "/data-2/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-2
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 3"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-3
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-3"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-3
path: "/data-3/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-3
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 4"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-4
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-4"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-4
path: "/data-4/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-4
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 5"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-5
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-5"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-5
path: "/data-5/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-5
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 6"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-6
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-6"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-6
path: "/data-6/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-6
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 7"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-7
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-7"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-7
path: "/data-7/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-7
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 8"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-8
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-8"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-8
path: "/data-8/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-8
method: GET
Retrieves operational data for Nasdaq capital-markets workflows.
naftiko: "0.5"
info:
label: "Nasdaq Data Lookup 9"
description: "Retrieves operational data for Nasdaq capital-markets workflows."
tags:
- capital-markets
- operations
capability:
exposes:
- type: mcp
namespace: nasdaq-data
port: 8080
tools:
- name: get-data-9
description: "Retrieves operational data for Nasdaq capital-markets workflows."
inputParameters:
- name: identifier
in: body
type: string
description: "Resource identifier"
call: "nasdaq-data.get-data-9"
with:
identifier: "{{identifier}}"
consumes:
- type: http
namespace: nasdaq-data
baseUri: "https://api.nasdaq.com/data/v1"
authentication:
type: bearer
token: "$secrets.nasdaq_api_token"
resources:
- name: data-9
path: "/data-9/{{identifier}}"
inputParameters:
- name: identifier
in: path
operations:
- name: get-data-9
method: GET
Provisions a new SaaS product subscription for a client by creating the subscription in Salesforce, setting up access in Snowflake, configuring monitoring in Datadog, and sending welcome credentials via Microsoft Outlook.
naftiko: "0.5"
info:
label: "Client SaaS Product Provisioning"
description: "Provisions a new SaaS product subscription for a client by creating the subscription in Salesforce, setting up access in Snowflake, configuring monitoring in Datadog, and sending welcome credentials via Microsoft Outlook."
tags:
- market-data
- client-onboarding
- salesforce
- snowflake
- datadog
- microsoft-outlook
capability:
exposes:
- type: mcp
namespace: saas-provisioning
port: 8080
tools:
- name: provision-saas-product
description: "Given client and product details, provision full SaaS access."
inputParameters:
- name: client_id
in: body
type: string
description: "The client account ID."
- name: product_name
in: body
type: string
description: "The SaaS product name."
- name: contact_email
in: body
type: string
description: "The client contact email."
steps:
- name: create-subscription
type: call
call: "salesforce.create-subscription"
with:
client_id: "{{client_id}}"
product: "{{product_name}}"
- name: provision-data-access
type: call
call: "snowflake.execute-query"
with:
client_id: "{{client_id}}"
product: "{{product_name}}"
- name: setup-monitoring
type: call
call: "datadog.create-monitor"
with:
client_id: "{{client_id}}"
product: "{{product_name}}"
- name: send-credentials
type: call
call: "outlook.send-mail"
with:
recipient: "{{contact_email}}"
subject: "Nasdaq {{product_name}} - Access Provisioned"
body: "Your {{product_name}} subscription is active. Subscription: {{create-subscription.id}}."
consumes:
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: subscriptions
path: "/sobjects/Subscription__c"
operations:
- name: create-subscription
method: POST
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: bearer
token: "$secrets.datadog_api_key"
resources:
- name: monitors
path: "/monitor"
operations:
- name: create-monitor
method: POST
- type: http
namespace: outlook
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: messages
path: "/users/onboarding@nasdaq.com/sendMail"
operations:
- name: send-mail
method: POST
Retrieves corporate actions events from Snowflake for a security, including dividends, splits, mergers, and spin-offs.
naftiko: "0.5"
info:
label: "Corporate Actions Event Lookup"
description: "Retrieves corporate actions events from Snowflake for a security, including dividends, splits, mergers, and spin-offs."
tags:
- corporate-actions
- market-data
- snowflake
capability:
exposes:
- type: mcp
namespace: corporate-actions
port: 8080
tools:
- name: get-corporate-actions
description: "Look up corporate actions for a security by ticker and date range."
inputParameters:
- name: ticker
in: body
type: string
description: "The security ticker symbol."
- name: start_date
in: body
type: string
description: "Start date in YYYY-MM-DD format."
call: "snowflake.get-corporate-actions"
with:
ticker: "{{ticker}}"
start_date: "{{start_date}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-corporate-actions
method: POST
Retrieves infrastructure metrics from Datadog for trading platform monitoring including latency, throughput, and error rates.
naftiko: "0.5"
info:
label: "Datadog Infrastructure Metrics"
description: "Retrieves infrastructure metrics from Datadog for trading platform monitoring including latency, throughput, and error rates."
tags:
- monitoring
- datadog
- trading
capability:
exposes:
- type: mcp
namespace: infra-metrics
port: 8080
tools:
- name: get-metrics
description: "Query Datadog for infrastructure metrics."
inputParameters:
- name: metric_name
in: body
type: string
description: "The Datadog metric name."
- name: from_ts
in: body
type: string
description: "Start timestamp (epoch seconds)."
- name: to_ts
in: body
type: string
description: "End timestamp (epoch seconds)."
call: "datadog.query-metrics"
with:
metric_name: "{{metric_name}}"
from_ts: "{{from_ts}}"
to_ts: "{{to_ts}}"
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: bearer
token: "$secrets.datadog_api_key"
resources:
- name: metrics
path: "/query?query={{metric_name}}&from={{from_ts}}&to={{to_ts}}"
inputParameters:
- name: metric_name
in: query
- name: from_ts
in: query
- name: to_ts
in: query
operations:
- name: query-metrics
method: GET
Retrieves trading system latency metrics from Datadog, returning P50, P95, and P99 latencies for the matching engine and gateway.
naftiko: "0.5"
info:
label: "Datadog Trading Latency Monitoring"
description: "Retrieves trading system latency metrics from Datadog, returning P50, P95, and P99 latencies for the matching engine and gateway."
tags:
- monitoring
- trading
- datadog
capability:
exposes:
- type: mcp
namespace: trading-latency
port: 8080
tools:
- name: get-trading-latency
description: "Retrieve trading latency metrics from Datadog by service."
inputParameters:
- name: service_name
in: body
type: string
description: "The trading service name."
call: "datadog.get-latency"
with:
service_name: "{{service_name}}"
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: apikey
header: "DD-API-KEY"
key: "$secrets.datadog_api_key"
resources:
- name: metrics
path: "/query?query=avg:trace.http.request.duration{service:{{service_name}}}"
inputParameters:
- name: service_name
in: query
operations:
- name: get-latency
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 the full onboarding sequence."
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 format."
- 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.post-message"
with:
team_id: "hr-team"
channel_id: "new-hires"
message: "Welcome to Nasdaq, {{get-employee.first_name}}! Onboarding ticket: {{open-ticket.number}}. Documents: {{provision-folder.webUrl}}."
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://nasdaq.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: folders
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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Calculates listing fees for an ETF by pulling fund details from Salesforce and applying the fee schedule from Snowflake, returning annual listing fee and tier classification.
naftiko: "0.5"
info:
label: "ETF Listing Fee Calculator"
description: "Calculates listing fees for an ETF by pulling fund details from Salesforce and applying the fee schedule from Snowflake, returning annual listing fee and tier classification."
tags:
- listing
- etf
- salesforce
- snowflake
capability:
exposes:
- type: mcp
namespace: etf-fees
port: 8080
tools:
- name: calculate-etf-fee
description: "Given a fund ticker, calculate the ETF listing fee."
inputParameters:
- name: fund_ticker
in: body
type: string
description: "The ETF fund ticker."
steps:
- name: get-fund-details
type: call
call: "salesforce.get-fund"
with:
fund_ticker: "{{fund_ticker}}"
- name: calculate-fee
type: call
call: "snowflake.execute-query"
with:
aum: "{{get-fund-details.AUM__c}}"
fund_ticker: "{{fund_ticker}}"
consumes:
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: funds
path: "/query/?q=SELECT+AUM__c,Share_Count__c,Fund_Name__c+FROM+ETF__c+WHERE+Ticker__c='{{fund_ticker}}'"
inputParameters:
- name: fund_ticker
in: query
operations:
- name: get-fund
method: GET
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
Retrieves exchange membership details from Salesforce by member firm ID, returning membership type, trading permissions, sponsored access status, and annual fee.
naftiko: "0.5"
info:
label: "Exchange Membership Lookup"
description: "Retrieves exchange membership details from Salesforce by member firm ID, returning membership type, trading permissions, sponsored access status, and annual fee."
tags:
- membership
- exchange
- salesforce
capability:
exposes:
- type: mcp
namespace: exchange-membership
port: 8080
tools:
- name: get-membership-details
description: "Look up exchange membership by member firm ID."
inputParameters:
- name: firm_id
in: body
type: string
description: "The member firm identifier."
call: "salesforce.get-membership"
with:
firm_id: "{{firm_id}}"
consumes:
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: memberships
path: "/query/?q=SELECT+Membership_Type__c,Trading_Permissions__c,Sponsored_Access__c,Annual_Fee__c+FROM+Member_Firm__c+WHERE+Firm_ID__c='{{firm_id}}'"
inputParameters:
- name: firm_id
in: query
operations:
- name: get-membership
method: GET
Analyzes fintech SaaS client usage by querying usage data from Snowflake, pulling subscription data from Salesforce, refreshing Power BI dashboards, and notifying account managers via Microsoft Teams.
naftiko: "0.5"
info:
label: "Fintech SaaS Client Usage Analytics"
description: "Analyzes fintech SaaS client usage by querying usage data from Snowflake, pulling subscription data from Salesforce, refreshing Power BI dashboards, and notifying account managers via Microsoft Teams."
tags:
- market-data
- analytics
- snowflake
- salesforce
- power-bi
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: client-usage
port: 8080
tools:
- name: analyze-client-usage
description: "Given a client ID and period, analyze their SaaS product usage."
inputParameters:
- name: client_id
in: body
type: string
description: "The client account ID."
- name: period
in: body
type: string
description: "The analysis period."
steps:
- name: query-usage
type: call
call: "snowflake.execute-query"
with:
client_id: "{{client_id}}"
period: "{{period}}"
- name: get-subscription
type: call
call: "salesforce.get-subscription"
with:
client_id: "{{client_id}}"
- name: refresh-dashboard
type: call
call: "powerbi.refresh-dataset"
with:
dataset_id: "client-usage-dataset"
- name: notify-account-mgr
type: call
call: "msteams.post-message"
with:
team_id: "account-management"
channel_id: "usage-reports"
message: "Client {{client_id}} usage report ({{period}}): {{query-usage.api_calls}} API calls. Subscription: {{get-subscription.Product__c}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: subscriptions
path: "/query/?q=SELECT+Product__c,Tier__c+FROM+Subscription__c+WHERE+Account_ID__c='{{client_id}}'"
inputParameters:
- name: client_id
in: query
operations:
- name: get-subscription
method: GET
- 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
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Retrieves the current composition of a Nasdaq index from Snowflake, returning constituent tickers, weights, and sector classifications.
naftiko: "0.5"
info:
label: "Index Composition Lookup"
description: "Retrieves the current composition of a Nasdaq index from Snowflake, returning constituent tickers, weights, and sector classifications."
tags:
- indices
- market-data
- snowflake
capability:
exposes:
- type: mcp
namespace: index-composition
port: 8080
tools:
- name: get-index-composition
description: "Look up index constituents by index name."
inputParameters:
- name: index_name
in: body
type: string
description: "The index name (e.g., NASDAQ-100, NASDAQ Composite)."
call: "snowflake.get-index-composition"
with:
index_name: "{{index_name}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-index-composition
method: POST
Orchestrates a new IPO listing by creating the listing record in Salesforce, provisioning market data feeds in Snowflake, setting up surveillance rules, uploading regulatory docs to SharePoint, and notifying the listings team via Microsoft Teams.
naftiko: "0.5"
info:
label: "IPO Listing Orchestrator"
description: "Orchestrates a new IPO listing by creating the listing record in Salesforce, provisioning market data feeds in Snowflake, setting up surveillance rules, uploading regulatory docs to SharePoint, and notifying the listings team via Microsoft Teams."
tags:
- listing
- ipo
- salesforce
- snowflake
- sharepoint
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: ipo-listing
port: 8080
tools:
- name: process-ipo-listing
description: "Given company and listing details, orchestrate the full IPO listing setup."
inputParameters:
- name: company_name
in: body
type: string
description: "The company name."
- name: ticker_symbol
in: body
type: string
description: "The assigned ticker symbol."
- name: listing_date
in: body
type: string
description: "The listing date in YYYY-MM-DD format."
- name: offering_price
in: body
type: string
description: "The IPO offering price."
steps:
- name: create-listing-record
type: call
call: "salesforce.create-listing"
with:
company_name: "{{company_name}}"
ticker: "{{ticker_symbol}}"
listing_date: "{{listing_date}}"
price: "{{offering_price}}"
- name: provision-data-feeds
type: call
call: "snowflake.execute-query"
with:
ticker: "{{ticker_symbol}}"
listing_date: "{{listing_date}}"
- name: upload-docs
type: call
call: "sharepoint.create-folder"
with:
site_id: "listings_site"
folder_path: "IPOs/{{ticker_symbol}}_{{listing_date}}"
- name: notify-listings-team
type: call
call: "msteams.post-message"
with:
team_id: "listings-team"
channel_id: "new-listings"
message: "IPO listing processed: {{company_name}} ({{ticker_symbol}}) on {{listing_date}} at ${{offering_price}}. Salesforce: {{create-listing-record.id}}. Docs: {{upload-docs.webUrl}}."
consumes:
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: listings
path: "/sobjects/Listing__c"
operations:
- name: create-listing
method: POST
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: sharepoint
baseUri: "https://graph.microsoft.com/v1.0/sites"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: folders
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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Queries historical IPO pricing data from Snowflake by sector and year, returning offering prices, first-day closes, and underwriter details.
naftiko: "0.5"
info:
label: "IPO Pricing History Query"
description: "Queries historical IPO pricing data from Snowflake by sector and year, returning offering prices, first-day closes, and underwriter details."
tags:
- ipo
- analytics
- snowflake
capability:
exposes:
- type: mcp
namespace: ipo-history
port: 8080
tools:
- name: get-ipo-history
description: "Query IPO pricing history by sector and year."
inputParameters:
- name: sector
in: body
type: string
description: "The industry sector."
- name: year
in: body
type: string
description: "The year."
call: "snowflake.get-ipo-history"
with:
sector: "{{sector}}"
year: "{{year}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-ipo-history
method: POST
Creates an IT change request in ServiceNow for exchange platform changes, links Confluence documentation, creates a Jira implementation task, and notifies the change advisory board.
naftiko: "0.5"
info:
label: "IT Change Request Pipeline"
description: "Creates an IT change request in ServiceNow for exchange platform changes, links Confluence documentation, creates a Jira implementation task, and notifies the change advisory board."
tags:
- it-service
- change-management
- servicenow
- confluence
- jira
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: change-management
port: 8080
tools:
- name: submit-change-request
description: "Given change details, create records and notify the CAB."
inputParameters:
- name: change_summary
in: body
type: string
description: "Summary of the change."
- name: change_type
in: body
type: string
description: "Type of change."
- name: doc_page_id
in: body
type: string
description: "Confluence page ID."
steps:
- name: create-change
type: call
call: "servicenow.create-change"
with:
short_description: "{{change_summary}}"
type: "{{change_type}}"
- name: get-doc
type: call
call: "confluence.get-page"
with:
page_id: "{{doc_page_id}}"
- name: create-task
type: call
call: "jira.create-issue"
with:
project_key: "PLAT"
summary: "Implement: {{change_summary}}"
description: "Change: {{create-change.number}}. Docs: {{get-doc._links.webui}}."
issue_type: "Task"
- name: notify-cab
type: call
call: "msteams.post-message"
with:
team_id: "platform-ops-team"
channel_id: "change-advisory"
message: "Change request {{create-change.number}}: {{change_summary}}. Type: {{change_type}}. Jira: {{create-task.key}}."
consumes:
- type: http
namespace: servicenow
baseUri: "https://nasdaq.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: changes
path: "/table/change_request"
operations:
- name: create-change
method: POST
- type: http
namespace: confluence
baseUri: "https://nasdaq.atlassian.net/wiki/rest/api"
authentication:
type: basic
username: "$secrets.confluence_user"
password: "$secrets.confluence_api_token"
resources:
- name: pages
path: "/content/{{page_id}}"
inputParameters:
- name: page_id
in: path
operations:
- name: get-page
method: GET
- type: http
namespace: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: issues
path: "/issue"
operations:
- name: create-issue
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Retrieves the status of exchange platform enhancement requests from Jira by project and sprint, returning issue summaries, priorities, and assignees.
naftiko: "0.5"
info:
label: "Jira Exchange Enhancement Tracker"
description: "Retrieves the status of exchange platform enhancement requests from Jira by project and sprint, returning issue summaries, priorities, and assignees."
tags:
- project-management
- exchange
- jira
capability:
exposes:
- type: mcp
namespace: exchange-enhancements
port: 8080
tools:
- name: get-enhancement-status
description: "Look up exchange enhancement issues by project and sprint."
inputParameters:
- name: project_key
in: body
type: string
description: "The Jira project key."
- name: sprint_name
in: body
type: string
description: "The sprint name."
call: "jira.search-issues"
with:
project_key: "{{project_key}}"
sprint_name: "{{sprint_name}}"
consumes:
- type: http
namespace: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: search
path: "/search?jql=project={{project_key}}+AND+sprint='{{sprint_name}}'"
inputParameters:
- name: project_key
in: query
- name: sprint_name
in: query
operations:
- name: search-issues
method: GET
Retrieves a Jira issue by key for technology platform and exchange operations project tracking.
naftiko: "0.5"
info:
label: "Jira Issue Lookup"
description: "Retrieves a Jira issue by key for technology platform and exchange operations project tracking."
tags:
- project-management
- jira
capability:
exposes:
- type: mcp
namespace: project-tracking
port: 8080
tools:
- name: get-jira-issue
description: "Look up a Jira issue by key."
inputParameters:
- name: issue_key
in: body
type: string
description: "The Jira issue key."
call: "jira.get-issue"
with:
issue_key: "{{issue_key}}"
consumes:
- type: http
namespace: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: issues
path: "/issue/{{issue_key}}"
inputParameters:
- name: issue_key
in: path
operations:
- name: get-issue
method: GET
Checks the status of a company's listing application in Salesforce, returning application state, review stage, and assigned analyst.
naftiko: "0.5"
info:
label: "Listing Application Status"
description: "Checks the status of a company's listing application in Salesforce, returning application state, review stage, and assigned analyst."
tags:
- listing
- salesforce
capability:
exposes:
- type: mcp
namespace: listing-services
port: 8080
tools:
- name: get-listing-status
description: "Look up a listing application by application ID."
inputParameters:
- name: application_id
in: body
type: string
description: "The listing application ID."
call: "salesforce.get-application"
with:
application_id: "{{application_id}}"
outputParameters:
- name: status
type: string
mapping: "$.records[0].Application_Status__c"
- name: review_stage
type: string
mapping: "$.records[0].Review_Stage__c"
- name: assigned_analyst
type: string
mapping: "$.records[0].Assigned_Analyst__c"
consumes:
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: applications
path: "/query/?q=SELECT+Application_Status__c,Review_Stage__c,Assigned_Analyst__c+FROM+Listing_Application__c+WHERE+Application_ID__c='{{application_id}}'"
inputParameters:
- name: application_id
in: query
operations:
- name: get-application
method: GET
Reviews listed company compliance by pulling financial data from Snowflake, checking listing standards in Salesforce, creating a compliance review case in ServiceNow, and notifying the listings qualifications team.
naftiko: "0.5"
info:
label: "Listing Compliance Review Pipeline"
description: "Reviews listed company compliance by pulling financial data from Snowflake, checking listing standards in Salesforce, creating a compliance review case in ServiceNow, and notifying the listings qualifications team."
tags:
- listing
- compliance
- snowflake
- salesforce
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: listing-compliance
port: 8080
tools:
- name: review-listing-compliance
description: "Given a listed company ticker, review compliance with listing standards."
inputParameters:
- name: ticker
in: body
type: string
description: "The listed company ticker."
- name: review_type
in: body
type: string
description: "Type of review (annual, bid_price, market_cap)."
steps:
- name: pull-financial-data
type: call
call: "snowflake.execute-query"
with:
ticker: "{{ticker}}"
review_type: "{{review_type}}"
- name: check-listing-standards
type: call
call: "salesforce.get-listing-record"
with:
ticker: "{{ticker}}"
- name: create-review-case
type: call
call: "servicenow.create-incident"
with:
short_description: "Listing compliance: {{ticker}} - {{review_type}}"
category: "listing_compliance"
description: "{{review_type}} review for {{ticker}}. Market cap: {{pull-financial-data.market_cap}}. Bid price: {{pull-financial-data.bid_price}}."
- name: notify-qualifications
type: call
call: "msteams.post-message"
with:
team_id: "listings-team"
channel_id: "compliance-reviews"
message: "Listing compliance review: {{ticker}} ({{review_type}}). Case: {{create-review-case.number}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: listing-records
path: "/query/?q=SELECT+Listing_Status__c,Standards_Met__c+FROM+Listing__c+WHERE+Ticker__c='{{ticker}}'"
inputParameters:
- name: ticker
in: query
operations:
- name: get-listing-record
method: GET
- type: http
namespace: servicenow
baseUri: "https://nasdaq.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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Checks a listed company's compliance with Nasdaq listing standards by querying financial metrics from Snowflake and returning compliance status for each requirement.
naftiko: "0.5"
info:
label: "Listing Standards Compliance Check"
description: "Checks a listed company's compliance with Nasdaq listing standards by querying financial metrics from Snowflake and returning compliance status for each requirement."
tags:
- listing
- compliance
- snowflake
capability:
exposes:
- type: mcp
namespace: listing-compliance
port: 8080
tools:
- name: check-listing-compliance
description: "Check listing standards compliance by company ticker."
inputParameters:
- name: ticker
in: body
type: string
description: "The listed company ticker."
call: "snowflake.check-compliance"
with:
ticker: "{{ticker}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: check-compliance
method: POST
Generates market analytics reports by querying trading data from Snowflake, enriching with Bloomberg reference data, refreshing Power BI dashboards, uploading to SharePoint, and notifying the analytics team.
naftiko: "0.5"
info:
label: "Market Analytics Report Pipeline"
description: "Generates market analytics reports by querying trading data from Snowflake, enriching with Bloomberg reference data, refreshing Power BI dashboards, uploading to SharePoint, and notifying the analytics team."
tags:
- market-data
- analytics
- snowflake
- bloomberg-enterprise-data
- power-bi
- sharepoint
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: market-analytics
port: 8080
tools:
- name: generate-market-analytics
description: "Given a market segment and period, generate comprehensive market analytics."
inputParameters:
- name: market_segment
in: body
type: string
description: "The market segment (equities, options, fixed_income)."
- name: period
in: body
type: string
description: "The analysis period."
steps:
- name: query-trading-data
type: call
call: "snowflake.execute-query"
with:
segment: "{{market_segment}}"
period: "{{period}}"
- name: enrich-with-reference
type: call
call: "bloomberg.get-pricing"
with:
identifier: "{{market_segment}}"
identifier_type: "SEGMENT"
- name: refresh-dashboard
type: call
call: "powerbi.refresh-dataset"
with:
dataset_id: "market-analytics-dataset"
- name: upload-report
type: call
call: "sharepoint.create-folder"
with:
site_id: "analytics_site"
folder_path: "MarketAnalytics/{{market_segment}}/{{period}}"
- name: notify-analytics
type: call
call: "msteams.post-message"
with:
team_id: "analytics-team"
channel_id: "market-reports"
message: "Market analytics for {{market_segment}} ({{period}}) complete. {{query-trading-data.rowCount}} data points. Report: {{upload-report.webUrl}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: bloomberg
baseUri: "https://api.bloomberg.com/eap/catalogs/bbg/datasets"
authentication:
type: bearer
token: "$secrets.bloomberg_token"
resources:
- name: pricing
path: "/pricing"
operations:
- name: get-pricing
method: GET
- 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
- type: http
namespace: sharepoint
baseUri: "https://graph.microsoft.com/v1.0/sites"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: folders
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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Provisions market data API keys for new fintech clients by creating credentials in Snowflake, logging the provisioning in Salesforce, and notifying the integrations team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Market Data API Key Provisioning"
description: "Provisions market data API keys for new fintech clients by creating credentials in Snowflake, logging the provisioning in Salesforce, and notifying the integrations team via Microsoft Teams."
tags:
- fintech
- provisioning
- snowflake
- salesforce
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: api-provisioning
port: 8080
tools:
- name: provision-api-key
description: "Given a client ID and product tier, provision market data API access."
inputParameters:
- name: client_id
in: body
type: string
description: "The client account ID."
- name: product_tier
in: body
type: string
description: "The product tier (basic, professional, enterprise)."
steps:
- name: create-credentials
type: call
call: "snowflake.execute-query"
with:
client_id: "{{client_id}}"
tier: "{{product_tier}}"
- name: log-provisioning
type: call
call: "salesforce.create-provisioning-log"
with:
client_id: "{{client_id}}"
tier: "{{product_tier}}"
- name: notify-integrations
type: call
call: "msteams.post-message"
with:
team_id: "integrations-team"
channel_id: "provisioning"
message: "API key provisioned for client {{client_id}} ({{product_tier}} tier)."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: provisioning-logs
path: "/sobjects/Provisioning_Log__c"
operations:
- name: create-provisioning-log
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Delivers market data products to clients by extracting data from Snowflake, logging delivery in Salesforce, creating a ServiceNow ticket for tracking, and notifying the data services team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Market Data Product Delivery Pipeline"
description: "Delivers market data products to clients by extracting data from Snowflake, logging delivery in Salesforce, creating a ServiceNow ticket for tracking, and notifying the data services team via Microsoft Teams."
tags:
- market-data
- data-delivery
- snowflake
- salesforce
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: data-product-delivery
port: 8080
tools:
- name: deliver-market-data
description: "Given a client and data product, extract and deliver the market data feed."
inputParameters:
- name: client_id
in: body
type: string
description: "The client account ID."
- name: data_product
in: body
type: string
description: "The data product name."
- name: delivery_date
in: body
type: string
description: "Delivery date."
steps:
- name: extract-data
type: call
call: "snowflake.execute-query"
with:
client_id: "{{client_id}}"
product: "{{data_product}}"
date: "{{delivery_date}}"
- name: log-delivery
type: call
call: "salesforce.create-delivery-log"
with:
client_id: "{{client_id}}"
product: "{{data_product}}"
records: "{{extract-data.rowCount}}"
- name: create-ticket
type: call
call: "servicenow.create-incident"
with:
short_description: "Data delivery: {{data_product}} for {{client_id}}"
category: "data_delivery"
description: "Delivered {{extract-data.rowCount}} records of {{data_product}} to {{client_id}}."
- name: notify-team
type: call
call: "msteams.post-message"
with:
team_id: "data-services-team"
channel_id: "deliveries"
message: "Market data delivered: {{data_product}} to {{client_id}}. {{extract-data.rowCount}} records. Ticket: {{create-ticket.number}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: delivery-logs
path: "/sobjects/Data_Delivery__c"
operations:
- name: create-delivery-log
method: POST
- type: http
namespace: servicenow
baseUri: "https://nasdaq.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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Retrieves real-time market data for a security by ticker symbol, returning last price, bid/ask, volume, and market cap.
naftiko: "0.5"
info:
label: "Market Data Quote Lookup"
description: "Retrieves real-time market data for a security by ticker symbol, returning last price, bid/ask, volume, and market cap."
tags:
- market-data
- trading
- snowflake
capability:
exposes:
- type: mcp
namespace: market-data
port: 8080
tools:
- name: get-market-quote
description: "Look up real-time market data for a security by ticker symbol."
inputParameters:
- name: ticker
in: body
type: string
description: "The security ticker symbol."
call: "snowflake.get-quote"
with:
ticker: "{{ticker}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-quote
method: POST
Coordinates market trading halts by updating halt status in Snowflake, notifying listed companies via Salesforce, creating a ServiceNow incident for tracking, distributing halt notices via Bloomberg, and alerting all teams via Microsoft Teams.
naftiko: "0.5"
info:
label: "Market Halt Coordination Pipeline"
description: "Coordinates market trading halts by updating halt status in Snowflake, notifying listed companies via Salesforce, creating a ServiceNow incident for tracking, distributing halt notices via Bloomberg, and alerting all teams via Microsoft Teams."
tags:
- trading
- market-halt
- snowflake
- salesforce
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: market-halts
port: 8080
tools:
- name: coordinate-market-halt
description: "Given a ticker and halt reason, coordinate the full market halt process."
inputParameters:
- name: ticker
in: body
type: string
description: "The ticker to halt."
- name: halt_reason
in: body
type: string
description: "Reason for the halt (news_pending, regulatory, volatility)."
- name: halt_time
in: body
type: string
description: "Halt time in ISO 8601 format."
steps:
- name: update-halt-status
type: call
call: "snowflake.execute-query"
with:
ticker: "{{ticker}}"
halt_reason: "{{halt_reason}}"
halt_time: "{{halt_time}}"
- name: notify-issuer
type: call
call: "salesforce.create-halt-notification"
with:
ticker: "{{ticker}}"
halt_reason: "{{halt_reason}}"
- name: create-tracking-incident
type: call
call: "servicenow.create-incident"
with:
short_description: "Market halt: {{ticker}} - {{halt_reason}}"
category: "market_operations"
priority: "1"
description: "Trading halt for {{ticker}} at {{halt_time}}. Reason: {{halt_reason}}."
- name: alert-all-teams
type: call
call: "msteams.post-message"
with:
team_id: "market-ops-team"
channel_id: "trading-halts"
message: "TRADING HALT: {{ticker}} halted at {{halt_time}}. Reason: {{halt_reason}}. Incident: {{create-tracking-incident.number}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: halt-notifications
path: "/sobjects/Halt_Notification__c"
operations:
- name: create-halt-notification
method: POST
- type: http
namespace: servicenow
baseUri: "https://nasdaq.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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Generates a market maker performance report by pulling quoting statistics from Snowflake, creating a Jira review task, and notifying the market quality team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Market Maker Performance Report"
description: "Generates a market maker performance report by pulling quoting statistics from Snowflake, creating a Jira review task, and notifying the market quality team via Microsoft Teams."
tags:
- market-quality
- market-maker
- snowflake
- jira
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: market-maker-performance
port: 8080
tools:
- name: generate-mm-report
description: "Given a market maker ID and period, generate their performance report."
inputParameters:
- name: mm_id
in: body
type: string
description: "The market maker identifier."
- name: period
in: body
type: string
description: "The reporting period."
steps:
- name: pull-performance-data
type: call
call: "snowflake.execute-query"
with:
mm_id: "{{mm_id}}"
period: "{{period}}"
- name: create-review-task
type: call
call: "jira.create-issue"
with:
project: "MKTQUAL"
summary: "MM performance review: {{mm_id}} ({{period}})"
issue_type: "Task"
- name: notify-team
type: call
call: "msteams.post-message"
with:
team_id: "market-quality-team"
channel_id: "reports"
message: "Market maker {{mm_id}} performance report ({{period}}): Quoting time {{pull-performance-data.time_at_best_pct}}%. Review: {{create-review-task.key}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: issues
path: "/issue"
operations:
- name: create-issue
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Sends a formatted notification to a Microsoft Teams channel for exchange operations and technology teams.
naftiko: "0.5"
info:
label: "Microsoft Teams Channel Notification"
description: "Sends a formatted notification to a Microsoft Teams channel for exchange operations and technology teams."
tags:
- communications
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: team-notifications
port: 8080
tools:
- name: send-teams-notification
description: "Post a message to a Microsoft Teams channel."
inputParameters:
- name: team_id
in: body
type: string
description: "The Teams team ID."
- name: channel_id
in: body
type: string
description: "The Teams channel ID."
- name: message
in: body
type: string
description: "The message body."
call: "msteams.post-message"
with:
team_id: "{{team_id}}"
channel_id: "{{channel_id}}"
message: "{{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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Queries ESG data products from Snowflake for a company, returning ESG scores, controversy flags, and carbon disclosure metrics.
naftiko: "0.5"
info:
label: "Nasdaq ESG Data Product Query"
description: "Queries ESG data products from Snowflake for a company, returning ESG scores, controversy flags, and carbon disclosure metrics."
tags:
- esg
- data-product
- snowflake
capability:
exposes:
- type: mcp
namespace: esg-data
port: 8080
tools:
- name: get-esg-data
description: "Retrieve ESG data product scores by company ticker."
inputParameters:
- name: ticker
in: body
type: string
description: "The company ticker symbol."
call: "snowflake.get-esg-scores"
with:
ticker: "{{ticker}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-esg-scores
method: POST
Retrieves private market deal information from Salesforce by deal ID, returning company name, valuation, deal stage, and investor details.
naftiko: "0.5"
info:
label: "Nasdaq Private Market Deal Lookup"
description: "Retrieves private market deal information from Salesforce by deal ID, returning company name, valuation, deal stage, and investor details."
tags:
- private-market
- salesforce
capability:
exposes:
- type: mcp
namespace: private-market
port: 8080
tools:
- name: get-private-deal
description: "Look up private market deal by deal ID."
inputParameters:
- name: deal_id
in: body
type: string
description: "The private market deal ID."
call: "salesforce.get-private-deal"
with:
deal_id: "{{deal_id}}"
consumes:
- type: http
namespace: salesforce
baseUri: "https://nasdaq.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: private-deals
path: "/query/?q=SELECT+Company_Name__c,Valuation__c,Stage__c,Lead_Investor__c+FROM+Private_Deal__c+WHERE+Deal_ID__c='{{deal_id}}'"
inputParameters:
- name: deal_id
in: query
operations:
- name: get-private-deal
method: GET
Retrieves real-time order book depth for a security from Snowflake, returning top-of-book bid/ask levels, depth at each price level, and aggregate volume.
naftiko: "0.5"
info:
label: "Order Book Depth Lookup"
description: "Retrieves real-time order book depth for a security from Snowflake, returning top-of-book bid/ask levels, depth at each price level, and aggregate volume."
tags:
- market-data
- order-book
- snowflake
capability:
exposes:
- type: mcp
namespace: order-book
port: 8080
tools:
- name: get-order-book
description: "Look up order book depth by ticker symbol."
inputParameters:
- name: ticker
in: body
type: string
description: "The security ticker symbol."
call: "snowflake.get-order-book"
with:
ticker: "{{ticker}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-order-book
method: POST
Triggers a dataset refresh in Power BI for trading analytics, surveillance, and market operations dashboards.
naftiko: "0.5"
info:
label: "Power BI Dashboard Refresh"
description: "Triggers a dataset refresh in Power BI for trading analytics, surveillance, and market operations dashboards."
tags:
- analytics
- power-bi
capability:
exposes:
- type: mcp
namespace: bi-refresh
port: 8080
tools:
- name: refresh-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
Triggers a refresh of the market analytics Power BI dataset and returns the refresh job status.
naftiko: "0.5"
info:
label: "Power BI Market Analytics Refresh"
description: "Triggers a refresh of the market analytics Power BI dataset and returns the refresh job status."
tags:
- analytics
- dashboard
- power-bi
capability:
exposes:
- type: mcp
namespace: market-analytics-dashboard
port: 8080
tools:
- name: refresh-market-analytics
description: "Trigger a Power BI market analytics dataset refresh."
inputParameters:
- name: dataset_id
in: body
type: string
description: "The Power BI dataset ID."
call: "powerbi.refresh-market-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-market-dataset
method: POST
Prepares SEC regulatory filings by extracting compliance data from Snowflake, generating filing documents in SharePoint, creating a review task in Jira, and notifying the compliance team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Regulatory Filing Preparation Pipeline"
description: "Prepares SEC regulatory filings by extracting compliance data from Snowflake, generating filing documents in SharePoint, creating a review task in Jira, and notifying the compliance team via Microsoft Teams."
tags:
- compliance
- regulatory
- snowflake
- sharepoint
- jira
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: regulatory-filing
port: 8080
tools:
- name: prepare-regulatory-filing
description: "Given a filing type and period, compile data, generate documents, and route for review."
inputParameters:
- name: filing_type
in: body
type: string
description: "The regulatory filing type (e.g., Form_ATS, Rule_606, annual_report)."
- name: reporting_period
in: body
type: string
description: "The reporting period."
steps:
- name: extract-data
type: call
call: "snowflake.execute-query"
with:
filing_type: "{{filing_type}}"
period: "{{reporting_period}}"
- name: create-docs
type: call
call: "sharepoint.create-folder"
with:
site_id: "regulatory_site"
folder_path: "Filings/{{filing_type}}/{{reporting_period}}"
- name: create-review
type: call
call: "jira.create-issue"
with:
project_key: "COMP"
summary: "Regulatory filing: {{filing_type}} - {{reporting_period}}"
description: "Data extracted: {{extract-data.rowCount}} records. Docs: {{create-docs.webUrl}}."
issue_type: "Task"
- name: notify-compliance
type: call
call: "msteams.post-message"
with:
team_id: "compliance-team"
channel_id: "filings"
message: "Regulatory filing {{filing_type}} for {{reporting_period}} ready. Jira: {{create-review.key}}. Docs: {{create-docs.webUrl}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: sharepoint
baseUri: "https://graph.microsoft.com/v1.0/sites"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: folders
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: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: issues
path: "/issue"
operations:
- name: create-issue
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Prepares and submits regulatory filings by extracting filing data from Snowflake, generating documents in SharePoint, creating a ServiceNow tracking ticket, and notifying the regulatory team via Microsoft Teams.
naftiko: "0.5"
info:
label: "SEC Filing Submission Pipeline"
description: "Prepares and submits regulatory filings by extracting filing data from Snowflake, generating documents in SharePoint, creating a ServiceNow tracking ticket, and notifying the regulatory team via Microsoft Teams."
tags:
- regulatory
- compliance
- snowflake
- sharepoint
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: sec-filing
port: 8080
tools:
- name: prepare-sec-filing
description: "Given a filing type and period, prepare and submit the SEC filing."
inputParameters:
- name: filing_type
in: body
type: string
description: "The SEC filing type (e.g., 10-K, 10-Q, 8-K)."
- name: reporting_period
in: body
type: string
description: "The reporting period."
steps:
- name: extract-filing-data
type: call
call: "snowflake.execute-query"
with:
filing_type: "{{filing_type}}"
period: "{{reporting_period}}"
- name: create-filing-folder
type: call
call: "sharepoint.create-folder"
with:
site_id: "regulatory_site"
folder_path: "SEC/{{filing_type}}/{{reporting_period}}"
- name: create-tracking-ticket
type: call
call: "servicenow.create-incident"
with:
short_description: "SEC filing: {{filing_type}} for {{reporting_period}}"
category: "regulatory"
description: "Filing data extracted. {{extract-filing-data.rowCount}} records."
- name: notify-regulatory
type: call
call: "msteams.post-message"
with:
team_id: "regulatory-team"
channel_id: "filings"
message: "SEC {{filing_type}} filing prepared for {{reporting_period}}. Documents: {{create-filing-folder.webUrl}}. Ticket: {{create-tracking-ticket.number}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: sharepoint
baseUri: "https://graph.microsoft.com/v1.0/sites"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: folders
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: servicenow
baseUri: "https://nasdaq.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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Retrieves exchange outage and maintenance records from ServiceNow, returning outage duration, affected systems, and root cause summary.
naftiko: "0.5"
info:
label: "ServiceNow Exchange Outage Tracker"
description: "Retrieves exchange outage and maintenance records from ServiceNow, returning outage duration, affected systems, and root cause summary."
tags:
- it-service
- exchange
- servicenow
capability:
exposes:
- type: mcp
namespace: exchange-outages
port: 8080
tools:
- name: get-outage-history
description: "Look up exchange outage records by date range."
inputParameters:
- name: start_date
in: body
type: string
description: "Start date in YYYY-MM-DD format."
- name: end_date
in: body
type: string
description: "End date in YYYY-MM-DD format."
call: "servicenow.get-outages"
with:
start_date: "{{start_date}}"
end_date: "{{end_date}}"
consumes:
- type: http
namespace: servicenow
baseUri: "https://nasdaq.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: outages
path: "/table/incident?sysparm_query=category=exchange^opened_at>={{start_date}}^opened_at<={{end_date}}"
inputParameters:
- name: start_date
in: query
- name: end_date
in: query
operations:
- name: get-outages
method: GET
Retrieves an IT incident from ServiceNow by incident number for platform operations and technology teams.
naftiko: "0.5"
info:
label: "ServiceNow Incident Lookup"
description: "Retrieves an IT incident from ServiceNow by incident number for platform operations and technology teams."
tags:
- it-service
- servicenow
capability:
exposes:
- type: mcp
namespace: it-incidents
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}}"
consumes:
- type: http
namespace: servicenow
baseUri: "https://nasdaq.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: query
operations:
- name: get-incident
method: GET
Retrieves document metadata from SharePoint for regulatory filings, compliance documents, and exchange rules.
naftiko: "0.5"
info:
label: "SharePoint Document Retrieval"
description: "Retrieves document metadata from SharePoint for regulatory filings, compliance documents, and exchange rules."
tags:
- document-management
- sharepoint
capability:
exposes:
- type: mcp
namespace: document-mgmt
port: 8080
tools:
- name: get-document-metadata
description: "Retrieve SharePoint document metadata by site and file path."
inputParameters:
- name: site_id
in: body
type: string
description: "The SharePoint site ID."
- name: file_path
in: body
type: string
description: "The file path."
call: "sharepoint.get-file"
with:
site_id: "{{site_id}}"
file_path: "{{file_path}}"
consumes:
- 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}}"
inputParameters:
- name: site_id
in: path
- name: file_path
in: path
operations:
- name: get-file
method: GET
Retrieves regulatory document metadata from SharePoint by folder path, returning document names, last modified dates, and version history.
naftiko: "0.5"
info:
label: "SharePoint Regulatory Document Archive"
description: "Retrieves regulatory document metadata from SharePoint by folder path, returning document names, last modified dates, and version history."
tags:
- regulatory
- document-management
- sharepoint
capability:
exposes:
- type: mcp
namespace: regulatory-docs
port: 8080
tools:
- name: list-regulatory-docs
description: "List regulatory documents in a SharePoint folder."
inputParameters:
- name: folder_path
in: body
type: string
description: "The SharePoint folder path."
call: "sharepoint.list-documents"
with:
folder_path: "{{folder_path}}"
consumes:
- type: http
namespace: sharepoint
baseUri: "https://graph.microsoft.com/v1.0/sites"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: documents
path: "/regulatory_site/drive/root:/{{folder_path}}:/children"
inputParameters:
- name: folder_path
in: path
operations:
- name: list-documents
method: GET
Retrieves short interest data for a security from Snowflake, returning shares short, days to cover, and short interest ratio.
naftiko: "0.5"
info:
label: "Short Interest Data Lookup"
description: "Retrieves short interest data for a security from Snowflake, returning shares short, days to cover, and short interest ratio."
tags:
- market-data
- short-interest
- snowflake
capability:
exposes:
- type: mcp
namespace: short-interest
port: 8080
tools:
- name: get-short-interest
description: "Look up short interest data by ticker."
inputParameters:
- name: ticker
in: body
type: string
description: "The security ticker symbol."
call: "snowflake.get-short-interest"
with:
ticker: "{{ticker}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-short-interest
method: POST
Executes a parameterized query against the Snowflake data warehouse for trading volumes, order flow, and market microstructure data.
naftiko: "0.5"
info:
label: "Snowflake Trading Data Query"
description: "Executes a parameterized query against the Snowflake data warehouse for trading volumes, order flow, and market microstructure data."
tags:
- data
- snowflake
- trading
capability:
exposes:
- type: mcp
namespace: trading-data
port: 8080
tools:
- name: query-trading-data
description: "Query Snowflake for trading data by security and date range."
inputParameters:
- name: ticker
in: body
type: string
description: "The ticker symbol."
- name: start_date
in: body
type: string
description: "Start date in YYYY-MM-DD format."
- name: end_date
in: body
type: string
description: "End date in YYYY-MM-DD format."
call: "snowflake.execute-query"
with:
ticker: "{{ticker}}"
start_date: "{{start_date}}"
end_date: "{{end_date}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
Searches Splunk logs for trading platform events, matching engine activities, and system health metrics.
naftiko: "0.5"
info:
label: "Splunk Log Search"
description: "Searches Splunk logs for trading platform events, matching engine activities, and system health metrics."
tags:
- monitoring
- splunk
- trading
capability:
exposes:
- type: mcp
namespace: log-search
port: 8080
tools:
- name: search-logs
description: "Search Splunk logs by query and time range."
inputParameters:
- name: search_query
in: body
type: string
description: "The Splunk search query."
- name: earliest_time
in: body
type: string
description: "Earliest time for search."
- name: latest_time
in: body
type: string
description: "Latest time for search."
call: "splunk.search"
with:
search_query: "{{search_query}}"
earliest_time: "{{earliest_time}}"
latest_time: "{{latest_time}}"
consumes:
- type: http
namespace: splunk
baseUri: "https://splunk.nasdaq.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: search-jobs
path: "/search/jobs"
operations:
- name: search
method: POST
Searches security events in Splunk by event type and time range, returning event details, source IPs, and severity levels.
naftiko: "0.5"
info:
label: "Splunk Security Event Search"
description: "Searches security events in Splunk by event type and time range, returning event details, source IPs, and severity levels."
tags:
- security
- splunk
capability:
exposes:
- type: mcp
namespace: security-events
port: 8080
tools:
- name: search-security-events
description: "Search security events in Splunk by type and time range."
inputParameters:
- name: event_type
in: body
type: string
description: "The security event type."
- name: time_range
in: body
type: string
description: "The time range (e.g., -24h, -7d)."
call: "splunk.search-events"
with:
event_type: "{{event_type}}"
time_range: "{{time_range}}"
consumes:
- type: http
namespace: splunk
baseUri: "https://nasdaq-splunk.splunkcloud.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: search
path: "/search/jobs"
operations:
- name: search-events
method: POST
Retrieves trade surveillance alert details by alert ID from the monitoring system, including alert type, severity, and flagged trades.
naftiko: "0.5"
info:
label: "Trade Surveillance Alert Lookup"
description: "Retrieves trade surveillance alert details by alert ID from the monitoring system, including alert type, severity, and flagged trades."
tags:
- surveillance
- compliance
- snowflake
capability:
exposes:
- type: mcp
namespace: trade-surveillance
port: 8080
tools:
- name: get-surveillance-alert
description: "Look up a trade surveillance alert by alert ID."
inputParameters:
- name: alert_id
in: body
type: string
description: "The surveillance alert identifier."
call: "snowflake.get-alert"
with:
alert_id: "{{alert_id}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-alert
method: POST
Investigates a surveillance alert by pulling trade data from Snowflake, enriching with market data from Bloomberg, creating an investigation case in ServiceNow, and alerting the compliance team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Trade Surveillance Investigation Pipeline"
description: "Investigates a surveillance alert by pulling trade data from Snowflake, enriching with market data from Bloomberg, creating an investigation case in ServiceNow, and alerting the compliance team via Microsoft Teams."
tags:
- surveillance
- compliance
- snowflake
- bloomberg-enterprise-data
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: surveillance-investigation
port: 8080
tools:
- name: investigate-surveillance-alert
description: "Given an alert ID, pull trade data, enrich with market context, and create an investigation case."
inputParameters:
- name: alert_id
in: body
type: string
description: "The surveillance alert ID."
- name: ticker
in: body
type: string
description: "The ticker symbol involved."
steps:
- name: pull-trade-data
type: call
call: "snowflake.execute-query"
with:
alert_id: "{{alert_id}}"
ticker: "{{ticker}}"
- name: get-market-context
type: call
call: "bloomberg.get-pricing"
with:
identifier: "{{ticker}}"
identifier_type: "TICKER"
- name: create-investigation
type: call
call: "servicenow.create-incident"
with:
short_description: "Surveillance investigation: Alert {{alert_id}} - {{ticker}}"
category: "surveillance"
description: "Alert {{alert_id}} for {{ticker}}. {{pull-trade-data.rowCount}} flagged trades. Market price: {{get-market-context.last_price}}."
- name: alert-compliance
type: call
call: "msteams.post-message"
with:
team_id: "compliance-team"
channel_id: "surveillance"
message: "Surveillance investigation opened: Alert {{alert_id}} for {{ticker}}. {{pull-trade-data.rowCount}} trades flagged. Case: {{create-investigation.number}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-query
method: POST
- type: http
namespace: bloomberg
baseUri: "https://api.bloomberg.com/eap/catalogs/bbg/datasets"
authentication:
type: bearer
token: "$secrets.bloomberg_token"
resources:
- name: pricing
path: "/pricing?identifier={{identifier}}&identifierType={{identifier_type}}"
inputParameters:
- name: identifier
in: query
- name: identifier_type
in: query
operations:
- name: get-pricing
method: GET
- type: http
namespace: servicenow
baseUri: "https://nasdaq.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/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Responds to trading platform incidents by pulling system metrics from Datadog, checking logs in Splunk, creating a critical ServiceNow incident, creating a Jira task for engineering, and alerting operations via Microsoft Teams.
naftiko: "0.5"
info:
label: "Trading Platform Incident Response"
description: "Responds to trading platform incidents by pulling system metrics from Datadog, checking logs in Splunk, creating a critical ServiceNow incident, creating a Jira task for engineering, and alerting operations via Microsoft Teams."
tags:
- trading
- incident-response
- datadog
- splunk
- servicenow
- jira
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: platform-incidents
port: 8080
tools:
- name: respond-to-platform-incident
description: "Given an incident description and affected system, orchestrate the full incident response."
inputParameters:
- name: incident_description
in: body
type: string
description: "Description of the platform incident."
- name: affected_system
in: body
type: string
description: "The affected trading system component."
- name: severity
in: body
type: string
description: "Severity level (critical, high, medium)."
steps:
- name: get-system-metrics
type: call
call: "datadog.query-metrics"
with:
metric_name: "{{affected_system}}.latency"
from_ts: "-3600"
to_ts: "now"
- name: search-logs
type: call
call: "splunk.search"
with:
search_query: "index=trading source={{affected_system}} error"
earliest_time: "-1h"
latest_time: "now"
- name: create-incident
type: call
call: "servicenow.create-incident"
with:
short_description: "Platform incident: {{affected_system}} - {{severity}}"
category: "platform_operations"
priority: "{{severity}}"
description: "{{incident_description}}. Latency: {{get-system-metrics.avg_latency}}ms. Log hits: {{search-logs.result_count}}."
- name: create-eng-task
type: call
call: "jira.create-issue"
with:
project_key: "PLAT"
summary: "Platform incident: {{affected_system}}"
description: "{{incident_description}}. ServiceNow: {{create-incident.number}}."
issue_type: "Bug"
- name: alert-ops
type: call
call: "msteams.post-message"
with:
team_id: "platform-ops-team"
channel_id: "incidents"
message: "PLATFORM INCIDENT ({{severity}}): {{affected_system}} - {{incident_description}}. Latency: {{get-system-metrics.avg_latency}}ms. Case: {{create-incident.number}}. Jira: {{create-eng-task.key}}."
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: bearer
token: "$secrets.datadog_api_key"
resources:
- name: metrics
path: "/query"
operations:
- name: query-metrics
method: GET
- type: http
namespace: splunk
baseUri: "https://splunk.nasdaq.com:8089/services"
authentication:
type: bearer
token: "$secrets.splunk_token"
resources:
- name: search-jobs
path: "/search/jobs"
operations:
- name: search
method: POST
- type: http
namespace: servicenow
baseUri: "https://nasdaq.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: jira
baseUri: "https://nasdaq.atlassian.net/rest/api/3"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: issues
path: "/issue"
operations:
- name: create-issue
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: post-message
method: POST
Queries trading volume analytics from Snowflake for a security or market segment, returning daily volume, VWAP, and volume distribution by session.
naftiko: "0.5"
info:
label: "Trading Volume Analytics Query"
description: "Queries trading volume analytics from Snowflake for a security or market segment, returning daily volume, VWAP, and volume distribution by session."
tags:
- trading
- analytics
- snowflake
capability:
exposes:
- type: mcp
namespace: volume-analytics
port: 8080
tools:
- name: get-volume-analytics
description: "Query trading volume analytics by ticker and date range."
inputParameters:
- name: ticker
in: body
type: string
description: "The security ticker symbol."
- name: date_range
in: body
type: string
description: "The date range (e.g., 30d, 90d)."
call: "snowflake.get-volume-analytics"
with:
ticker: "{{ticker}}"
date_range: "{{date_range}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://nasdaq.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: get-volume-analytics
method: POST
Fetches an employee profile from Workday by worker ID for HR and compliance operations.
naftiko: "0.5"
info:
label: "Workday Employee Profile"
description: "Fetches an employee profile from Workday by worker ID for HR and compliance operations."
tags:
- hr
- workday
capability:
exposes:
- type: mcp
namespace: hr-employee
port: 8080
tools:
- name: get-employee-profile
description: "Retrieve a Workday employee profile by worker ID."
inputParameters:
- name: worker_id
in: body
type: string
description: "The Workday worker ID."
call: "workday.get-worker"
with:
worker_id: "{{worker_id}}"
consumes:
- type: http
namespace: workday
baseUri: "https://wd2-impl-services1.workday.com/ccx/api/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: workers
path: "/workers/{{worker_id}}"
inputParameters:
- name: worker_id
in: path
operations:
- name: get-worker
method: GET
Retrieves headcount summary from Workday by department, returning active employee count, open positions, and attrition rate.
naftiko: "0.5"
info:
label: "Workday Headcount Report"
description: "Retrieves headcount summary from Workday by department, returning active employee count, open positions, and attrition rate."
tags:
- hr
- workday
capability:
exposes:
- type: mcp
namespace: hr-headcount
port: 8080
tools:
- name: get-headcount
description: "Retrieve headcount report by department."
inputParameters:
- name: department
in: body
type: string
description: "The department name."
call: "workday.get-headcount"
with:
department: "{{department}}"
consumes:
- type: http
namespace: workday
baseUri: "https://wd5-impl-services1.workday.com/ccx/api/v1/nasdaq"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: headcount
path: "/headcount?department={{department}}"
inputParameters:
- name: department
in: query
operations:
- name: get-headcount
method: GET