Chipotle Capabilities
Naftiko 0.5 capability definitions for Chipotle - 100 capabilities showing integration workflows and service orchestrations.
Pulls Adobe Analytics reports for Chipotle digital customer experience metrics across web and mobile channels.
naftiko: "0.5"
info:
label: "Adobe Analytics Digital Experience Report"
description: "Pulls Adobe Analytics reports for Chipotle digital customer experience metrics across web and mobile channels."
tags:
- analytics
- adobe-analytics
- customer-experience
- digital
capability:
exposes:
- type: mcp
namespace: digital-experience
port: 8080
tools:
- name: get-experience-report
description: "Retrieve Adobe Analytics digital experience report."
inputParameters:
- name: report_suite_id
in: body
type: string
description: "The Adobe Analytics report suite ID."
- name: date_range
in: body
type: string
description: "The date range for the report."
call: "adobe-analytics.get-report"
with:
rsid: "{{report_suite_id}}"
dimension: "variables/mobiledevicetype"
globalFilters: "[{type:'dateRange',dateRange:'{{date_range}}'}]"
consumes:
- type: http
namespace: adobe-analytics
baseUri: "https://analytics.adobe.io/api"
authentication:
type: bearer
token: "$secrets.adobe_analytics_token"
resources:
- name: reports
path: "/{{rsid}}/reports"
inputParameters:
- name: rsid
in: path
operations:
- name: get-report
method: POST
Retrieves ADP payroll processing status for Chipotle restaurant employees, returning pay period, status, and total payroll amount.
naftiko: "0.5"
info:
label: "ADP Payroll Processing Status"
description: "Retrieves ADP payroll processing status for Chipotle restaurant employees, returning pay period, status, and total payroll amount."
tags:
- payroll
- adp
- hr
- finance
capability:
exposes:
- type: mcp
namespace: payroll-mgmt
port: 8080
tools:
- name: get-payroll-status
description: "Retrieve ADP payroll processing status for a pay period."
inputParameters:
- name: pay_period_id
in: body
type: string
description: "The ADP pay period ID."
call: "adp.get-payroll"
with:
pay_period_id: "{{pay_period_id}}"
consumes:
- type: http
namespace: adp
baseUri: "https://api.adp.com/payroll/v1"
authentication:
type: bearer
token: "$secrets.adp_token"
resources:
- name: payrolls
path: "/pay-periods/{{pay_period_id}}"
inputParameters:
- name: pay_period_id
in: path
operations:
- name: get-payroll
method: GET
Retrieves time and attendance records from ADP Workforce Now for Chipotle restaurant employees, returning clock-in/out data and hours worked.
naftiko: "0.5"
info:
label: "ADP Time and Attendance Report"
description: "Retrieves time and attendance records from ADP Workforce Now for Chipotle restaurant employees, returning clock-in/out data and hours worked."
tags:
- hr
- adp
- time-tracking
- workforce-management
capability:
exposes:
- type: mcp
namespace: time-attendance
port: 8080
tools:
- name: get-time-attendance
description: "Retrieve time and attendance records from ADP."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The Chipotle restaurant number."
- name: pay_period
in: body
type: string
description: "The pay period to query."
call: "adp.get-time-records"
with:
location_id: "{{restaurant_number}}"
period: "{{pay_period}}"
consumes:
- type: http
namespace: adp
baseUri: "https://api.adp.com/time/v3"
authentication:
type: bearer
token: "$secrets.adp_token"
resources:
- name: time-records
path: "/workers/time-cards"
inputParameters:
- name: location_id
in: query
- name: period
in: query
operations:
- name: get-time-records
method: GET
Queries Amazon Redshift for Chipotle guest behavior analytics, returning order frequency, average spend, and loyalty engagement data.
naftiko: "0.5"
info:
label: "Amazon Redshift Guest Analytics Query"
description: "Queries Amazon Redshift for Chipotle guest behavior analytics, returning order frequency, average spend, and loyalty engagement data."
tags:
- analytics
- amazon-redshift
- guest-experience
- data-warehouse
capability:
exposes:
- type: mcp
namespace: guest-analytics
port: 8080
tools:
- name: query-guest-analytics
description: "Query Redshift for guest behavior analytics."
inputParameters:
- name: segment
in: body
type: string
description: "The guest segment to analyze."
call: "redshift.execute-query"
with:
query: "SELECT * FROM guest_analytics WHERE segment = '{{segment}}'"
consumes:
- type: http
namespace: redshift
baseUri: "https://chipotle-redshift.amazonaws.com/api/v1"
authentication:
type: bearer
token: "$secrets.redshift_token"
resources:
- name: queries
path: "/execute"
operations:
- name: execute-query
method: POST
Lists files in Chipotle's Amazon S3 data lake for data engineering pipelines and analytics workloads.
naftiko: "0.5"
info:
label: "Amazon S3 Data Lake File Listing"
description: "Lists files in Chipotle's Amazon S3 data lake for data engineering pipelines and analytics workloads."
tags:
- data-lake
- amazon-s3
- data-engineering
- storage
capability:
exposes:
- type: mcp
namespace: data-lake
port: 8080
tools:
- name: list-data-lake-files
description: "List files in an S3 data lake prefix."
inputParameters:
- name: bucket
in: body
type: string
description: "The S3 bucket name."
- name: prefix
in: body
type: string
description: "The S3 key prefix."
call: "s3.list-objects"
with:
Bucket: "{{bucket}}"
Prefix: "{{prefix}}"
consumes:
- type: http
namespace: s3
baseUri: "https://s3.us-east-1.amazonaws.com"
authentication:
type: aws-sigv4
access_key: "$secrets.aws_access_key"
secret_key: "$secrets.aws_secret_key"
resources:
- name: objects
path: "/{{Bucket}}"
inputParameters:
- name: Bucket
in: path
- name: Prefix
in: query
operations:
- name: list-objects
method: GET
Triggers an Azure Data Factory pipeline run for Chipotle data integration and ETL workflows.
naftiko: "0.5"
info:
label: "Azure Data Factory Pipeline Trigger"
description: "Triggers an Azure Data Factory pipeline run for Chipotle data integration and ETL workflows."
tags:
- data-integration
- azure-data-factory
- etl
- data-pipeline
capability:
exposes:
- type: mcp
namespace: data-pipelines
port: 8080
tools:
- name: trigger-adf-pipeline
description: "Trigger an Azure Data Factory pipeline run."
inputParameters:
- name: pipeline_name
in: body
type: string
description: "The ADF pipeline name."
call: "adf.create-pipeline-run"
with:
pipeline_name: "{{pipeline_name}}"
consumes:
- type: http
namespace: adf
baseUri: "https://management.azure.com/subscriptions/{{sub_id}}/resourceGroups/{{rg}}/providers/Microsoft.DataFactory/factories/chipotle-adf"
authentication:
type: bearer
token: "$secrets.azure_token"
resources:
- name: pipelines
path: "/pipelines/{{pipeline_name}}/createRun"
inputParameters:
- name: pipeline_name
in: path
operations:
- name: create-pipeline-run
method: POST
Checks the latest release pipeline status in Azure DevOps for Chipotle CI/CD workflows.
naftiko: "0.5"
info:
label: "Azure DevOps Release Pipeline Status"
description: "Checks the latest release pipeline status in Azure DevOps for Chipotle CI/CD workflows."
tags:
- ci-cd
- azure-devops
- release-management
capability:
exposes:
- type: mcp
namespace: devops-releases
port: 8080
tools:
- name: get-release-status
description: "Retrieve the latest release status for an Azure DevOps pipeline."
inputParameters:
- name: project
in: body
type: string
description: "The Azure DevOps project name."
- name: definition_id
in: body
type: string
description: "The release definition ID."
call: "azuredevops.get-releases"
with:
project: "{{project}}"
definitionId: "{{definition_id}}"
top: "1"
consumes:
- type: http
namespace: azuredevops
baseUri: "https://vsrm.dev.azure.com/chipotle"
authentication:
type: basic
username: ""
password: "$secrets.azuredevops_pat"
resources:
- name: releases
path: "/{{project}}/_apis/release/releases"
inputParameters:
- name: project
in: path
- name: definitionId
in: query
- name: top
in: query
operations:
- name: get-releases
method: GET
Invokes an Azure Machine Learning endpoint for Chipotle restaurant demand forecasting based on location, day of week, weather, and historical data.
naftiko: "0.5"
info:
label: "Azure Machine Learning Demand Forecasting"
description: "Invokes an Azure Machine Learning endpoint for Chipotle restaurant demand forecasting based on location, day of week, weather, and historical data."
tags:
- machine-learning
- azure-machine-learning
- demand-forecasting
- ai
capability:
exposes:
- type: mcp
namespace: ml-forecasting
port: 8080
tools:
- name: forecast-demand
description: "Run a demand forecasting model via Azure ML endpoint."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
- name: forecast_date
in: body
type: string
description: "The date to forecast for."
call: "azureml.invoke-endpoint"
with:
endpoint: "demand_forecast"
inputs: "{restaurant: '{{restaurant_number}}', date: '{{forecast_date}}'}"
consumes:
- type: http
namespace: azureml
baseUri: "https://chipotle-ml.eastus.inference.ml.azure.com"
authentication:
type: bearer
token: "$secrets.azure_ml_token"
resources:
- name: endpoints
path: "/score"
operations:
- name: invoke-endpoint
method: POST
Retrieves BigCommerce order details for Chipotle merchandise and catering supply orders, returning order status, items, and shipping information.
naftiko: "0.5"
info:
label: "BigCommerce Order Lookup"
description: "Retrieves BigCommerce order details for Chipotle merchandise and catering supply orders, returning order status, items, and shipping information."
tags:
- ecommerce
- bigcommerce
- order-management
- merchandise
capability:
exposes:
- type: mcp
namespace: ecommerce-orders
port: 8080
tools:
- name: get-order-details
description: "Retrieve a BigCommerce order by order ID."
inputParameters:
- name: order_id
in: body
type: string
description: "The BigCommerce order ID."
call: "bigcommerce.get-order"
with:
order_id: "{{order_id}}"
consumes:
- type: http
namespace: bigcommerce
baseUri: "https://api.bigcommerce.com/stores/{{store_hash}}/v2"
authentication:
type: apikey
key: "$secrets.bigcommerce_token"
resources:
- name: orders
path: "/orders/{{order_id}}"
inputParameters:
- name: order_id
in: path
operations:
- name: get-order
method: GET
Retrieves training documents from Box for Chipotle crew member development programs, returning file metadata and download URL.
naftiko: "0.5"
info:
label: "Box Training Document Retrieval"
description: "Retrieves training documents from Box for Chipotle crew member development programs, returning file metadata and download URL."
tags:
- document-management
- box
- training
capability:
exposes:
- type: mcp
namespace: doc-management
port: 8080
tools:
- name: get-training-document
description: "Retrieve a Box training document by file ID."
inputParameters:
- name: file_id
in: body
type: string
description: "The Box file ID."
call: "box.get-file"
with:
file_id: "{{file_id}}"
consumes:
- type: http
namespace: box
baseUri: "https://api.box.com/2.0"
authentication:
type: bearer
token: "$secrets.box_token"
resources:
- name: files
path: "/files/{{file_id}}"
inputParameters:
- name: file_id
in: path
operations:
- name: get-file
method: GET
Retrieves marketing design assets from Canva for Chipotle brand campaigns, returning design files, dimensions, and publish status.
naftiko: "0.5"
info:
label: "Canva Marketing Asset Retrieval"
description: "Retrieves marketing design assets from Canva for Chipotle brand campaigns, returning design files, dimensions, and publish status."
tags:
- marketing
- canva
- brand-assets
- design
capability:
exposes:
- type: mcp
namespace: marketing-assets
port: 8080
tools:
- name: get-marketing-asset
description: "Retrieve a marketing design asset from Canva."
inputParameters:
- name: design_id
in: body
type: string
description: "The Canva design ID."
call: "canva.get-design"
with:
design_id: "{{design_id}}"
consumes:
- type: http
namespace: canva
baseUri: "https://api.canva.com/rest/v1"
authentication:
type: bearer
token: "$secrets.canva_token"
resources:
- name: designs
path: "/designs/{{design_id}}"
inputParameters:
- name: design_id
in: path
operations:
- name: get-design
method: GET
Processes catering orders by confirming inventory in Oracle, scheduling delivery via Google Maps routing, and sending confirmation through Salesforce.
naftiko: "0.5"
info:
label: "Catering Order Fulfillment Pipeline"
description: "Processes catering orders by confirming inventory in Oracle, scheduling delivery via Google Maps routing, and sending confirmation through Salesforce."
tags:
- catering
- oracle
- google-maps
- salesforce
capability:
exposes:
- type: mcp
namespace: catering-fulfillment
port: 8080
tools:
- name: process-catering-order
description: "Process a catering order through inventory, routing, and confirmation."
inputParameters:
- name: order_id
in: body
type: string
description: "The catering order ID."
- name: delivery_address
in: body
type: string
description: "The delivery address."
steps:
- name: confirm-inventory
type: call
call: "oracle-ebs.check-catering-stock"
with:
order_id: "{{order_id}}"
- name: plan-delivery
type: call
call: "google-maps.get-directions"
with:
origin: "{{confirm-inventory.restaurant_address}}"
destination: "{{delivery_address}}"
- name: send-confirmation
type: call
call: "salesforce.update-case"
with:
case_id: "{{order_id}}"
status: "Confirmed"
comments: "Delivery ETA: {{plan-delivery.duration}}. Distance: {{plan-delivery.distance}}."
consumes:
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: catering-stock
path: "/cateringInventory"
inputParameters:
- name: order_id
in: query
operations:
- name: check-catering-stock
method: GET
- type: http
namespace: google-maps
baseUri: "https://maps.googleapis.com/maps/api"
authentication:
type: api-key
key: "$secrets.google_maps_key"
resources:
- name: directions
path: "/directions/json"
inputParameters:
- name: origin
in: query
- name: destination
in: query
operations:
- name: get-directions
method: GET
- type: http
namespace: salesforce
baseUri: "https://chipotle.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: cases
path: "/sobjects/Case/{{case_id}}"
inputParameters:
- name: case_id
in: path
operations:
- name: update-case
method: PATCH
Tracks Chipotlane digital pickup orders by correlating Square POS data with BigCommerce online orders and updating customers via WhatsApp notifications.
naftiko: "0.5"
info:
label: "Chipotlane Order Tracking Pipeline"
description: "Tracks Chipotlane digital pickup orders by correlating Square POS data with BigCommerce online orders and updating customers via WhatsApp notifications."
tags:
- digital-ordering
- square
- bigcommerce
- whatsapp
capability:
exposes:
- type: mcp
namespace: chipotlane-tracking
port: 8080
tools:
- name: track-chipotlane-order
description: "Track a Chipotlane digital order from placement to pickup."
inputParameters:
- name: order_id
in: body
type: string
description: "The online order ID."
- name: phone_number
in: body
type: string
description: "Customer phone number."
steps:
- name: get-online-order
type: call
call: "bigcommerce.get-order"
with:
order_id: "{{order_id}}"
- name: get-pos-status
type: call
call: "square.get-order-status"
with:
reference_id: "{{order_id}}"
- name: notify-customer
type: call
call: "whatsapp.send-message"
with:
to: "{{phone_number}}"
message: "Your Chipotlane order #{{order_id}} is {{get-pos-status.status}}. ETA: {{get-pos-status.eta}} minutes."
consumes:
- type: http
namespace: bigcommerce
baseUri: "https://api.bigcommerce.com/stores/chipotle/v3"
authentication:
type: bearer
token: "$secrets.bigcommerce_token"
resources:
- name: orders
path: "/orders/{{order_id}}"
inputParameters:
- name: order_id
in: path
operations:
- name: get-order
method: GET
- type: http
namespace: square
baseUri: "https://connect.squareup.com/v2"
authentication:
type: bearer
token: "$secrets.square_token"
resources:
- name: orders
path: "/orders/search"
operations:
- name: get-order-status
method: POST
- type: http
namespace: whatsapp
baseUri: "https://graph.facebook.com/v18.0"
authentication:
type: bearer
token: "$secrets.whatsapp_token"
resources:
- name: messages
path: "/messages"
operations:
- name: send-message
method: POST
Retrieves Cisco network device inventory for Chipotle restaurant and corporate locations, returning device type, firmware version, and management status.
naftiko: "0.5"
info:
label: "Cisco Network Device Inventory"
description: "Retrieves Cisco network device inventory for Chipotle restaurant and corporate locations, returning device type, firmware version, and management status."
tags:
- networking
- cisco
- infrastructure
- inventory
capability:
exposes:
- type: mcp
namespace: network-inventory
port: 8080
tools:
- name: get-network-devices
description: "Retrieve Cisco network device inventory."
inputParameters:
- name: site_id
in: body
type: string
description: "The site identifier."
call: "cisco.get-devices"
with:
site_id: "{{site_id}}"
consumes:
- type: http
namespace: cisco
baseUri: "https://chipotle-dnac.cisco.com/dna/intent/api/v1"
authentication:
type: bearer
token: "$secrets.cisco_token"
resources:
- name: devices
path: "/network-device"
inputParameters:
- name: site_id
in: query
operations:
- name: get-devices
method: GET
Retrieves Cloudflare CDN analytics for Chipotle's digital properties, returning bandwidth, requests, and cache hit rates.
naftiko: "0.5"
info:
label: "Cloudflare CDN Performance Check"
description: "Retrieves Cloudflare CDN analytics for Chipotle's digital properties, returning bandwidth, requests, and cache hit rates."
tags:
- infrastructure
- cloudflare
- cdn
- performance
capability:
exposes:
- type: mcp
namespace: cdn-analytics
port: 8080
tools:
- name: get-cdn-analytics
description: "Retrieve Cloudflare CDN analytics for a zone."
inputParameters:
- name: zone_id
in: body
type: string
description: "The Cloudflare zone ID."
call: "cloudflare.get-zone-analytics"
with:
zone_id: "{{zone_id}}"
consumes:
- type: http
namespace: cloudflare
baseUri: "https://api.cloudflare.com/client/v4"
authentication:
type: bearer
token: "$secrets.cloudflare_token"
resources:
- name: analytics
path: "/zones/{{zone_id}}/analytics/dashboard"
inputParameters:
- name: zone_id
in: path
operations:
- name: get-zone-analytics
method: GET
Searches AWS CloudWatch logs for Chipotle application events, returning matching log entries with timestamps and severity levels.
naftiko: "0.5"
info:
label: "CloudWatch Application Log Search"
description: "Searches AWS CloudWatch logs for Chipotle application events, returning matching log entries with timestamps and severity levels."
tags:
- monitoring
- cloudwatch
- logging
- aws
capability:
exposes:
- type: mcp
namespace: log-search
port: 8080
tools:
- name: search-application-logs
description: "Search CloudWatch logs for application events."
inputParameters:
- name: log_group
in: body
type: string
description: "The CloudWatch log group name."
- name: filter_pattern
in: body
type: string
description: "The log filter pattern."
call: "cloudwatch.filter-log-events"
with:
log_group: "{{log_group}}"
filter: "{{filter_pattern}}"
consumes:
- type: http
namespace: cloudwatch
baseUri: "https://logs.us-east-1.amazonaws.com"
authentication:
type: bearer
token: "$secrets.aws_cloudwatch_token"
resources:
- name: log-events
path: "/"
operations:
- name: filter-log-events
method: POST
Searches Chipotle's Confluence knowledge base for standard operating procedures, training materials, and food preparation guidelines.
naftiko: "0.5"
info:
label: "Confluence Knowledge Base Search"
description: "Searches Chipotle's Confluence knowledge base for standard operating procedures, training materials, and food preparation guidelines."
tags:
- knowledge-management
- confluence
- training
- sop
capability:
exposes:
- type: mcp
namespace: knowledge-base
port: 8080
tools:
- name: search-knowledge-base
description: "Search Confluence for operational procedures and training materials."
inputParameters:
- name: query
in: body
type: string
description: "The search query string."
call: "confluence.search-content"
with:
cql: "type=page AND space IN (OPS, FOOD_SAFETY, TRAINING) AND text~'{{query}}'"
limit: "10"
consumes:
- type: http
namespace: confluence
baseUri: "https://chipotle.atlassian.net/wiki/rest/api"
authentication:
type: basic
username: "$secrets.confluence_user"
password: "$secrets.confluence_api_token"
resources:
- name: search
path: "/search"
inputParameters:
- name: cql
in: query
- name: limit
in: query
operations:
- name: search-content
method: GET
Optimizes crew schedules by fetching demand forecasts from Databricks, pulling current schedules from Workday, and publishing optimized shifts via ADP.
naftiko: "0.5"
info:
label: "Crew Scheduling Optimization Pipeline"
description: "Optimizes crew schedules by fetching demand forecasts from Databricks, pulling current schedules from Workday, and publishing optimized shifts via ADP."
tags:
- workforce-management
- databricks
- workday
- adp
capability:
exposes:
- type: mcp
namespace: crew-scheduling
port: 8080
tools:
- name: optimize-crew-schedule
description: "Optimize crew scheduling using demand forecasts."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The Chipotle restaurant number."
- name: week_start
in: body
type: string
description: "The start date of the scheduling week."
steps:
- name: get-forecast
type: call
call: "databricks.invoke-endpoint"
with:
endpoint: "demand_forecast"
inputs: "{restaurant: '{{restaurant_number}}', week: '{{week_start}}'}"
- name: get-availability
type: call
call: "workday.get-worker-availability"
with:
location: "{{restaurant_number}}"
week: "{{week_start}}"
- name: publish-schedule
type: call
call: "adp.create-schedule"
with:
location_id: "{{restaurant_number}}"
week_start: "{{week_start}}"
forecast_demand: "{{get-forecast.peak_hours}}"
available_crew: "{{get-availability.worker_count}}"
consumes:
- type: http
namespace: databricks
baseUri: "https://chipotle.cloud.databricks.com/serving-endpoints"
authentication:
type: bearer
token: "$secrets.databricks_token"
resources:
- name: endpoints
path: "/{{endpoint}}/invocations"
inputParameters:
- name: endpoint
in: path
operations:
- name: invoke-endpoint
method: POST
- type: http
namespace: workday
baseUri: "https://chipotle.workday.com/api/staffing/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: availability
path: "/workers/availability"
inputParameters:
- name: location
in: query
- name: week
in: query
operations:
- name: get-worker-availability
method: GET
- type: http
namespace: adp
baseUri: "https://api.adp.com/time/v3"
authentication:
type: bearer
token: "$secrets.adp_token"
resources:
- name: schedules
path: "/workers/schedules"
operations:
- name: create-schedule
method: POST
Analyzes customer feedback by pulling survey data from Google Forms, running sentiment analysis in Databricks, and creating action items in Jira.
naftiko: "0.5"
info:
label: "Customer Feedback Analysis Pipeline"
description: "Analyzes customer feedback by pulling survey data from Google Forms, running sentiment analysis in Databricks, and creating action items in Jira."
tags:
- customer-experience
- google-forms
- databricks
- jira
capability:
exposes:
- type: mcp
namespace: feedback-analysis
port: 8080
tools:
- name: analyze-customer-feedback
description: "Analyze customer feedback with sentiment analysis and action tracking."
inputParameters:
- name: form_id
in: body
type: string
description: "The Google Form ID."
- name: date_range
in: body
type: string
description: "The date range for feedback."
steps:
- name: get-responses
type: call
call: "google-forms.get-responses"
with:
form_id: "{{form_id}}"
date_range: "{{date_range}}"
- name: run-sentiment
type: call
call: "databricks.invoke-endpoint"
with:
endpoint: "sentiment_analyzer"
inputs: "{responses: {{get-responses.response_count}}}"
- name: create-actions
type: call
call: "jira.create-issue"
with:
project: "CX"
summary: "Feedback analysis: {{date_range}}"
description: "Responses: {{get-responses.response_count}}. Sentiment: {{run-sentiment.overall_score}}/5. Top issues: {{run-sentiment.top_issues}}."
issue_type: "Task"
consumes:
- type: http
namespace: google-forms
baseUri: "https://forms.googleapis.com/v1"
authentication:
type: bearer
token: "$secrets.google_forms_token"
resources:
- name: responses
path: "/forms/{{form_id}}/responses"
inputParameters:
- name: form_id
in: path
operations:
- name: get-responses
method: GET
- type: http
namespace: databricks
baseUri: "https://chipotle.cloud.databricks.com/serving-endpoints"
authentication:
type: bearer
token: "$secrets.databricks_token"
resources:
- name: endpoints
path: "/{{endpoint}}/invocations"
inputParameters:
- name: endpoint
in: path
operations:
- name: invoke-endpoint
method: POST
- type: http
namespace: jira
baseUri: "https://chipotle.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: issues
path: "/issue"
operations:
- name: create-issue
method: POST
Runs daily health checks by pulling POS metrics from Square, network status from SolarWinds, and kitchen equipment alerts from Datadog, then posts a summary to Microsoft Teams.
naftiko: "0.5"
info:
label: "Daily Restaurant Health Check Pipeline"
description: "Runs daily health checks by pulling POS metrics from Square, network status from SolarWinds, and kitchen equipment alerts from Datadog, then posts a summary to Microsoft Teams."
tags:
- operations
- square
- solarwinds
- datadog
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: restaurant-health
port: 8080
tools:
- name: run-daily-health-check
description: "Run a comprehensive daily health check for a restaurant."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The Chipotle restaurant number."
steps:
- name: pos-metrics
type: call
call: "square.get-location-metrics"
with:
location_id: "{{restaurant_number}}"
- name: network-status
type: call
call: "solarwinds.get-node-status"
with:
node_name: "store-{{restaurant_number}}"
- name: equipment-alerts
type: call
call: "datadog.query-monitors"
with:
tag: "restaurant:{{restaurant_number}}"
- name: post-summary
type: call
call: "msteams.send-channel-message"
with:
team_id: "restaurant_ops"
channel_id: "daily_health"
text: "Restaurant {{restaurant_number}} Health: POS={{pos-metrics.status}}, Network={{network-status.status}}, Alerts={{equipment-alerts.count}}."
consumes:
- type: http
namespace: square
baseUri: "https://connect.squareup.com/v2"
authentication:
type: bearer
token: "$secrets.square_token"
resources:
- name: locations
path: "/locations/{{location_id}}/metrics"
inputParameters:
- name: location_id
in: path
operations:
- name: get-location-metrics
method: GET
- type: http
namespace: solarwinds
baseUri: "https://chipotle-solarwinds.com/SolarWinds/InformationService/v3"
authentication:
type: basic
username: "$secrets.solarwinds_user"
password: "$secrets.solarwinds_password"
resources:
- name: nodes
path: "/Query"
operations:
- name: get-node-status
method: POST
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: api-key
key: "$secrets.datadog_api_key"
resources:
- name: monitors
path: "/monitor/search"
inputParameters:
- name: tag
in: query
operations:
- name: query-monitors
method: GET
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Invokes a Databricks ML model for Chipotle menu optimization, predicting item performance based on regional preferences and ingredient costs.
naftiko: "0.5"
info:
label: "Databricks Menu Optimization Model"
description: "Invokes a Databricks ML model for Chipotle menu optimization, predicting item performance based on regional preferences and ingredient costs."
tags:
- machine-learning
- databricks
- menu-optimization
- data-science
capability:
exposes:
- type: mcp
namespace: ml-inference
port: 8080
tools:
- name: run-menu-optimization
description: "Run a menu optimization model via Databricks serving endpoint."
inputParameters:
- name: region
in: body
type: string
description: "The geographic region."
- name: season
in: body
type: string
description: "The season (spring, summer, fall, winter)."
call: "databricks.invoke-endpoint"
with:
endpoint: "menu_optimization"
inputs: "{region: '{{region}}', season: '{{season}}'}"
consumes:
- type: http
namespace: databricks
baseUri: "https://chipotle.cloud.databricks.com/serving-endpoints"
authentication:
type: bearer
token: "$secrets.databricks_token"
resources:
- name: serving-endpoints
path: "/{{endpoint}}/invocations"
inputParameters:
- name: endpoint
in: path
operations:
- name: invoke-endpoint
method: POST
Queries Datadog for infrastructure metrics at Chipotle restaurant and data center locations, returning CPU, memory, and disk utilization.
naftiko: "0.5"
info:
label: "Datadog Infrastructure Monitoring"
description: "Queries Datadog for infrastructure metrics at Chipotle restaurant and data center locations, returning CPU, memory, and disk utilization."
tags:
- monitoring
- datadog
- infrastructure
capability:
exposes:
- type: mcp
namespace: infra-monitoring
port: 8080
tools:
- name: get-infra-metrics
description: "Retrieve Datadog infrastructure metrics by host tag."
inputParameters:
- name: host_tag
in: body
type: string
description: "The Datadog host tag to filter by."
call: "datadog.query-metrics"
with:
query: "avg:system.cpu.user{{{host_tag}}}"
from: "now-1h"
to: "now"
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: apikey
key: "$secrets.datadog_api_key"
app_key: "$secrets.datadog_app_key"
resources:
- name: metrics
path: "/query"
inputParameters:
- name: query
in: query
- name: from
in: query
- name: to
in: query
operations:
- name: query-metrics
method: GET
Tracks delivery partner performance by pulling order data from BigCommerce, analyzing delivery times in Snowflake, and generating scorecards in Tableau.
naftiko: "0.5"
info:
label: "Delivery Partner Performance Pipeline"
description: "Tracks delivery partner performance by pulling order data from BigCommerce, analyzing delivery times in Snowflake, and generating scorecards in Tableau."
tags:
- delivery
- bigcommerce
- snowflake
- tableau
capability:
exposes:
- type: mcp
namespace: delivery-performance
port: 8080
tools:
- name: track-delivery-performance
description: "Track and analyze delivery partner performance metrics."
inputParameters:
- name: partner_id
in: body
type: string
description: "The delivery partner identifier."
- name: period
in: body
type: string
description: "The reporting period."
steps:
- name: get-order-data
type: call
call: "bigcommerce.get-orders"
with:
channel: "{{partner_id}}"
date_range: "{{period}}"
- name: analyze-times
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT avg_delivery_time, on_time_pct, complaint_rate FROM delivery_performance WHERE partner = '{{partner_id}}' AND period = '{{period}}'"
- name: refresh-scorecard
type: call
call: "tableau.refresh-extract"
with:
workbook: "delivery_scorecards"
datasource: "partner_performance"
consumes:
- type: http
namespace: bigcommerce
baseUri: "https://api.bigcommerce.com/stores/chipotle/v3"
authentication:
type: bearer
token: "$secrets.bigcommerce_token"
resources:
- name: orders
path: "/orders"
inputParameters:
- name: channel
in: query
- name: date_range
in: query
operations:
- name: get-orders
method: GET
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: tableau
baseUri: "https://chipotle.online.tableau.com/api/3.14"
authentication:
type: bearer
token: "$secrets.tableau_token"
resources:
- name: extracts
path: "/sites/chipotle/workbooks/{{workbook}}/refresh"
inputParameters:
- name: workbook
in: path
operations:
- name: refresh-extract
method: POST
Updates digital menu board content by fetching pricing from SAP, retrieving promotional assets from Box, and deploying content through Azure Data Factory.
naftiko: "0.5"
info:
label: "Digital Menu Board Content Pipeline"
description: "Updates digital menu board content by fetching pricing from SAP, retrieving promotional assets from Box, and deploying content through Azure Data Factory."
tags:
- menu-management
- sap
- box
- azure-data-factory
capability:
exposes:
- type: mcp
namespace: menu-board-content
port: 8080
tools:
- name: update-menu-board-content
description: "Update digital menu board content with current pricing and promotions."
inputParameters:
- name: region
in: body
type: string
description: "The target region."
- name: campaign_id
in: body
type: string
description: "The promotional campaign ID."
steps:
- name: get-pricing
type: call
call: "sap.get-menu-prices"
with:
region: "{{region}}"
- name: get-promo-assets
type: call
call: "box.get-folder-items"
with:
folder_id: "promo_{{campaign_id}}"
- name: deploy-content
type: call
call: "adf.trigger-pipeline"
with:
pipeline: "menu_board_update"
parameters: "{region: '{{region}}', prices: '{{get-pricing.items}}'}"
consumes:
- type: http
namespace: sap
baseUri: "https://chipotle-s4.sap.com/sap/opu/odata/sap/MENU_SRV"
authentication:
type: basic
username: "$secrets.sap_user"
password: "$secrets.sap_password"
resources:
- name: prices
path: "/MenuPrices"
inputParameters:
- name: region
in: query
operations:
- name: get-menu-prices
method: GET
- type: http
namespace: box
baseUri: "https://api.box.com/2.0"
authentication:
type: bearer
token: "$secrets.box_token"
resources:
- name: folders
path: "/folders/{{folder_id}}/items"
inputParameters:
- name: folder_id
in: path
operations:
- name: get-folder-items
method: GET
- type: http
namespace: adf
baseUri: "https://management.azure.com/subscriptions/chipotle-sub/resourceGroups/data-rg/providers/Microsoft.DataFactory/factories/chipotle-adf"
authentication:
type: bearer
token: "$secrets.azure_token"
resources:
- name: pipelines
path: "/pipelines/{{pipeline}}/createRun"
inputParameters:
- name: pipeline
in: path
operations:
- name: trigger-pipeline
method: POST
Detects digital order surges through Datadog metrics, triggers Azure Kubernetes auto-scaling, and alerts the digital operations team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Digital Order Surge Scaling Pipeline"
description: "Detects digital order surges through Datadog metrics, triggers Azure Kubernetes auto-scaling, and alerts the digital operations team via Microsoft Teams."
tags:
- digital-ordering
- datadog
- azure-kubernetes
- microsoft-teams
- auto-scaling
capability:
exposes:
- type: mcp
namespace: digital-scaling
port: 8080
tools:
- name: handle-order-surge
description: "Detect and respond to digital order surges with auto-scaling."
inputParameters:
- name: threshold_pct
in: body
type: string
description: "The surge threshold percentage."
steps:
- name: check-order-volume
type: call
call: "datadog.query-metrics"
with:
query: "avg:chipotle.digital_orders.rate{*}"
threshold: "{{threshold_pct}}"
- name: scale-services
type: call
call: "aks.scale-deployment"
with:
deployment: "digital-ordering-api"
replicas: "{{check-order-volume.recommended_replicas}}"
- name: alert-team
type: call
call: "msteams.send-channel-message"
with:
team_id: "digital_ops"
channel_id: "surge_alerts"
text: "Order surge detected: {{check-order-volume.current_rate}} orders/min. Auto-scaled to {{check-order-volume.recommended_replicas}} replicas."
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: api-key
key: "$secrets.datadog_api_key"
resources:
- name: metrics
path: "/query"
inputParameters:
- name: query
in: query
operations:
- name: query-metrics
method: GET
- type: http
namespace: aks
baseUri: "https://management.azure.com/subscriptions/chipotle-sub/resourceGroups/digital-rg"
authentication:
type: bearer
token: "$secrets.azure_token"
resources:
- name: deployments
path: "/providers/Microsoft.ContainerService/managedClusters/digital-cluster/apis/apps/v1/namespaces/production/deployments/{{deployment}}/scale"
inputParameters:
- name: deployment
in: path
operations:
- name: scale-deployment
method: PUT
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Optimizes drive-thru performance by analyzing wait times in Snowflake, correlating with staffing in Workday, and posting optimization recommendations to Confluence.
naftiko: "0.5"
info:
label: "Drive-Thru Performance Optimization Pipeline"
description: "Optimizes drive-thru performance by analyzing wait times in Snowflake, correlating with staffing in Workday, and posting optimization recommendations to Confluence."
tags:
- operations
- snowflake
- workday
- confluence
- drive-thru
capability:
exposes:
- type: mcp
namespace: drive-thru-ops
port: 8080
tools:
- name: optimize-drive-thru
description: "Analyze and optimize drive-thru performance for a restaurant."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
- name: date
in: body
type: string
description: "The analysis date."
steps:
- name: get-wait-times
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT avg_wait_time, peak_wait_time, throughput FROM drive_thru_metrics WHERE restaurant = '{{restaurant_number}}' AND date = '{{date}}'"
- name: get-staffing
type: call
call: "workday.get-shift-data"
with:
location: "{{restaurant_number}}"
date: "{{date}}"
- name: post-recommendations
type: call
call: "confluence.create-page"
with:
space_key: "OPS"
title: "Drive-thru optimization: {{restaurant_number}} ({{date}})"
body: "Avg wait: {{get-wait-times.avg_wait_time}}s. Peak: {{get-wait-times.peak_wait_time}}s. Staff: {{get-staffing.headcount}}. Throughput: {{get-wait-times.throughput}}/hr."
consumes:
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: workday
baseUri: "https://chipotle.workday.com/api/staffing/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: shifts
path: "/workers/shifts"
inputParameters:
- name: location
in: query
- name: date
in: query
operations:
- name: get-shift-data
method: GET
- type: http
namespace: confluence
baseUri: "https://chipotle.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: pages
path: "/content"
operations:
- name: create-page
method: POST
Queries Dynatrace for real-time application performance metrics for Chipotle digital platforms, returning response times, error rates, and throughput.
naftiko: "0.5"
info:
label: "Dynatrace Application Performance Monitor"
description: "Queries Dynatrace for real-time application performance metrics for Chipotle digital platforms, returning response times, error rates, and throughput."
tags:
- monitoring
- dynatrace
- application-performance
- digital-platform
capability:
exposes:
- type: mcp
namespace: apm-monitoring
port: 8080
tools:
- name: get-app-performance
description: "Retrieve Dynatrace application performance metrics for a Chipotle digital service."
inputParameters:
- name: entity_id
in: body
type: string
description: "The Dynatrace entity ID."
call: "dynatrace.get-metrics"
with:
entityId: "{{entity_id}}"
metricSelector: "builtin:service.response.time,builtin:service.errors.total.rate"
consumes:
- type: http
namespace: dynatrace
baseUri: "https://chipotle.live.dynatrace.com/api/v2"
authentication:
type: bearer
token: "$secrets.dynatrace_token"
resources:
- name: metrics
path: "/metrics/query"
inputParameters:
- name: metricSelector
in: query
- name: entityId
in: query
operations:
- name: get-metrics
method: GET
Facilitates employee performance reviews by pulling metrics from Workday, gathering training completion from Pluralsight, and creating review documents in Google Sheets.
naftiko: "0.5"
info:
label: "Employee Performance Review Pipeline"
description: "Facilitates employee performance reviews by pulling metrics from Workday, gathering training completion from Pluralsight, and creating review documents in Google Sheets."
tags:
- hr
- workday
- pluralsight
- google-sheets
capability:
exposes:
- type: mcp
namespace: performance-reviews
port: 8080
tools:
- name: prepare-performance-review
description: "Prepare an employee performance review with data from multiple systems."
inputParameters:
- name: employee_id
in: body
type: string
description: "The employee ID."
- name: review_period
in: body
type: string
description: "The review period."
steps:
- name: get-performance
type: call
call: "workday.get-performance-data"
with:
employee_id: "{{employee_id}}"
period: "{{review_period}}"
- name: get-training
type: call
call: "pluralsight.get-user-progress"
with:
user_id: "{{employee_id}}"
- name: create-review-doc
type: call
call: "google-sheets.create-spreadsheet"
with:
title: "Review: {{get-performance.name}} - {{review_period}}"
data: "Rating: {{get-performance.rating}}. Goals met: {{get-performance.goals_met}}/{{get-performance.goals_total}}. Training hours: {{get-training.completed_hours}}."
consumes:
- type: http
namespace: workday
baseUri: "https://chipotle.workday.com/api/performance/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: performance
path: "/reviews"
inputParameters:
- name: employee_id
in: query
- name: period
in: query
operations:
- name: get-performance-data
method: GET
- type: http
namespace: pluralsight
baseUri: "https://api.pluralsight.com/api/v1"
authentication:
type: bearer
token: "$secrets.pluralsight_token"
resources:
- name: progress
path: "/users/{{user_id}}/progress"
inputParameters:
- name: user_id
in: path
operations:
- name: get-user-progress
method: GET
- type: http
namespace: google-sheets
baseUri: "https://sheets.googleapis.com/v4"
authentication:
type: bearer
token: "$secrets.google_sheets_token"
resources:
- name: spreadsheets
path: "/spreadsheets"
operations:
- name: create-spreadsheet
method: POST
Monitors restaurant energy consumption by querying IoT sensor data in Databricks, comparing against benchmarks in Snowflake, and alerting facilities via ServiceNow.
naftiko: "0.5"
info:
label: "Energy Consumption Monitoring Pipeline"
description: "Monitors restaurant energy consumption by querying IoT sensor data in Databricks, comparing against benchmarks in Snowflake, and alerting facilities via ServiceNow."
tags:
- sustainability
- databricks
- snowflake
- servicenow
- energy
capability:
exposes:
- type: mcp
namespace: energy-monitoring
port: 8080
tools:
- name: monitor-energy-consumption
description: "Monitor and alert on restaurant energy consumption anomalies."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
- name: date
in: body
type: string
description: "The monitoring date."
steps:
- name: get-sensor-data
type: call
call: "databricks.invoke-endpoint"
with:
endpoint: "energy_sensors"
inputs: "{restaurant: '{{restaurant_number}}', date: '{{date}}'}"
- name: get-benchmarks
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT avg_kwh, threshold_kwh FROM energy_benchmarks WHERE restaurant = '{{restaurant_number}}'"
- name: create-alert
type: call
call: "servicenow.create-incident"
with:
short_description: "Energy anomaly: Restaurant {{restaurant_number}}"
description: "Consumption: {{get-sensor-data.total_kwh}} kWh vs benchmark {{get-benchmarks.avg_kwh}} kWh."
category: "facilities"
consumes:
- type: http
namespace: databricks
baseUri: "https://chipotle.cloud.databricks.com/serving-endpoints"
authentication:
type: bearer
token: "$secrets.databricks_token"
resources:
- name: endpoints
path: "/{{endpoint}}/invocations"
inputParameters:
- name: endpoint
in: path
operations:
- name: invoke-endpoint
method: POST
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: servicenow
baseUri: "https://chipotle.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
Schedules preventive maintenance by checking equipment telemetry in Datadog, creating work orders in ServiceNow, and notifying restaurant managers via Microsoft Teams.
naftiko: "0.5"
info:
label: "Equipment Maintenance Scheduling Pipeline"
description: "Schedules preventive maintenance by checking equipment telemetry in Datadog, creating work orders in ServiceNow, and notifying restaurant managers via Microsoft Teams."
tags:
- maintenance
- datadog
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: equipment-maintenance
port: 8080
tools:
- name: schedule-equipment-maintenance
description: "Schedule preventive maintenance based on equipment telemetry."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The Chipotle restaurant number."
- name: equipment_type
in: body
type: string
description: "The equipment type to check."
steps:
- name: check-telemetry
type: call
call: "datadog.query-metrics"
with:
query: "avg:chipotle.equipment.{{equipment_type}}.runtime{restaurant:{{restaurant_number}}}"
- name: create-work-order
type: call
call: "servicenow.create-task"
with:
short_description: "PM: {{equipment_type}} at restaurant {{restaurant_number}}"
assignment_group: "facilities_maintenance"
runtime_hours: "{{check-telemetry.total_hours}}"
- name: notify-manager
type: call
call: "msteams.send-channel-message"
with:
team_id: "restaurant_ops"
channel_id: "maintenance"
text: "Preventive maintenance scheduled for {{equipment_type}} at restaurant {{restaurant_number}}. Work order: {{create-work-order.number}}. Runtime: {{check-telemetry.total_hours}} hours."
consumes:
- type: http
namespace: datadog
baseUri: "https://api.datadoghq.com/api/v1"
authentication:
type: api-key
key: "$secrets.datadog_api_key"
resources:
- name: metrics
path: "/query"
inputParameters:
- name: query
in: query
operations:
- name: query-metrics
method: GET
- type: http
namespace: servicenow
baseUri: "https://chipotle.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: tasks
path: "/table/sc_task"
operations:
- name: create-task
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Retrieves Facebook Ads campaign performance metrics for Chipotle digital marketing, returning impressions, clicks, spend, and conversion data.
naftiko: "0.5"
info:
label: "Facebook Ad Campaign Performance"
description: "Retrieves Facebook Ads campaign performance metrics for Chipotle digital marketing, returning impressions, clicks, spend, and conversion data."
tags:
- marketing
- facebook
- advertising
- digital-marketing
capability:
exposes:
- type: mcp
namespace: social-advertising
port: 8080
tools:
- name: get-ad-performance
description: "Retrieve Facebook ad campaign performance metrics."
inputParameters:
- name: campaign_id
in: body
type: string
description: "The Facebook ad campaign ID."
call: "facebook.get-campaign-insights"
with:
campaign_id: "{{campaign_id}}"
consumes:
- type: http
namespace: facebook
baseUri: "https://graph.facebook.com/v18.0"
authentication:
type: bearer
token: "$secrets.facebook_ads_token"
resources:
- name: campaign-insights
path: "/{{campaign_id}}/insights"
inputParameters:
- name: campaign_id
in: path
operations:
- name: get-campaign-insights
method: GET
When a food safety incident is reported, creates a critical ServiceNow incident, notifies the food safety team in Microsoft Teams, and logs the event in Oracle E-Business Suite for regulatory compliance.
naftiko: "0.5"
info:
label: "Food Safety Incident Escalation Pipeline"
description: "When a food safety incident is reported, creates a critical ServiceNow incident, notifies the food safety team in Microsoft Teams, and logs the event in Oracle E-Business Suite for regulatory compliance."
tags:
- food-safety
- servicenow
- microsoft-teams
- oracle
- compliance
capability:
exposes:
- type: mcp
namespace: food-safety-ops
port: 8080
tools:
- name: escalate-food-safety-incident
description: "Escalate a food safety incident through ServiceNow, Teams notification, and Oracle compliance logging."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The Chipotle restaurant number."
- name: incident_type
in: body
type: string
description: "The type of food safety incident."
- name: description
in: body
type: string
description: "Detailed description of the incident."
steps:
- name: create-critical-ticket
type: call
call: "servicenow.create-incident"
with:
short_description: "FOOD SAFETY: {{incident_type}} at restaurant {{restaurant_number}}"
urgency: "1"
impact: "1"
category: "food_safety"
description: "{{description}}"
- name: notify-food-safety-team
type: call
call: "msteams.send-channel-message"
with:
team_id: "food_safety_response"
channel_id: "critical_incidents"
text: "FOOD SAFETY ALERT: {{incident_type}} at restaurant {{restaurant_number}}. Ticket: {{create-critical-ticket.number}}."
- name: log-compliance-event
type: call
call: "oracle-ebs.insert-compliance-record"
with:
event_type: "FOOD_SAFETY_INCIDENT"
restaurant_number: "{{restaurant_number}}"
incident_type: "{{incident_type}}"
ticket_number: "{{create-critical-ticket.number}}"
consumes:
- type: http
namespace: servicenow
baseUri: "https://chipotle.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: send-channel-message
method: POST
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: compliance-records
path: "/complianceEvents"
operations:
- name: insert-compliance-record
method: POST
Detects gift card fraud by analyzing transaction patterns in Snowflake, flagging suspicious activity in Salesforce, and alerting the fraud team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Gift Card Fraud Detection Pipeline"
description: "Detects gift card fraud by analyzing transaction patterns in Snowflake, flagging suspicious activity in Salesforce, and alerting the fraud team via Microsoft Teams."
tags:
- fraud-detection
- snowflake
- salesforce
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: fraud-detection
port: 8080
tools:
- name: detect-gift-card-fraud
description: "Detect potential gift card fraud through transaction pattern analysis."
inputParameters:
- name: card_number
in: body
type: string
description: "The gift card number."
- name: timeframe
in: body
type: string
description: "The analysis timeframe in hours."
steps:
- name: analyze-patterns
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT count(*) as tx_count, sum(amount) as total_amount, count(distinct location) as location_count FROM gift_card_transactions WHERE card = '{{card_number}}' AND ts >= DATEADD(hour, -{{timeframe}}, CURRENT_TIMESTAMP())"
- name: flag-suspicious
type: call
call: "salesforce.create-case"
with:
subject: "Potential gift card fraud: {{card_number}}"
description: "Transactions: {{analyze-patterns.tx_count}}. Total: ${{analyze-patterns.total_amount}}. Locations: {{analyze-patterns.location_count}}."
priority: "High"
- name: alert-fraud-team
type: call
call: "msteams.send-channel-message"
with:
team_id: "fraud_prevention"
channel_id: "alerts"
text: "Gift card fraud alert: Card {{card_number}} - {{analyze-patterns.tx_count}} transactions (${{analyze-patterns.total_amount}}) across {{analyze-patterns.location_count}} locations. Case: {{flag-suspicious.case_number}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: salesforce
baseUri: "https://chipotle.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: cases
path: "/sobjects/Case"
operations:
- name: create-case
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Triggers a GitHub Actions workflow for Chipotle application builds and returns the workflow run status.
naftiko: "0.5"
info:
label: "GitHub Actions CI Workflow Trigger"
description: "Triggers a GitHub Actions workflow for Chipotle application builds and returns the workflow run status."
tags:
- ci-cd
- github-actions
- development
- automation
capability:
exposes:
- type: mcp
namespace: ci-workflows
port: 8080
tools:
- name: trigger-github-workflow
description: "Trigger a GitHub Actions workflow dispatch event."
inputParameters:
- name: repo
in: body
type: string
description: "The repository name (org/repo format)."
- name: workflow_id
in: body
type: string
description: "The workflow file name or ID."
- name: ref
in: body
type: string
description: "The git reference (branch or tag)."
call: "github.dispatch-workflow"
with:
repo: "{{repo}}"
workflow_id: "{{workflow_id}}"
ref: "{{ref}}"
consumes:
- type: http
namespace: github
baseUri: "https://api.github.com"
authentication:
type: bearer
token: "$secrets.github_token"
resources:
- name: workflow-dispatches
path: "/repos/{{repo}}/actions/workflows/{{workflow_id}}/dispatches"
inputParameters:
- name: repo
in: path
- name: workflow_id
in: path
operations:
- name: dispatch-workflow
method: POST
Retrieves open pull request details for a Chipotle GitHub repository, returning PR count, authors, and review status.
naftiko: "0.5"
info:
label: "GitHub Repository PR Status"
description: "Retrieves open pull request details for a Chipotle GitHub repository, returning PR count, authors, and review status."
tags:
- development
- github
- code-review
capability:
exposes:
- type: mcp
namespace: dev-workflow
port: 8080
tools:
- name: get-repo-prs
description: "List open pull requests for a GitHub repository."
inputParameters:
- name: repo_name
in: body
type: string
description: "The repository name (org/repo format)."
call: "github.list-prs"
with:
repo: "{{repo_name}}"
state: "open"
consumes:
- type: http
namespace: github
baseUri: "https://api.github.com"
authentication:
type: bearer
token: "$secrets.github_token"
resources:
- name: pull-requests
path: "/repos/{{repo}}/pulls"
inputParameters:
- name: repo
in: path
- name: state
in: query
operations:
- name: list-prs
method: GET
Queries Google Analytics for Chipotle digital ordering channel metrics including website and mobile app sessions, conversion rates, and average order value.
naftiko: "0.5"
info:
label: "Google Analytics Digital Ordering Report"
description: "Queries Google Analytics for Chipotle digital ordering channel metrics including website and mobile app sessions, conversion rates, and average order value."
tags:
- analytics
- google-analytics
- digital-ordering
- marketing
capability:
exposes:
- type: mcp
namespace: digital-analytics
port: 8080
tools:
- name: get-digital-ordering-metrics
description: "Retrieve Google Analytics metrics for Chipotle digital ordering channels."
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: "ga.run-report"
with:
property: "properties/987654321"
dateRanges: "[{startDate: '{{start_date}}', endDate: '{{end_date}}'}]"
metrics: "sessions,conversions,purchaseRevenue"
consumes:
- type: http
namespace: ga
baseUri: "https://analyticsdata.googleapis.com/v1beta"
authentication:
type: bearer
token: "$secrets.google_analytics_token"
resources:
- name: reports
path: "/{{property}}:runReport"
inputParameters:
- name: property
in: path
operations:
- name: run-report
method: POST
Lists files from a shared Google Drive folder used by Chipotle operations teams, returning file metadata and sharing permissions.
naftiko: "0.5"
info:
label: "Google Drive Shared File Listing"
description: "Lists files from a shared Google Drive folder used by Chipotle operations teams, returning file metadata and sharing permissions."
tags:
- document-management
- google-drive
- collaboration
capability:
exposes:
- type: mcp
namespace: drive-files
port: 8080
tools:
- name: list-shared-files
description: "List files from a shared Google Drive folder."
inputParameters:
- name: folder_id
in: body
type: string
description: "The Google Drive folder ID."
call: "gdrive.list-files"
with:
folder_id: "{{folder_id}}"
consumes:
- type: http
namespace: gdrive
baseUri: "https://www.googleapis.com/drive/v3"
authentication:
type: bearer
token: "$secrets.google_drive_token"
resources:
- name: files
path: "/files"
inputParameters:
- name: folder_id
in: query
operations:
- name: list-files
method: GET
Retrieves Google Maps place details for a Chipotle restaurant, returning address, operating hours, rating, and customer reviews.
naftiko: "0.5"
info:
label: "Google Maps Restaurant Locator"
description: "Retrieves Google Maps place details for a Chipotle restaurant, returning address, operating hours, rating, and customer reviews."
tags:
- location-services
- google-maps
- restaurant-info
capability:
exposes:
- type: mcp
namespace: location-services
port: 8080
tools:
- name: get-restaurant-details
description: "Retrieve Google Maps place details for a Chipotle restaurant."
inputParameters:
- name: place_id
in: body
type: string
description: "The Google Maps place ID."
call: "googlemaps.get-place-details"
with:
place_id: "{{place_id}}"
fields: "name,formatted_address,opening_hours,rating"
consumes:
- type: http
namespace: googlemaps
baseUri: "https://maps.googleapis.com/maps/api"
authentication:
type: apikey
key: "$secrets.google_maps_api_key"
resources:
- name: place-details
path: "/place/details/json"
inputParameters:
- name: place_id
in: query
- name: fields
in: query
operations:
- name: get-place-details
method: GET
Retrieves SEO performance data from Google Search Console for Chipotle web properties, returning search queries, impressions, and click-through rates.
naftiko: "0.5"
info:
label: "Google Search Console SEO Performance"
description: "Retrieves SEO performance data from Google Search Console for Chipotle web properties, returning search queries, impressions, and click-through rates."
tags:
- seo
- google-search-console
- digital-marketing
- analytics
capability:
exposes:
- type: mcp
namespace: seo-analytics
port: 8080
tools:
- name: get-seo-performance
description: "Retrieve SEO performance data from Google Search Console."
inputParameters:
- name: site_url
in: body
type: string
description: "The website URL."
- name: date_range
in: body
type: string
description: "The date range for the report."
call: "gsc.get-search-analytics"
with:
site: "{{site_url}}"
range: "{{date_range}}"
consumes:
- type: http
namespace: gsc
baseUri: "https://searchconsole.googleapis.com/webmasters/v3"
authentication:
type: bearer
token: "$secrets.google_search_console_token"
resources:
- name: search-analytics
path: "/sites/{{site}}/searchAnalytics/query"
inputParameters:
- name: site
in: path
operations:
- name: get-search-analytics
method: POST
Reads operational data from a Google Sheets spreadsheet for Chipotle field operations tracking and restaurant performance summaries.
naftiko: "0.5"
info:
label: "Google Sheets Operational Data Sync"
description: "Reads operational data from a Google Sheets spreadsheet for Chipotle field operations tracking and restaurant performance summaries."
tags:
- data-management
- google-sheets
- operations
capability:
exposes:
- type: mcp
namespace: spreadsheet-data
port: 8080
tools:
- name: read-operations-sheet
description: "Read data from a Google Sheets spreadsheet."
inputParameters:
- name: spreadsheet_id
in: body
type: string
description: "The Google Sheets spreadsheet ID."
- name: range
in: body
type: string
description: "The cell range (e.g., Sheet1!A1:Z100)."
call: "gsheets.get-values"
with:
spreadsheet_id: "{{spreadsheet_id}}"
range: "{{range}}"
consumes:
- type: http
namespace: gsheets
baseUri: "https://sheets.googleapis.com/v4"
authentication:
type: bearer
token: "$secrets.google_sheets_token"
resources:
- name: values
path: "/spreadsheets/{{spreadsheet_id}}/values/{{range}}"
inputParameters:
- name: spreadsheet_id
in: path
- name: range
in: path
operations:
- name: get-values
method: GET
Processes guest complaints by creating a Salesforce case, triggering a refund via Square POS, and sending an apology email through MailChimp.
naftiko: "0.5"
info:
label: "Guest Complaint Resolution Pipeline"
description: "Processes guest complaints by creating a Salesforce case, triggering a refund via Square POS, and sending an apology email through MailChimp."
tags:
- customer-service
- salesforce
- square
- mailchimp
capability:
exposes:
- type: mcp
namespace: guest-complaints
port: 8080
tools:
- name: resolve-guest-complaint
description: "Process a guest complaint across Salesforce, Square, and MailChimp."
inputParameters:
- name: guest_email
in: body
type: string
description: "The guest email address."
- name: order_id
in: body
type: string
description: "The original order ID."
- name: complaint_text
in: body
type: string
description: "Description of the complaint."
steps:
- name: create-case
type: call
call: "salesforce.create-case"
with:
subject: "Guest complaint for order {{order_id}}"
description: "{{complaint_text}}"
contact_email: "{{guest_email}}"
- name: process-refund
type: call
call: "square.create-refund"
with:
payment_id: "{{order_id}}"
reason: "Guest complaint resolution"
- name: send-apology
type: call
call: "mailchimp.send-transactional"
with:
template: "complaint_resolution"
to_email: "{{guest_email}}"
merge_vars: "case_number={{create-case.case_number}},refund_amount={{process-refund.amount}}"
consumes:
- type: http
namespace: salesforce
baseUri: "https://chipotle.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: cases
path: "/sobjects/Case"
operations:
- name: create-case
method: POST
- type: http
namespace: square
baseUri: "https://connect.squareup.com/v2"
authentication:
type: bearer
token: "$secrets.square_token"
resources:
- name: refunds
path: "/refunds"
operations:
- name: create-refund
method: POST
- type: http
namespace: mailchimp
baseUri: "https://mandrillapp.com/api/1.0"
authentication:
type: api-key
key: "$secrets.mailchimp_api_key"
resources:
- name: transactional
path: "/messages/send-template"
operations:
- name: send-transactional
method: POST
Retrieves HubSpot marketing campaign metrics for Chipotle promotional campaigns including email performance, landing page conversions, and social media reach.
naftiko: "0.5"
info:
label: "HubSpot Marketing Campaign Metrics"
description: "Retrieves HubSpot marketing campaign metrics for Chipotle promotional campaigns including email performance, landing page conversions, and social media reach."
tags:
- marketing
- hubspot
- campaigns
- digital-marketing
capability:
exposes:
- type: mcp
namespace: marketing-campaigns
port: 8080
tools:
- name: get-campaign-metrics
description: "Retrieve HubSpot marketing campaign performance metrics."
inputParameters:
- name: campaign_id
in: body
type: string
description: "The HubSpot campaign ID."
call: "hubspot.get-campaign"
with:
campaign_id: "{{campaign_id}}"
consumes:
- type: http
namespace: hubspot
baseUri: "https://api.hubapi.com/marketing/v3"
authentication:
type: bearer
token: "$secrets.hubspot_token"
resources:
- name: campaigns
path: "/campaigns/{{campaign_id}}"
inputParameters:
- name: campaign_id
in: path
operations:
- name: get-campaign
method: GET
Checks the status of Informatica data integration pipelines for Chipotle's enterprise data flows, returning job run status and processing metrics.
naftiko: "0.5"
info:
label: "Informatica Data Pipeline Status"
description: "Checks the status of Informatica data integration pipelines for Chipotle's enterprise data flows, returning job run status and processing metrics."
tags:
- data-integration
- informatica
- etl
- data-pipeline
capability:
exposes:
- type: mcp
namespace: data-integration
port: 8080
tools:
- name: get-pipeline-status
description: "Retrieve Informatica data pipeline job status."
inputParameters:
- name: job_id
in: body
type: string
description: "The Informatica job ID."
call: "informatica.get-job-status"
with:
job_id: "{{job_id}}"
consumes:
- type: http
namespace: informatica
baseUri: "https://dm-us.informaticacloud.com/saas/api/v2"
authentication:
type: bearer
token: "$secrets.informatica_token"
resources:
- name: jobs
path: "/job/{{job_id}}"
inputParameters:
- name: job_id
in: path
operations:
- name: get-job-status
method: GET
Monitors ingredient price changes in SAP, compares against budget thresholds in Snowflake, and alerts procurement via Microsoft Teams when limits are exceeded.
naftiko: "0.5"
info:
label: "Ingredient Price Alert Pipeline"
description: "Monitors ingredient price changes in SAP, compares against budget thresholds in Snowflake, and alerts procurement via Microsoft Teams when limits are exceeded."
tags:
- procurement
- sap
- snowflake
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: price-alerts
port: 8080
tools:
- name: check-ingredient-prices
description: "Monitor ingredient prices and alert on budget threshold breaches."
inputParameters:
- name: ingredient_category
in: body
type: string
description: "The ingredient category to monitor."
steps:
- name: get-current-prices
type: call
call: "sap.get-material-prices"
with:
category: "{{ingredient_category}}"
- name: get-budget-threshold
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT budget_threshold, last_price FROM ingredient_budgets WHERE category = '{{ingredient_category}}'"
- name: alert-procurement
type: call
call: "msteams.send-channel-message"
with:
team_id: "procurement"
channel_id: "price_alerts"
text: "Price alert for {{ingredient_category}}: Current=${{get-current-prices.avg_price}}, Budget=${{get-budget-threshold.budget_threshold}}, Change={{get-current-prices.price_change_pct}}%."
consumes:
- type: http
namespace: sap
baseUri: "https://chipotle-s4.sap.com/sap/opu/odata/sap/MATERIAL_SRV"
authentication:
type: basic
username: "$secrets.sap_user"
password: "$secrets.sap_password"
resources:
- name: material-prices
path: "/MaterialPrices"
inputParameters:
- name: category
in: query
operations:
- name: get-material-prices
method: GET
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Pulls ingredient pricing from SAP BW, compares against market benchmarks from Bloomberg Enterprise Data, generates a cost report in Snowflake, and notifies the procurement team via Microsoft Teams.
naftiko: "0.5"
info:
label: "Ingredient Sourcing Cost Optimization Pipeline"
description: "Pulls ingredient pricing from SAP BW, compares against market benchmarks from Bloomberg Enterprise Data, generates a cost report in Snowflake, and notifies the procurement team via Microsoft Teams."
tags:
- procurement
- sap-bw
- bloomberg
- snowflake
- microsoft-teams
- cost-management
capability:
exposes:
- type: mcp
namespace: ingredient-sourcing
port: 8080
tools:
- name: analyze-ingredient-costs
description: "Analyze ingredient sourcing costs against market benchmarks and notify procurement."
inputParameters:
- name: ingredient_category
in: body
type: string
description: "The ingredient category (e.g., proteins, produce, dairy)."
- name: period
in: body
type: string
description: "The analysis period (e.g., last_quarter)."
steps:
- name: get-sap-pricing
type: call
call: "sap-bw.query-pricing"
with:
category: "{{ingredient_category}}"
period: "{{period}}"
- name: get-market-benchmark
type: call
call: "bloomberg.get-commodity-prices"
with:
category: "{{ingredient_category}}"
period: "{{period}}"
- name: store-analysis
type: call
call: "snowflake.execute-statement"
with:
statement: "INSERT INTO cost_analysis (category, sap_cost, market_cost, variance) VALUES ('{{ingredient_category}}', {{get-sap-pricing.avg_cost}}, {{get-market-benchmark.avg_price}}, {{get-sap-pricing.avg_cost}} - {{get-market-benchmark.avg_price}})"
- name: notify-procurement
type: call
call: "msteams.send-channel-message"
with:
team_id: "procurement_team"
channel_id: "cost_alerts"
text: "Ingredient Cost Alert ({{ingredient_category}}): SAP avg ${{get-sap-pricing.avg_cost}} vs Market ${{get-market-benchmark.avg_price}}. Variance: ${{get-sap-pricing.avg_cost}} - ${{get-market-benchmark.avg_price}}."
consumes:
- type: http
namespace: sap-bw
baseUri: "https://chipotle-bw.sap.com/sap/opu/odata/sap"
authentication:
type: basic
username: "$secrets.sap_user"
password: "$secrets.sap_password"
resources:
- name: pricing
path: "/INGREDIENT_PRICING_SRV/PricingSet"
inputParameters:
- name: category
in: query
- name: period
in: query
operations:
- name: query-pricing
method: GET
- type: http
namespace: bloomberg
baseUri: "https://api.bloomberg.com/eap/catalogs/bbg/datasets"
authentication:
type: bearer
token: "$secrets.bloomberg_token"
resources:
- name: commodities
path: "/commodity-prices"
inputParameters:
- name: category
in: query
- name: period
in: query
operations:
- name: get-commodity-prices
method: GET
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Retrieves Instagram business account engagement metrics for Chipotle's social media marketing performance.
naftiko: "0.5"
info:
label: "Instagram Social Engagement Tracker"
description: "Retrieves Instagram business account engagement metrics for Chipotle's social media marketing performance."
tags:
- social-media
- instagram
- marketing
- engagement
capability:
exposes:
- type: mcp
namespace: social-analytics
port: 8080
tools:
- name: get-instagram-engagement
description: "Retrieve Instagram engagement metrics."
inputParameters:
- name: account_id
in: body
type: string
description: "The Instagram business account ID."
- name: period
in: body
type: string
description: "The time period (day, week, days_28)."
call: "instagram.get-insights"
with:
account_id: "{{account_id}}"
metric: "impressions,reach,engagement"
period: "{{period}}"
consumes:
- type: http
namespace: instagram
baseUri: "https://graph.facebook.com/v18.0"
authentication:
type: bearer
token: "$secrets.instagram_token"
resources:
- name: insights
path: "/{{account_id}}/insights"
inputParameters:
- name: account_id
in: path
- name: metric
in: query
- name: period
in: query
operations:
- name: get-insights
method: GET
Tracks IT asset lifecycle by querying inventory in ServiceNow, checking warranty status via Cisco, and scheduling replacements in Jira.
naftiko: "0.5"
info:
label: "IT Asset Lifecycle Tracking Pipeline"
description: "Tracks IT asset lifecycle by querying inventory in ServiceNow, checking warranty status via Cisco, and scheduling replacements in Jira."
tags:
- it-assets
- servicenow
- cisco
- jira
capability:
exposes:
- type: mcp
namespace: asset-lifecycle
port: 8080
tools:
- name: track-asset-lifecycle
description: "Track IT asset lifecycle across inventory, warranty, and replacement."
inputParameters:
- name: asset_tag
in: body
type: string
description: "The IT asset tag."
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
steps:
- name: get-asset-info
type: call
call: "servicenow.get-asset"
with:
asset_tag: "{{asset_tag}}"
- name: check-warranty
type: call
call: "cisco.check-warranty"
with:
serial_number: "{{get-asset-info.serial_number}}"
- name: schedule-replacement
type: call
call: "jira.create-issue"
with:
project: "ITOPS"
summary: "Asset replacement: {{asset_tag}} at restaurant {{restaurant_number}}"
description: "Asset: {{get-asset-info.model}}. Warranty expires: {{check-warranty.expiry_date}}. Status: {{check-warranty.status}}."
issue_type: "Task"
consumes:
- type: http
namespace: servicenow
baseUri: "https://chipotle.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: assets
path: "/table/alm_hardware"
inputParameters:
- name: asset_tag
in: query
operations:
- name: get-asset
method: GET
- type: http
namespace: cisco
baseUri: "https://apix.cisco.com/sn2info/v2"
authentication:
type: bearer
token: "$secrets.cisco_token"
resources:
- name: warranty
path: "/coverage/summary/serial_numbers/{{serial_number}}"
inputParameters:
- name: serial_number
in: path
operations:
- name: check-warranty
method: GET
- type: http
namespace: jira
baseUri: "https://chipotle.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: issues
path: "/issue"
operations:
- name: create-issue
method: POST
Retrieves Jira sprint progress for Chipotle technology teams, returning completed points, remaining work, and sprint burndown data.
naftiko: "0.5"
info:
label: "Jira Sprint Progress Tracker"
description: "Retrieves Jira sprint progress for Chipotle technology teams, returning completed points, remaining work, and sprint burndown data."
tags:
- project-management
- jira
- agile
- sprint
capability:
exposes:
- type: mcp
namespace: agile-tracking
port: 8080
tools:
- name: get-sprint-progress
description: "Retrieve Jira sprint progress including story points and burndown."
inputParameters:
- name: board_id
in: body
type: string
description: "The Jira board ID."
- name: sprint_id
in: body
type: string
description: "The sprint ID."
call: "jira.get-sprint"
with:
board_id: "{{board_id}}"
sprint_id: "{{sprint_id}}"
consumes:
- type: http
namespace: jira
baseUri: "https://chipotle.atlassian.net/rest/agile/1.0"
authentication:
type: basic
username: "$secrets.jira_user"
password: "$secrets.jira_api_token"
resources:
- name: sprints
path: "/board/{{board_id}}/sprint/{{sprint_id}}"
inputParameters:
- name: board_id
in: path
- name: sprint_id
in: path
operations:
- name: get-sprint
method: GET
Checks the health status of Kubernetes deployments in Azure Kubernetes Service for Chipotle microservices.
naftiko: "0.5"
info:
label: "Kubernetes Deployment Health Check"
description: "Checks the health status of Kubernetes deployments in Azure Kubernetes Service for Chipotle microservices."
tags:
- infrastructure
- azure-kubernetes-service
- kubernetes
- container-management
capability:
exposes:
- type: mcp
namespace: k8s-ops
port: 8080
tools:
- name: check-deployment-health
description: "Check AKS deployment health status."
inputParameters:
- name: namespace
in: body
type: string
description: "The Kubernetes namespace."
- name: deployment_name
in: body
type: string
description: "The deployment name."
call: "aks.get-deployment"
with:
namespace: "{{namespace}}"
deployment: "{{deployment_name}}"
consumes:
- type: http
namespace: aks
baseUri: "https://chipotle-aks.eastus.azmk8s.io"
authentication:
type: bearer
token: "$secrets.aks_token"
resources:
- name: deployments
path: "/apis/apps/v1/namespaces/{{namespace}}/deployments/{{deployment}}"
inputParameters:
- name: namespace
in: path
- name: deployment
in: path
operations:
- name: get-deployment
method: GET
Manages employer branding on LinkedIn by pulling open positions from Workday, publishing job posts to LinkedIn, and tracking engagement metrics in HubSpot.
naftiko: "0.5"
info:
label: "LinkedIn Employer Brand Pipeline"
description: "Manages employer branding on LinkedIn by pulling open positions from Workday, publishing job posts to LinkedIn, and tracking engagement metrics in HubSpot."
tags:
- recruiting
- workday
- linkedin
- hubspot
capability:
exposes:
- type: mcp
namespace: employer-brand
port: 8080
tools:
- name: publish-employer-brand-content
description: "Publish employer brand content from open positions to LinkedIn."
inputParameters:
- name: job_family
in: body
type: string
description: "The job family to promote."
- name: region
in: body
type: string
description: "The target region."
steps:
- name: get-open-positions
type: call
call: "workday.get-job-requisitions"
with:
job_family: "{{job_family}}"
region: "{{region}}"
- name: publish-post
type: call
call: "linkedin.create-post"
with:
text: "We are hiring {{get-open-positions.count}} {{job_family}} positions in {{region}}! Join the Chipotle team."
visibility: "PUBLIC"
- name: track-engagement
type: call
call: "hubspot.create-campaign"
with:
name: "LinkedIn Employer Brand: {{job_family}} - {{region}}"
type: "social"
post_id: "{{publish-post.post_id}}"
consumes:
- type: http
namespace: workday
baseUri: "https://chipotle.workday.com/api/recruiting/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: requisitions
path: "/jobRequisitions"
inputParameters:
- name: job_family
in: query
- name: region
in: query
operations:
- name: get-job-requisitions
method: GET
- type: http
namespace: linkedin
baseUri: "https://api.linkedin.com/v2"
authentication:
type: bearer
token: "$secrets.linkedin_token"
resources:
- name: posts
path: "/ugcPosts"
operations:
- name: create-post
method: POST
- type: http
namespace: hubspot
baseUri: "https://api.hubapi.com/marketing/v3"
authentication:
type: bearer
token: "$secrets.hubspot_token"
resources:
- name: campaigns
path: "/campaigns"
operations:
- name: create-campaign
method: POST
Publishes a job posting to LinkedIn for Chipotle restaurant and corporate positions, syncing from Workday requisition data.
naftiko: "0.5"
info:
label: "LinkedIn Job Posting Publisher"
description: "Publishes a job posting to LinkedIn for Chipotle restaurant and corporate positions, syncing from Workday requisition data."
tags:
- recruiting
- linkedin
- workday
- talent-acquisition
capability:
exposes:
- type: mcp
namespace: talent-recruitment
port: 8080
tools:
- name: publish-job-posting
description: "Fetch a Workday requisition and publish a job posting to LinkedIn."
inputParameters:
- name: requisition_id
in: body
type: string
description: "The Workday job requisition ID."
steps:
- name: get-requisition
type: call
call: "workday.get-requisition"
with:
requisition_id: "{{requisition_id}}"
- name: post-to-linkedin
type: call
call: "linkedin.create-job-posting"
with:
title: "{{get-requisition.job_title}}"
description: "{{get-requisition.job_description}}"
location: "{{get-requisition.location}}"
- name: notify-recruiter
type: call
call: "msteams.send-message"
with:
recipient_upn: "{{get-requisition.recruiter_email}}"
text: "Job '{{get-requisition.job_title}}' posted to LinkedIn. ID: {{post-to-linkedin.posting_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: requisitions
path: "/jobRequisitions/{{requisition_id}}"
inputParameters:
- name: requisition_id
in: path
operations:
- name: get-requisition
method: GET
- type: http
namespace: linkedin
baseUri: "https://api.linkedin.com/v2"
authentication:
type: bearer
token: "$secrets.linkedin_token"
resources:
- name: job-postings
path: "/simpleJobPostings"
operations:
- name: create-job-posting
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: messages
path: "/users/{{recipient_upn}}/sendMail"
inputParameters:
- name: recipient_upn
in: path
operations:
- name: send-message
method: POST
Retrieves Looker dashboard data for Chipotle operations and finance teams, returning key performance metrics and trend data.
naftiko: "0.5"
info:
label: "Looker Embedded Analytics Retrieval"
description: "Retrieves Looker dashboard data for Chipotle operations and finance teams, returning key performance metrics and trend data."
tags:
- analytics
- looker
- dashboards
- business-intelligence
capability:
exposes:
- type: mcp
namespace: bi-analytics
port: 8080
tools:
- name: get-looker-dashboard
description: "Retrieve Looker dashboard data."
inputParameters:
- name: dashboard_id
in: body
type: string
description: "The Looker dashboard ID."
call: "looker.get-dashboard"
with:
dashboard_id: "{{dashboard_id}}"
consumes:
- type: http
namespace: looker
baseUri: "https://chipotle.looker.com/api/4.0"
authentication:
type: bearer
token: "$secrets.looker_token"
resources:
- name: dashboards
path: "/dashboards/{{dashboard_id}}"
inputParameters:
- name: dashboard_id
in: path
operations:
- name: get-dashboard
method: GET
Enrolls new loyalty members by creating a profile in Salesforce, registering rewards in BigCommerce, and sending a welcome email through MailChimp.
naftiko: "0.5"
info:
label: "Loyalty Program Enrollment Pipeline"
description: "Enrolls new loyalty members by creating a profile in Salesforce, registering rewards in BigCommerce, and sending a welcome email through MailChimp."
tags:
- loyalty
- salesforce
- bigcommerce
- mailchimp
capability:
exposes:
- type: mcp
namespace: loyalty-enrollment
port: 8080
tools:
- name: enroll-loyalty-member
description: "Enroll a new member in the Chipotle Rewards loyalty program."
inputParameters:
- name: guest_email
in: body
type: string
description: "The guest email."
- name: guest_name
in: body
type: string
description: "The guest full name."
steps:
- name: create-profile
type: call
call: "salesforce.create-contact"
with:
email: "{{guest_email}}"
name: "{{guest_name}}"
record_type: "Loyalty_Member"
- name: register-rewards
type: call
call: "bigcommerce.create-customer"
with:
email: "{{guest_email}}"
first_name: "{{guest_name}}"
loyalty_tier: "starter"
- name: send-welcome
type: call
call: "mailchimp.send-transactional"
with:
template: "loyalty_welcome"
to_email: "{{guest_email}}"
merge_vars: "name={{guest_name}},member_id={{create-profile.contact_id}}"
consumes:
- type: http
namespace: salesforce
baseUri: "https://chipotle.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: contacts
path: "/sobjects/Contact"
operations:
- name: create-contact
method: POST
- type: http
namespace: bigcommerce
baseUri: "https://api.bigcommerce.com/stores/chipotle/v3"
authentication:
type: bearer
token: "$secrets.bigcommerce_token"
resources:
- name: customers
path: "/customers"
operations:
- name: create-customer
method: POST
- type: http
namespace: mailchimp
baseUri: "https://mandrillapp.com/api/1.0"
authentication:
type: api-key
key: "$secrets.mailchimp_api_key"
resources:
- name: transactional
path: "/messages/send-template"
operations:
- name: send-transactional
method: POST
Retrieves MailChimp email campaign metrics for Chipotle Rewards loyalty program communications including open rates, click rates, and reward redemptions.
naftiko: "0.5"
info:
label: "MailChimp Loyalty Campaign Performance"
description: "Retrieves MailChimp email campaign metrics for Chipotle Rewards loyalty program communications including open rates, click rates, and reward redemptions."
tags:
- marketing
- mailchimp
- loyalty
- email-campaigns
capability:
exposes:
- type: mcp
namespace: loyalty-marketing
port: 8080
tools:
- name: get-loyalty-campaign-metrics
description: "Retrieve MailChimp loyalty campaign performance."
inputParameters:
- name: campaign_id
in: body
type: string
description: "The MailChimp campaign ID."
call: "mailchimp.get-campaign-report"
with:
campaign_id: "{{campaign_id}}"
consumes:
- type: http
namespace: mailchimp
baseUri: "https://us1.api.mailchimp.com/3.0"
authentication:
type: basic
username: "anystring"
password: "$secrets.mailchimp_api_key"
resources:
- name: campaign-reports
path: "/reports/{{campaign_id}}"
inputParameters:
- name: campaign_id
in: path
operations:
- name: get-campaign-report
method: GET
Aggregates marketing campaign performance from Google Analytics, Instagram insights, and HubSpot, then generates a Power BI dashboard refresh.
naftiko: "0.5"
info:
label: "Marketing Campaign Performance Pipeline"
description: "Aggregates marketing campaign performance from Google Analytics, Instagram insights, and HubSpot, then generates a Power BI dashboard refresh."
tags:
- marketing
- google-analytics
- instagram
- hubspot
- power-bi
capability:
exposes:
- type: mcp
namespace: campaign-performance
port: 8080
tools:
- name: aggregate-campaign-performance
description: "Aggregate marketing campaign performance across platforms."
inputParameters:
- name: campaign_name
in: body
type: string
description: "The marketing campaign name."
- name: date_range
in: body
type: string
description: "The reporting date range."
steps:
- name: get-web-metrics
type: call
call: "google-analytics.get-report"
with:
view_id: "chipotle_web"
campaign: "{{campaign_name}}"
date_range: "{{date_range}}"
- name: get-social-metrics
type: call
call: "instagram.get-media-insights"
with:
hashtag: "{{campaign_name}}"
- name: get-email-metrics
type: call
call: "hubspot.get-campaign-stats"
with:
campaign_name: "{{campaign_name}}"
- name: refresh-dashboard
type: call
call: "powerbi.refresh-dataset"
with:
dataset_id: "marketing_campaigns"
consumes:
- type: http
namespace: google-analytics
baseUri: "https://analyticsdata.googleapis.com/v1beta"
authentication:
type: bearer
token: "$secrets.google_analytics_token"
resources:
- name: reports
path: "/properties/chipotle:runReport"
operations:
- name: get-report
method: POST
- type: http
namespace: instagram
baseUri: "https://graph.facebook.com/v18.0"
authentication:
type: bearer
token: "$secrets.instagram_token"
resources:
- name: insights
path: "/ig_hashtag_search"
inputParameters:
- name: hashtag
in: query
operations:
- name: get-media-insights
method: GET
- type: http
namespace: hubspot
baseUri: "https://api.hubapi.com/marketing/v3"
authentication:
type: bearer
token: "$secrets.hubspot_token"
resources:
- name: campaigns
path: "/campaigns"
inputParameters:
- name: campaign_name
in: query
operations:
- name: get-campaign-stats
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
Validates new menu item readiness by checking ingredient inventory in Oracle E-Business Suite, verifying recipe configuration in the POS system, and posting launch notification to Microsoft Teams.
naftiko: "0.5"
info:
label: "Menu Item Launch Readiness Pipeline"
description: "Validates new menu item readiness by checking ingredient inventory in Oracle E-Business Suite, verifying recipe configuration in the POS system, and posting launch notification to Microsoft Teams."
tags:
- menu-management
- oracle
- square
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: menu-launch
port: 8080
tools:
- name: validate-menu-launch
description: "Validate readiness for a new menu item launch across systems."
inputParameters:
- name: menu_item_id
in: body
type: string
description: "The new menu item identifier."
- name: launch_date
in: body
type: string
description: "The planned launch date."
steps:
- name: check-ingredients
type: call
call: "oracle-ebs.check-inventory"
with:
item_group: "{{menu_item_id}}"
- name: verify-pos-config
type: call
call: "square.get-catalog-item"
with:
item_id: "{{menu_item_id}}"
- name: notify-launch-team
type: call
call: "msteams.send-channel-message"
with:
team_id: "menu_innovation"
channel_id: "launches"
text: "Menu item {{menu_item_id}} launch readiness: Inventory={{check-ingredients.status}}, POS={{verify-pos-config.status}}. Target date: {{launch_date}}."
consumes:
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: inventory
path: "/inventory/check"
inputParameters:
- name: item_group
in: query
operations:
- name: check-inventory
method: GET
- type: http
namespace: square
baseUri: "https://connect.squareup.com/v2"
authentication:
type: bearer
token: "$secrets.square_token"
resources:
- name: catalog
path: "/catalog/object/{{item_id}}"
inputParameters:
- name: item_id
in: path
operations:
- name: get-catalog-item
method: GET
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Checks Microsoft Outlook calendar availability for Chipotle leadership scheduling, returning free/busy time slots for meeting coordination.
naftiko: "0.5"
info:
label: "Microsoft Outlook Calendar Availability"
description: "Checks Microsoft Outlook calendar availability for Chipotle leadership scheduling, returning free/busy time slots for meeting coordination."
tags:
- scheduling
- microsoft-outlook
- calendar
- productivity
capability:
exposes:
- type: mcp
namespace: calendar-ops
port: 8080
tools:
- name: check-calendar-availability
description: "Check Outlook calendar availability for a user."
inputParameters:
- name: user_email
in: body
type: string
description: "The user email address."
- name: date
in: body
type: string
description: "The date to check."
call: "outlook.get-availability"
with:
user: "{{user_email}}"
date: "{{date}}"
consumes:
- type: http
namespace: outlook
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: calendar
path: "/users/{{user}}/calendar/getSchedule"
inputParameters:
- name: user
in: path
operations:
- name: get-availability
method: POST
Triggers a Microsoft Power Automate flow for Chipotle business process automation.
naftiko: "0.5"
info:
label: "Microsoft Power Automate Flow Trigger"
description: "Triggers a Microsoft Power Automate flow for Chipotle business process automation."
tags:
- automation
- microsoft-power-automate
- business-process
capability:
exposes:
- type: mcp
namespace: process-automation
port: 8080
tools:
- name: trigger-power-automate-flow
description: "Trigger a Power Automate flow by flow ID."
inputParameters:
- name: flow_id
in: body
type: string
description: "The Power Automate flow ID."
- name: trigger_body
in: body
type: object
description: "The JSON body for the flow trigger."
call: "powerautomate.trigger-flow"
with:
flow_id: "{{flow_id}}"
body: "{{trigger_body}}"
consumes:
- type: http
namespace: powerautomate
baseUri: "https://api.flow.microsoft.com/providers/Microsoft.ProcessSimple/environments"
authentication:
type: bearer
token: "$secrets.powerautomate_token"
resources:
- name: flows
path: "/{{environment_id}}/flows/{{flow_id}}/triggers/manual/run"
inputParameters:
- name: flow_id
in: path
- name: environment_id
in: path
operations:
- name: trigger-flow
method: POST
Sends a formatted notification message to a specified Microsoft Teams channel for Chipotle operational communications.
naftiko: "0.5"
info:
label: "Microsoft Teams Channel Notification"
description: "Sends a formatted notification message to a specified Microsoft Teams channel for Chipotle operational communications."
tags:
- communications
- microsoft-teams
- notifications
capability:
exposes:
- type: mcp
namespace: team-comms
port: 8080
tools:
- name: send-teams-notification
description: "Send a notification 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 text to send."
call: "msteams.send-channel-message"
with:
team_id: "{{team_id}}"
channel_id: "{{channel_id}}"
text: "{{message}}"
consumes:
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Manages mobile app releases by triggering GitHub Actions CI builds, running quality checks in Dynatrace, and notifying stakeholders via Microsoft Teams.
naftiko: "0.5"
info:
label: "Mobile App Release Pipeline"
description: "Manages mobile app releases by triggering GitHub Actions CI builds, running quality checks in Dynatrace, and notifying stakeholders via Microsoft Teams."
tags:
- mobile
- github-actions
- dynatrace
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: mobile-release
port: 8080
tools:
- name: trigger-mobile-release
description: "Trigger and monitor a mobile app release through CI/CD pipeline."
inputParameters:
- name: version
in: body
type: string
description: "The app version to release."
- name: platform
in: body
type: string
description: "The mobile platform (ios/android)."
steps:
- name: trigger-build
type: call
call: "github.trigger-workflow"
with:
repo: "chipotle-mobile-app"
workflow: "release-{{platform}}.yml"
ref: "release/{{version}}"
- name: check-quality
type: call
call: "dynatrace.get-app-health"
with:
app_name: "chipotle-{{platform}}"
version: "{{version}}"
- name: notify-stakeholders
type: call
call: "msteams.send-channel-message"
with:
team_id: "mobile_team"
channel_id: "releases"
text: "Mobile release {{version}} ({{platform}}): Build={{trigger-build.status}}. Quality: {{check-quality.apdex_score}}. Crash rate: {{check-quality.crash_rate}}%."
consumes:
- type: http
namespace: github
baseUri: "https://api.github.com"
authentication:
type: bearer
token: "$secrets.github_token"
resources:
- name: workflows
path: "/repos/chipotle/{{repo}}/actions/workflows/{{workflow}}/dispatches"
inputParameters:
- name: repo
in: path
- name: workflow
in: path
operations:
- name: trigger-workflow
method: POST
- type: http
namespace: dynatrace
baseUri: "https://chipotle.live.dynatrace.com/api/v2"
authentication:
type: bearer
token: "$secrets.dynatrace_token"
resources:
- name: applications
path: "/entities"
inputParameters:
- name: app_name
in: query
- name: version
in: query
operations:
- name: get-app-health
method: GET
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Assigns training to new hires by fetching role details from Workday, creating Pluralsight learning paths, and tracking progress in Jira.
naftiko: "0.5"
info:
label: "New Hire Training Assignment Pipeline"
description: "Assigns training to new hires by fetching role details from Workday, creating Pluralsight learning paths, and tracking progress in Jira."
tags:
- training
- workday
- pluralsight
- jira
capability:
exposes:
- type: mcp
namespace: training-assignment
port: 8080
tools:
- name: assign-new-hire-training
description: "Assign training modules to a new hire based on their role."
inputParameters:
- name: employee_id
in: body
type: string
description: "The new hire employee ID."
- name: role
in: body
type: string
description: "The employee role."
steps:
- name: get-role-details
type: call
call: "workday.get-job-profile"
with:
employee_id: "{{employee_id}}"
- name: assign-courses
type: call
call: "pluralsight.assign-channel"
with:
user_email: "{{get-role-details.email}}"
channel_id: "{{role}}_onboarding"
- name: create-tracking
type: call
call: "jira.create-issue"
with:
project: "TRAIN"
summary: "Training: {{get-role-details.name}} - {{role}}"
description: "Assigned {{assign-courses.course_count}} courses. Target completion: 30 days."
issue_type: "Task"
consumes:
- type: http
namespace: workday
baseUri: "https://chipotle.workday.com/api/staffing/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: profiles
path: "/workers/{{employee_id}}/jobProfile"
inputParameters:
- name: employee_id
in: path
operations:
- name: get-job-profile
method: GET
- type: http
namespace: pluralsight
baseUri: "https://api.pluralsight.com/api/v1"
authentication:
type: bearer
token: "$secrets.pluralsight_token"
resources:
- name: channels
path: "/channels/assign"
operations:
- name: assign-channel
method: POST
- type: http
namespace: jira
baseUri: "https://chipotle.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: issues
path: "/issue"
operations:
- name: create-issue
method: POST
Queries New Relic for digital ordering system alert conditions and active violations for Chipotle's online and mobile platforms.
naftiko: "0.5"
info:
label: "New Relic Digital Ordering Alerting"
description: "Queries New Relic for digital ordering system alert conditions and active violations for Chipotle's online and mobile platforms."
tags:
- monitoring
- new-relic
- alerting
- digital-ordering
capability:
exposes:
- type: mcp
namespace: alert-monitoring
port: 8080
tools:
- name: get-active-alerts
description: "Retrieve New Relic active alert violations for digital ordering systems."
inputParameters:
- name: policy_id
in: body
type: string
description: "The New Relic alert policy ID."
call: "newrelic.get-violations"
with:
policy_id: "{{policy_id}}"
only_open: "true"
consumes:
- type: http
namespace: newrelic
baseUri: "https://api.newrelic.com/v2"
authentication:
type: apikey
key: "$secrets.newrelic_api_key"
resources:
- name: violations
path: "/alerts_violations.json"
inputParameters:
- name: policy_id
in: query
- name: only_open
in: query
operations:
- name: get-violations
method: GET
When a digital order is placed, validates inventory in Oracle, updates the order status in Salesforce, sends a preparation notification to the restaurant team via Microsoft Teams, and confirms with the customer via MailChimp.
naftiko: "0.5"
info:
label: "Online Order Fulfillment Orchestrator"
description: "When a digital order is placed, validates inventory in Oracle, updates the order status in Salesforce, sends a preparation notification to the restaurant team via Microsoft Teams, and confirms with the customer via MailChimp."
tags:
- digital-ordering
- oracle
- salesforce
- microsoft-teams
- mailchimp
- order-management
capability:
exposes:
- type: mcp
namespace: order-fulfillment
port: 8080
tools:
- name: fulfill-digital-order
description: "Orchestrate a digital order through inventory check, status update, team notification, and customer confirmation."
inputParameters:
- name: order_id
in: body
type: string
description: "The digital order ID."
- name: restaurant_number
in: body
type: string
description: "The Chipotle restaurant number."
steps:
- name: check-inventory
type: call
call: "oracle-ebs.get-inventory"
with:
org_id: "{{restaurant_number}}"
item_number: "ORDER_{{order_id}}"
- name: update-order-status
type: call
call: "salesforce.update-order"
with:
order_id: "{{order_id}}"
status: "IN_PREPARATION"
- name: notify-restaurant
type: call
call: "msteams.send-channel-message"
with:
team_id: "restaurant_{{restaurant_number}}"
channel_id: "digital_orders"
text: "New digital order {{order_id}} ready for preparation. Items verified."
- name: confirm-customer
type: call
call: "mailchimp.send-transactional"
with:
template_name: "order_confirmation"
to_email: "{{update-order-status.customer_email}}"
merge_vars: "{order_id: '{{order_id}}', estimated_time: '15 minutes'}"
consumes:
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: inventory
path: "/inventoryBalances"
inputParameters:
- name: org_id
in: query
- name: item_number
in: query
operations:
- name: get-inventory
method: GET
- type: http
namespace: salesforce
baseUri: "https://chipotle.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: orders
path: "/sobjects/Order/{{order_id}}"
inputParameters:
- name: order_id
in: path
operations:
- name: update-order
method: PATCH
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
- type: http
namespace: mailchimp
baseUri: "https://us1.api.mailchimp.com/3.0"
authentication:
type: basic
username: "anystring"
password: "$secrets.mailchimp_api_key"
resources:
- name: transactional
path: "/messages/send-template"
operations:
- name: send-transactional
method: POST
Retrieves financial summary reports from Oracle Cloud ERP for Chipotle corporate finance review, returning revenue, cost, and margin data.
naftiko: "0.5"
info:
label: "Oracle Cloud ERP Financial Report"
description: "Retrieves financial summary reports from Oracle Cloud ERP for Chipotle corporate finance review, returning revenue, cost, and margin data."
tags:
- finance
- oracle-cloud
- erp
- reporting
capability:
exposes:
- type: mcp
namespace: erp-finance
port: 8080
tools:
- name: get-financial-report
description: "Retrieve a financial summary report from Oracle Cloud ERP."
inputParameters:
- name: fiscal_period
in: body
type: string
description: "The fiscal period to query."
call: "oracle-cloud.get-financial-summary"
with:
fiscal_period: "{{fiscal_period}}"
consumes:
- type: http
namespace: oracle-cloud
baseUri: "https://chipotle.oraclecloud.com/fscmRestApi/resources/v1"
authentication:
type: bearer
token: "$secrets.oracle_cloud_token"
resources:
- name: financial-summaries
path: "/financialSummaries"
inputParameters:
- name: fiscal_period
in: query
operations:
- name: get-financial-summary
method: GET
Queries Oracle E-Business Suite for current ingredient inventory levels at Chipotle distribution centers, returning item quantities and reorder status.
naftiko: "0.5"
info:
label: "Oracle E-Business Suite Inventory Check"
description: "Queries Oracle E-Business Suite for current ingredient inventory levels at Chipotle distribution centers, returning item quantities and reorder status."
tags:
- inventory
- oracle
- supply-chain
- distribution
capability:
exposes:
- type: mcp
namespace: inventory-management
port: 8080
tools:
- name: check-inventory-levels
description: "Check ingredient inventory levels at a distribution center."
inputParameters:
- name: org_id
in: body
type: string
description: "The Oracle organization ID."
- name: item_number
in: body
type: string
description: "The inventory item number."
call: "oracle-ebs.get-inventory"
with:
org_id: "{{org_id}}"
item_number: "{{item_number}}"
consumes:
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: inventory
path: "/inventoryBalances"
inputParameters:
- name: org_id
in: query
- name: item_number
in: query
operations:
- name: get-inventory
method: GET
Retrieves active security alerts from Palo Alto Networks for Chipotle's network perimeter and restaurant connectivity.
naftiko: "0.5"
info:
label: "Palo Alto Networks Security Alert Check"
description: "Retrieves active security alerts from Palo Alto Networks for Chipotle's network perimeter and restaurant connectivity."
tags:
- security
- palo-alto-networks
- network
- threat-detection
capability:
exposes:
- type: mcp
namespace: network-security
port: 8080
tools:
- name: get-security-alerts
description: "Retrieve active security alerts from Palo Alto Networks."
inputParameters:
- name: severity
in: body
type: string
description: "Alert severity filter (high, medium, low)."
call: "paloalto.get-alerts"
with:
severity: "{{severity}}"
consumes:
- type: http
namespace: paloalto
baseUri: "https://chipotle-fw.paloaltonetworks.com/restapi/v10.2"
authentication:
type: apikey
key: "$secrets.paloalto_api_key"
resources:
- name: alerts
path: "/Incidents"
inputParameters:
- name: severity
in: query
operations:
- name: get-alerts
method: GET
Retrieves Paradox AI recruiting chatbot analytics for Chipotle hourly hiring campaigns, returning conversation completion rates and application conversions.
naftiko: "0.5"
info:
label: "Paradox Recruiting Chatbot Analytics"
description: "Retrieves Paradox AI recruiting chatbot analytics for Chipotle hourly hiring campaigns, returning conversation completion rates and application conversions."
tags:
- recruiting
- paradox
- chatbot
- talent-acquisition
capability:
exposes:
- type: mcp
namespace: recruiting-analytics
port: 8080
tools:
- name: get-chatbot-analytics
description: "Retrieve Paradox recruiting chatbot performance analytics."
inputParameters:
- name: campaign_id
in: body
type: string
description: "The recruiting campaign ID."
call: "paradox.get-campaign-analytics"
with:
campaign_id: "{{campaign_id}}"
consumes:
- type: http
namespace: paradox
baseUri: "https://api.paradox.ai/v1"
authentication:
type: bearer
token: "$secrets.paradox_token"
resources:
- name: analytics
path: "/campaigns/{{campaign_id}}/analytics"
inputParameters:
- name: campaign_id
in: path
operations:
- name: get-campaign-analytics
method: GET
Assigns Pluralsight training courses to Chipotle team members for food safety certification and professional development.
naftiko: "0.5"
info:
label: "Pluralsight Training Assignment"
description: "Assigns Pluralsight training courses to Chipotle team members for food safety certification and professional development."
tags:
- training
- pluralsight
- learning
- food-safety
capability:
exposes:
- type: mcp
namespace: learning-mgmt
port: 8080
tools:
- name: assign-training-course
description: "Assign a Pluralsight training course to a team member."
inputParameters:
- name: user_email
in: body
type: string
description: "The team member's email address."
- name: course_id
in: body
type: string
description: "The Pluralsight course ID."
call: "pluralsight.assign-course"
with:
email: "{{user_email}}"
course_id: "{{course_id}}"
consumes:
- type: http
namespace: pluralsight
baseUri: "https://api.pluralsight.com/api/v1"
authentication:
type: bearer
token: "$secrets.pluralsight_token"
resources:
- name: assignments
path: "/assignments"
operations:
- name: assign-course
method: POST
Triggers a Power BI dataset refresh for Chipotle operational dashboards and returns the refresh status.
naftiko: "0.5"
info:
label: "Power BI Dashboard Refresh"
description: "Triggers a Power BI dataset refresh for Chipotle operational dashboards and returns the refresh status."
tags:
- analytics
- power-bi
- dashboards
- reporting
capability:
exposes:
- type: mcp
namespace: bi-dashboards
port: 8080
tools:
- name: refresh-power-bi-dataset
description: "Trigger a Power BI dataset refresh."
inputParameters:
- name: group_id
in: body
type: string
description: "The Power BI workspace (group) ID."
- name: dataset_id
in: body
type: string
description: "The Power BI dataset ID."
call: "powerbi.refresh-dataset"
with:
group_id: "{{group_id}}"
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: "/groups/{{group_id}}/datasets/{{dataset_id}}/refreshes"
inputParameters:
- name: group_id
in: path
- name: dataset_id
in: path
operations:
- name: refresh-dataset
method: POST
Triggers a Qlik Sense app reload for Chipotle financial reporting and returns the task status.
naftiko: "0.5"
info:
label: "Qlik Sense Financial Report Generator"
description: "Triggers a Qlik Sense app reload for Chipotle financial reporting and returns the task status."
tags:
- analytics
- qlik-sense
- financial-reporting
capability:
exposes:
- type: mcp
namespace: financial-analytics
port: 8080
tools:
- name: reload-financial-report
description: "Trigger a Qlik Sense app reload for financial reports."
inputParameters:
- name: app_id
in: body
type: string
description: "The Qlik Sense app ID."
call: "qlik.reload-app"
with:
app_id: "{{app_id}}"
consumes:
- type: http
namespace: qlik
baseUri: "https://chipotle.us.qlikcloud.com/api/v1"
authentication:
type: bearer
token: "$secrets.qlik_token"
resources:
- name: reloads
path: "/reloads"
operations:
- name: reload-app
method: POST
Generates quarterly business review materials by pulling financial data from Oracle Cloud, sales metrics from Snowflake, and creating a presentation summary in Confluence.
naftiko: "0.5"
info:
label: "Quarterly Business Review Pipeline"
description: "Generates quarterly business review materials by pulling financial data from Oracle Cloud, sales metrics from Snowflake, and creating a presentation summary in Confluence."
tags:
- finance
- oracle-cloud
- snowflake
- confluence
- reporting
capability:
exposes:
- type: mcp
namespace: qbr-generation
port: 8080
tools:
- name: generate-qbr-materials
description: "Generate quarterly business review materials from multiple data sources."
inputParameters:
- name: quarter
in: body
type: string
description: "The fiscal quarter."
- name: region
in: body
type: string
description: "The business region."
steps:
- name: get-financials
type: call
call: "oracle-cloud.get-financial-summary"
with:
fiscal_period: "{{quarter}}"
region: "{{region}}"
- name: get-sales-metrics
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT * FROM quarterly_sales_summary WHERE quarter = '{{quarter}}' AND region = '{{region}}'"
- name: create-review-page
type: call
call: "confluence.create-page"
with:
space_key: "BIZ"
title: "QBR {{quarter}} - {{region}}"
body: "Revenue: ${{get-financials.revenue}}. Comp sales: {{get-sales-metrics.comp_growth}}%. Transaction count: {{get-sales-metrics.transaction_count}}."
consumes:
- type: http
namespace: oracle-cloud
baseUri: "https://chipotle.oraclecloud.com/fscmRestApi/resources/v1"
authentication:
type: bearer
token: "$secrets.oracle_cloud_token"
resources:
- name: financials
path: "/financialSummaries"
inputParameters:
- name: fiscal_period
in: query
- name: region
in: query
operations:
- name: get-financial-summary
method: GET
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: confluence
baseUri: "https://chipotle.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: pages
path: "/content"
operations:
- name: create-page
method: POST
Evaluates potential restaurant sites by pulling demographic data from Snowflake, checking traffic patterns via Google Maps, and logging results in Salesforce.
naftiko: "0.5"
info:
label: "Real Estate Site Evaluation Pipeline"
description: "Evaluates potential restaurant sites by pulling demographic data from Snowflake, checking traffic patterns via Google Maps, and logging results in Salesforce."
tags:
- real-estate
- snowflake
- google-maps
- salesforce
capability:
exposes:
- type: mcp
namespace: site-evaluation
port: 8080
tools:
- name: evaluate-restaurant-site
description: "Evaluate a potential new restaurant site across multiple data sources."
inputParameters:
- name: site_address
in: body
type: string
description: "The potential site address."
- name: market_id
in: body
type: string
description: "The target market identifier."
steps:
- name: get-demographics
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT * FROM market_demographics WHERE market_id = '{{market_id}}'"
- name: check-traffic
type: call
call: "google-maps.get-place-details"
with:
address: "{{site_address}}"
- name: log-evaluation
type: call
call: "salesforce.create-opportunity"
with:
name: "New Site: {{site_address}}"
stage: "Evaluation"
description: "Demographics: pop={{get-demographics.population}}, income={{get-demographics.median_income}}. Traffic score: {{check-traffic.traffic_score}}."
consumes:
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: google-maps
baseUri: "https://maps.googleapis.com/maps/api"
authentication:
type: api-key
key: "$secrets.google_maps_key"
resources:
- name: places
path: "/place/details/json"
inputParameters:
- name: address
in: query
operations:
- name: get-place-details
method: GET
- type: http
namespace: salesforce
baseUri: "https://chipotle.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: opportunities
path: "/sobjects/Opportunity"
operations:
- name: create-opportunity
method: POST
Generates regulatory compliance reports by aggregating data from Oracle E-Business Suite, validating against standards in ServiceNow, and publishing to Box.
naftiko: "0.5"
info:
label: "Regulatory Compliance Reporting Pipeline"
description: "Generates regulatory compliance reports by aggregating data from Oracle E-Business Suite, validating against standards in ServiceNow, and publishing to Box."
tags:
- compliance
- oracle
- servicenow
- box
- regulatory
capability:
exposes:
- type: mcp
namespace: regulatory-reporting
port: 8080
tools:
- name: generate-compliance-report
description: "Generate a regulatory compliance report from multiple sources."
inputParameters:
- name: report_type
in: body
type: string
description: "The compliance report type."
- name: period
in: body
type: string
description: "The reporting period."
steps:
- name: get-compliance-data
type: call
call: "oracle-ebs.get-compliance-records"
with:
type: "{{report_type}}"
period: "{{period}}"
- name: validate-standards
type: call
call: "servicenow.check-compliance"
with:
standard: "{{report_type}}"
records_count: "{{get-compliance-data.record_count}}"
- name: publish-report
type: call
call: "box.upload-file"
with:
folder_id: "compliance_reports"
filename: "{{report_type}}_{{period}}_report.pdf"
content: "Records: {{get-compliance-data.record_count}}. Violations: {{validate-standards.violation_count}}. Score: {{validate-standards.compliance_score}}%."
consumes:
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: compliance
path: "/complianceRecords"
inputParameters:
- name: type
in: query
- name: period
in: query
operations:
- name: get-compliance-records
method: GET
- type: http
namespace: servicenow
baseUri: "https://chipotle.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: compliance
path: "/table/compliance_check"
operations:
- name: check-compliance
method: POST
- type: http
namespace: box
baseUri: "https://upload.box.com/api/2.0"
authentication:
type: bearer
token: "$secrets.box_token"
resources:
- name: files
path: "/files/content"
operations:
- name: upload-file
method: POST
Conducts restaurant audits by pulling checklist data from Google Sheets, comparing against compliance standards in ServiceNow, and filing results in Box.
naftiko: "0.5"
info:
label: "Restaurant Audit Checklist Pipeline"
description: "Conducts restaurant audits by pulling checklist data from Google Sheets, comparing against compliance standards in ServiceNow, and filing results in Box."
tags:
- compliance
- google-sheets
- servicenow
- box
capability:
exposes:
- type: mcp
namespace: restaurant-audit
port: 8080
tools:
- name: conduct-restaurant-audit
description: "Conduct a restaurant audit with checklist verification and filing."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
- name: audit_date
in: body
type: string
description: "The audit date."
steps:
- name: get-checklist
type: call
call: "google-sheets.get-values"
with:
spreadsheet_id: "restaurant_audits"
range: "{{restaurant_number}}!A:Z"
- name: check-compliance
type: call
call: "servicenow.get-compliance-standards"
with:
category: "restaurant_operations"
- name: file-results
type: call
call: "box.upload-file"
with:
folder_id: "audit_results"
filename: "audit_{{restaurant_number}}_{{audit_date}}.json"
content: "checklist_items={{get-checklist.row_count}}, compliance_score={{check-compliance.score}}"
consumes:
- type: http
namespace: google-sheets
baseUri: "https://sheets.googleapis.com/v4"
authentication:
type: bearer
token: "$secrets.google_sheets_token"
resources:
- name: values
path: "/spreadsheets/{{spreadsheet_id}}/values/{{range}}"
inputParameters:
- name: spreadsheet_id
in: path
- name: range
in: path
operations:
- name: get-values
method: GET
- type: http
namespace: servicenow
baseUri: "https://chipotle.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: compliance
path: "/table/compliance_standard"
inputParameters:
- name: category
in: query
operations:
- name: get-compliance-standards
method: GET
- type: http
namespace: box
baseUri: "https://upload.box.com/api/2.0"
authentication:
type: bearer
token: "$secrets.box_token"
resources:
- name: files
path: "/files/content"
operations:
- name: upload-file
method: POST
Plans restaurant capacity by analyzing traffic patterns in Google Analytics, cross-referencing with staffing data in Workday, and generating reports in Looker.
naftiko: "0.5"
info:
label: "Restaurant Capacity Planning Pipeline"
description: "Plans restaurant capacity by analyzing traffic patterns in Google Analytics, cross-referencing with staffing data in Workday, and generating reports in Looker."
tags:
- operations
- google-analytics
- workday
- looker
- capacity-planning
capability:
exposes:
- type: mcp
namespace: capacity-planning
port: 8080
tools:
- name: plan-restaurant-capacity
description: "Plan restaurant capacity based on traffic patterns and staffing."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
- name: target_date
in: body
type: string
description: "The target planning date."
steps:
- name: get-traffic-patterns
type: call
call: "google-analytics.get-report"
with:
view_id: "chipotle_locations"
restaurant: "{{restaurant_number}}"
date: "{{target_date}}"
- name: get-staff-capacity
type: call
call: "workday.get-worker-availability"
with:
location: "{{restaurant_number}}"
week: "{{target_date}}"
- name: generate-report
type: call
call: "looker.run-look"
with:
look_id: "capacity_planning"
filters: "restaurant={{restaurant_number}},date={{target_date}}"
consumes:
- type: http
namespace: google-analytics
baseUri: "https://analyticsdata.googleapis.com/v1beta"
authentication:
type: bearer
token: "$secrets.google_analytics_token"
resources:
- name: reports
path: "/properties/chipotle:runReport"
operations:
- name: get-report
method: POST
- type: http
namespace: workday
baseUri: "https://chipotle.workday.com/api/staffing/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: availability
path: "/workers/availability"
inputParameters:
- name: location
in: query
- name: week
in: query
operations:
- name: get-worker-availability
method: GET
- type: http
namespace: looker
baseUri: "https://chipotle.looker.com/api/4.0"
authentication:
type: bearer
token: "$secrets.looker_token"
resources:
- name: looks
path: "/looks/{{look_id}}/run/json"
inputParameters:
- name: look_id
in: path
operations:
- name: run-look
method: GET
On new hire creation in Workday, opens a ServiceNow onboarding ticket, provisions a SharePoint folder for training docs, and sends a Microsoft Teams welcome message to the new crew member.
naftiko: "0.5"
info:
label: "Restaurant Employee Onboarding Orchestrator"
description: "On new hire creation in Workday, opens a ServiceNow onboarding ticket, provisions a SharePoint folder for training docs, and sends a Microsoft Teams welcome message to the new crew member."
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 across ServiceNow, SharePoint, and Microsoft Teams."
inputParameters:
- name: workday_employee_id
in: body
type: string
description: "The Workday worker ID for the new hire."
- name: start_date
in: body
type: string
description: "The employee start date in YYYY-MM-DD format."
- name: restaurant_number
in: body
type: string
description: "The Chipotle restaurant number."
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: "Restaurant_Onboarding"
description: "Onboarding for {{get-employee.full_name}} starting {{start_date}} at restaurant {{restaurant_number}}."
- name: provision-folder
type: call
call: "sharepoint.create-folder"
with:
site_id: "chipotle_onboarding_site"
folder_path: "OnboardingDocs/{{restaurant_number}}/{{get-employee.full_name}}_{{start_date}}"
- name: send-welcome
type: call
call: "msteams.send-message"
with:
recipient_upn: "{{get-employee.work_email}}"
text: "Welcome to Chipotle, {{get-employee.first_name}}! Your onboarding ticket is {{open-ticket.number}}. Training docs are at {{provision-folder.url}}."
consumes:
- type: http
namespace: workday
baseUri: "https://wd2-impl-services1.workday.com/ccx/api/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: workers
path: "/workers/{{worker_id}}"
inputParameters:
- name: worker_id
in: path
operations:
- name: get-worker
method: GET
- type: http
namespace: servicenow
baseUri: "https://chipotle.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: incidents
path: "/table/incident"
operations:
- name: create-incident
method: POST
- type: http
namespace: sharepoint
baseUri: "https://graph.microsoft.com/v1.0/sites"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: drive-items
path: "/{{site_id}}/drive/root:/{{folder_path}}"
inputParameters:
- name: site_id
in: path
- name: folder_path
in: path
operations:
- name: create-folder
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: messages
path: "/users/{{recipient_upn}}/sendMail"
inputParameters:
- name: recipient_upn
in: path
operations:
- name: send-message
method: POST
Orchestrates the readiness check for a new Chipotle restaurant by verifying equipment in Oracle, confirming staffing in Workday, creating a go-live checklist in Jira, and alerting leadership via Microsoft Teams.
naftiko: "0.5"
info:
label: "Restaurant Opening Readiness Pipeline"
description: "Orchestrates the readiness check for a new Chipotle restaurant by verifying equipment in Oracle, confirming staffing in Workday, creating a go-live checklist in Jira, and alerting leadership via Microsoft Teams."
tags:
- restaurant-operations
- oracle
- workday
- jira
- microsoft-teams
- new-store
capability:
exposes:
- type: mcp
namespace: store-readiness
port: 8080
tools:
- name: check-opening-readiness
description: "Run the full readiness check for a new Chipotle restaurant opening."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The new restaurant number."
- name: opening_date
in: body
type: string
description: "The planned opening date."
steps:
- name: check-equipment
type: call
call: "oracle-ebs.get-inventory"
with:
org_id: "{{restaurant_number}}"
item_number: "OPENING_EQUIPMENT_KIT"
- name: check-staffing
type: call
call: "workday.get-headcount"
with:
location_id: "{{restaurant_number}}"
- name: create-checklist
type: call
call: "jira.create-issue"
with:
project: "NEW_STORE"
issuetype: "Task"
summary: "Go-Live Checklist: Restaurant {{restaurant_number}} opening {{opening_date}}"
description: "Equipment: {{check-equipment.quantity_on_hand}} units. Staff: {{check-staffing.headcount}}."
- name: notify-leadership
type: call
call: "msteams.send-channel-message"
with:
team_id: "new_restaurant_openings"
channel_id: "readiness"
text: "Restaurant {{restaurant_number}} opening {{opening_date}}: Equipment ({{check-equipment.quantity_on_hand}}), Staff ({{check-staffing.headcount}}). Jira: {{create-checklist.key}}."
consumes:
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: inventory
path: "/inventoryBalances"
inputParameters:
- name: org_id
in: query
- name: item_number
in: query
operations:
- name: get-inventory
method: GET
- type: http
namespace: workday
baseUri: "https://wd2-impl-services1.workday.com/ccx/api/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: headcount
path: "/workers"
inputParameters:
- name: location_id
in: query
operations:
- name: get-headcount
method: GET
- type: http
namespace: jira
baseUri: "https://chipotle.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: send-channel-message
method: POST
Tracks restaurant renovation projects by pulling milestones from Microsoft Project, updating budget in Oracle Cloud, and reporting status to Confluence.
naftiko: "0.5"
info:
label: "Restaurant Renovation Tracking Pipeline"
description: "Tracks restaurant renovation projects by pulling milestones from Microsoft Project, updating budget in Oracle Cloud, and reporting status to Confluence."
tags:
- facilities
- microsoft-project
- oracle-cloud
- confluence
capability:
exposes:
- type: mcp
namespace: renovation-tracking
port: 8080
tools:
- name: track-renovation-project
description: "Track a restaurant renovation project across planning and finance systems."
inputParameters:
- name: project_id
in: body
type: string
description: "The renovation project ID."
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
steps:
- name: get-milestones
type: call
call: "ms-project.get-tasks"
with:
project_id: "{{project_id}}"
- name: get-budget-status
type: call
call: "oracle-cloud.get-project-budget"
with:
project_id: "{{project_id}}"
- name: update-status-page
type: call
call: "confluence.update-page"
with:
page_id: "renovation_{{restaurant_number}}"
body: "Renovation {{project_id}}: {{get-milestones.completed}}/{{get-milestones.total}} milestones. Budget: ${{get-budget-status.spent}}/${{get-budget-status.allocated}} ({{get-budget-status.pct_used}}%)."
consumes:
- type: http
namespace: ms-project
baseUri: "https://graph.microsoft.com/v1.0/planner"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: tasks
path: "/plans/{{project_id}}/tasks"
inputParameters:
- name: project_id
in: path
operations:
- name: get-tasks
method: GET
- type: http
namespace: oracle-cloud
baseUri: "https://chipotle.oraclecloud.com/fscmRestApi/resources/v1"
authentication:
type: bearer
token: "$secrets.oracle_cloud_token"
resources:
- name: budgets
path: "/projectBudgets"
inputParameters:
- name: project_id
in: query
operations:
- name: get-project-budget
method: GET
- type: http
namespace: confluence
baseUri: "https://chipotle.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: pages
path: "/content/{{page_id}}"
inputParameters:
- name: page_id
in: path
operations:
- name: update-page
method: PUT
Forecasts restaurant revenue by pulling historical data from Snowflake, running predictions in Azure Machine Learning, and updating forecasts in Google Sheets.
naftiko: "0.5"
info:
label: "Revenue Forecasting Pipeline"
description: "Forecasts restaurant revenue by pulling historical data from Snowflake, running predictions in Azure Machine Learning, and updating forecasts in Google Sheets."
tags:
- finance
- snowflake
- azure-machine-learning
- google-sheets
- forecasting
capability:
exposes:
- type: mcp
namespace: revenue-forecasting
port: 8080
tools:
- name: forecast-revenue
description: "Generate revenue forecasts for a restaurant using ML predictions."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
- name: forecast_months
in: body
type: string
description: "Number of months to forecast."
steps:
- name: get-historical
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT * FROM revenue_history WHERE restaurant = '{{restaurant_number}}' ORDER BY month DESC LIMIT 24"
- name: run-forecast
type: call
call: "azure-ml.invoke-endpoint"
with:
endpoint: "revenue_forecaster"
data: "{restaurant: '{{restaurant_number}}', months: {{forecast_months}}}"
- name: update-sheet
type: call
call: "google-sheets.update-values"
with:
spreadsheet_id: "revenue_forecasts"
range: "{{restaurant_number}}!A1"
values: "{{run-forecast.monthly_predictions}}"
consumes:
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: azure-ml
baseUri: "https://chipotle-ml.azureml.net/score"
authentication:
type: bearer
token: "$secrets.azure_ml_token"
resources:
- name: endpoints
path: "/{{endpoint}}"
inputParameters:
- name: endpoint
in: path
operations:
- name: invoke-endpoint
method: POST
- type: http
namespace: google-sheets
baseUri: "https://sheets.googleapis.com/v4"
authentication:
type: bearer
token: "$secrets.google_sheets_token"
resources:
- name: values
path: "/spreadsheets/{{spreadsheet_id}}/values/{{range}}"
inputParameters:
- name: spreadsheet_id
in: path
- name: range
in: path
operations:
- name: update-values
method: PUT
Retrieves a Salesforce customer service case by case number, returning status, priority, subject, and resolution details for Chipotle customer experience management.
naftiko: "0.5"
info:
label: "Salesforce Customer Case Lookup"
description: "Retrieves a Salesforce customer service case by case number, returning status, priority, subject, and resolution details for Chipotle customer experience management."
tags:
- crm
- salesforce
- customer-service
- case-management
capability:
exposes:
- type: mcp
namespace: crm-cases
port: 8080
tools:
- name: get-customer-case
description: "Retrieve a Salesforce case by case number."
inputParameters:
- name: case_number
in: body
type: string
description: "The Salesforce case number."
call: "salesforce.query-case"
with:
q: "SELECT Id, CaseNumber, Status, Priority, Subject, Description FROM Case WHERE CaseNumber = '{{case_number}}'"
consumes:
- type: http
namespace: salesforce
baseUri: "https://chipotle.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: query
path: "/query"
inputParameters:
- name: q
in: query
operations:
- name: query-case
method: GET
Retrieves cost center reports from SAP BW for Chipotle financial planning, returning budget allocation, actual spend, and variance data.
naftiko: "0.5"
info:
label: "SAP BW Cost Center Report"
description: "Retrieves cost center reports from SAP BW for Chipotle financial planning, returning budget allocation, actual spend, and variance data."
tags:
- finance
- sap-bw
- cost-management
- reporting
capability:
exposes:
- type: mcp
namespace: cost-center
port: 8080
tools:
- name: get-cost-center-report
description: "Retrieve a cost center report from SAP BW."
inputParameters:
- name: cost_center_id
in: body
type: string
description: "The SAP cost center ID."
- name: fiscal_year
in: body
type: string
description: "The fiscal year."
call: "sap-bw.get-cost-report"
with:
cost_center: "{{cost_center_id}}"
year: "{{fiscal_year}}"
consumes:
- type: http
namespace: sap-bw
baseUri: "https://chipotle-bw.sap.com/sap/bw/odata/v1"
authentication:
type: basic
username: "$secrets.sap_bw_user"
password: "$secrets.sap_bw_password"
resources:
- name: cost-reports
path: "/CostCenterReports"
inputParameters:
- name: cost_center
in: query
- name: year
in: query
operations:
- name: get-cost-report
method: GET
Looks up a SAP purchase order by number and returns header status, vendor, total value, and open line items for Chipotle supply chain operations.
naftiko: "0.5"
info:
label: "SAP Purchase Order Status"
description: "Looks up a SAP purchase order by number and returns header status, vendor, total value, and open line items for Chipotle supply chain operations."
tags:
- procurement
- erp
- sap
- purchase-order
- supply-chain
capability:
exposes:
- type: mcp
namespace: erp-procurement
port: 8080
tools:
- name: get-purchase-order
description: "Look up a SAP purchase order by PO number. Returns header status, vendor name, total value, currency, and delivery date."
inputParameters:
- name: po_number
in: body
type: string
description: "The SAP purchase order number (10-digit)."
call: "sap.get-po"
with:
po_number: "{{po_number}}"
outputParameters:
- name: status
type: string
mapping: "$.d.OverallStatus"
- name: vendor
type: string
mapping: "$.d.Supplier.CompanyName"
- name: total_value
type: string
mapping: "$.d.TotalAmount"
consumes:
- type: http
namespace: sap
baseUri: "https://chipotle-s4.sap.com/sap/opu/odata/sap/MM_PUR_PO_MAINT_V2_SRV"
authentication:
type: basic
username: "$secrets.sap_user"
password: "$secrets.sap_password"
resources:
- name: purchase-orders
path: "/A_PurchaseOrder('{{po_number}}')"
inputParameters:
- name: po_number
in: path
operations:
- name: get-po
method: GET
Responds to security incidents by correlating alerts from Palo Alto Networks, creating incidents in ServiceNow, and escalating critical findings to Microsoft Teams.
naftiko: "0.5"
info:
label: "Security Incident Response Pipeline"
description: "Responds to security incidents by correlating alerts from Palo Alto Networks, creating incidents in ServiceNow, and escalating critical findings to Microsoft Teams."
tags:
- security
- palo-alto-networks
- servicenow
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: security-response
port: 8080
tools:
- name: respond-security-incident
description: "Respond to a security incident across detection and ticketing systems."
inputParameters:
- name: alert_id
in: body
type: string
description: "The Palo Alto Networks alert ID."
steps:
- name: get-alert-details
type: call
call: "paloalto.get-alert"
with:
alert_id: "{{alert_id}}"
- name: create-incident
type: call
call: "servicenow.create-incident"
with:
short_description: "Security Alert: {{get-alert-details.threat_name}}"
urgency: "1"
impact: "1"
category: "security"
description: "Source: {{get-alert-details.source_ip}}, Threat: {{get-alert-details.threat_name}}, Severity: {{get-alert-details.severity}}"
- name: escalate-team
type: call
call: "msteams.send-channel-message"
with:
team_id: "infosec"
channel_id: "incident_response"
text: "SECURITY INCIDENT: {{get-alert-details.threat_name}} from {{get-alert-details.source_ip}}. Severity: {{get-alert-details.severity}}. Ticket: {{create-incident.number}}."
consumes:
- type: http
namespace: paloalto
baseUri: "https://chipotle-panorama.paloaltonetworks.com/api/v1"
authentication:
type: bearer
token: "$secrets.paloalto_token"
resources:
- name: alerts
path: "/alerts/{{alert_id}}"
inputParameters:
- name: alert_id
in: path
operations:
- name: get-alert
method: GET
- type: http
namespace: servicenow
baseUri: "https://chipotle.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: send-channel-message
method: POST
Fetches the current status of a ServiceNow incident by number, returning state, priority, and assigned group for Chipotle IT support.
naftiko: "0.5"
info:
label: "ServiceNow Incident Status"
description: "Fetches the current status of a ServiceNow incident by number, returning state, priority, and assigned group for Chipotle IT support."
tags:
- it-support
- servicenow
- incident-management
capability:
exposes:
- type: mcp
namespace: itsm-incidents
port: 8080
tools:
- name: get-incident-status
description: "Retrieve a ServiceNow incident by number and return its current state."
inputParameters:
- name: incident_number
in: body
type: string
description: "The ServiceNow incident number."
call: "servicenow.get-incident"
with:
number: "{{incident_number}}"
consumes:
- type: http
namespace: servicenow
baseUri: "https://chipotle.service-now.com/api/now"
authentication:
type: basic
username: "$secrets.servicenow_user"
password: "$secrets.servicenow_password"
resources:
- name: incidents
path: "/table/incident"
inputParameters:
- name: number
in: query
operations:
- name: get-incident
method: GET
Searches SharePoint Online for Chipotle corporate policy documents, returning matching documents with metadata and download links.
naftiko: "0.5"
info:
label: "SharePoint Policy Document Search"
description: "Searches SharePoint Online for Chipotle corporate policy documents, returning matching documents with metadata and download links."
tags:
- document-management
- sharepoint
- corporate-policy
capability:
exposes:
- type: mcp
namespace: policy-docs
port: 8080
tools:
- name: search-policy-documents
description: "Search SharePoint for corporate policy documents."
inputParameters:
- name: search_query
in: body
type: string
description: "The search query string."
call: "sharepoint.search-documents"
with:
query: "{{search_query}}"
consumes:
- type: http
namespace: sharepoint
baseUri: "https://chipotle.sharepoint.com/_api/v2.0"
authentication:
type: bearer
token: "$secrets.sharepoint_token"
resources:
- name: search
path: "/search/query"
inputParameters:
- name: query
in: query
operations:
- name: search-documents
method: GET
Queries Snowflake analytics warehouse for Chipotle restaurant labor cost analysis, returning cost per transaction and labor efficiency metrics.
naftiko: "0.5"
info:
label: "Snowflake Labor Cost Query"
description: "Queries Snowflake analytics warehouse for Chipotle restaurant labor cost analysis, returning cost per transaction and labor efficiency metrics."
tags:
- analytics
- snowflake
- labor-management
- cost-analysis
capability:
exposes:
- type: mcp
namespace: labor-analytics
port: 8080
tools:
- name: query-labor-costs
description: "Query Snowflake for restaurant labor cost metrics."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The Chipotle restaurant number."
- name: period
in: body
type: string
description: "The time period."
call: "snowflake.execute-statement"
with:
statement: "SELECT * FROM labor_cost_analysis WHERE restaurant = '{{restaurant_number}}' AND period = '{{period}}'"
consumes:
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
Executes a Snowflake SQL query against Chipotle's analytics warehouse for menu item performance, ingredient cost analysis, and regional sales trends.
naftiko: "0.5"
info:
label: "Snowflake Menu Analytics Query"
description: "Executes a Snowflake SQL query against Chipotle's analytics warehouse for menu item performance, ingredient cost analysis, and regional sales trends."
tags:
- data-warehouse
- snowflake
- menu-analytics
- sales
capability:
exposes:
- type: mcp
namespace: analytics-warehouse
port: 8080
tools:
- name: query-menu-analytics
description: "Execute a Snowflake analytics query for menu performance data."
inputParameters:
- name: sql
in: body
type: string
description: "The SQL query to execute."
call: "snowflake.execute-statement"
with:
statement: "{{sql}}"
warehouse: "CHIPOTLE_ANALYTICS_WH"
database: "CHIPOTLE_ANALYTICS"
consumes:
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
Monitors social media mentions for crisis keywords, creates a Salesforce case for tracking, and coordinates response through Microsoft Teams.
naftiko: "0.5"
info:
label: "Social Media Crisis Response Pipeline"
description: "Monitors social media mentions for crisis keywords, creates a Salesforce case for tracking, and coordinates response through Microsoft Teams."
tags:
- social-media
- instagram
- salesforce
- microsoft-teams
capability:
exposes:
- type: mcp
namespace: crisis-response
port: 8080
tools:
- name: respond-social-crisis
description: "Detect and respond to social media crisis events."
inputParameters:
- name: keyword
in: body
type: string
description: "The crisis keyword detected."
- name: platform
in: body
type: string
description: "The social media platform."
steps:
- name: get-mentions
type: call
call: "instagram.search-mentions"
with:
keyword: "{{keyword}}"
- name: create-case
type: call
call: "salesforce.create-case"
with:
subject: "Social Crisis: {{keyword}} on {{platform}}"
priority: "High"
description: "Detected {{get-mentions.mention_count}} mentions. Sentiment: {{get-mentions.sentiment}}."
- name: coordinate-response
type: call
call: "msteams.send-channel-message"
with:
team_id: "communications"
channel_id: "crisis_response"
text: "SOCIAL CRISIS ALERT: {{keyword}} on {{platform}}. {{get-mentions.mention_count}} mentions detected. Case: {{create-case.case_number}}."
consumes:
- type: http
namespace: instagram
baseUri: "https://graph.facebook.com/v18.0"
authentication:
type: bearer
token: "$secrets.instagram_token"
resources:
- name: mentions
path: "/ig_mentions_search"
inputParameters:
- name: keyword
in: query
operations:
- name: search-mentions
method: GET
- type: http
namespace: salesforce
baseUri: "https://chipotle.my.salesforce.com/services/data/v58.0"
authentication:
type: bearer
token: "$secrets.salesforce_token"
resources:
- name: cases
path: "/sobjects/Case"
operations:
- name: create-case
method: POST
- type: http
namespace: msteams
baseUri: "https://graph.microsoft.com/v1.0"
authentication:
type: bearer
token: "$secrets.msgraph_token"
resources:
- name: channel-messages
path: "/teams/{{team_id}}/channels/{{channel_id}}/messages"
inputParameters:
- name: team_id
in: path
- name: channel_id
in: path
operations:
- name: send-channel-message
method: POST
Queries SolarWinds for network health metrics at Chipotle restaurant locations, returning node status, response time, and packet loss.
naftiko: "0.5"
info:
label: "SolarWinds Restaurant Network Monitor"
description: "Queries SolarWinds for network health metrics at Chipotle restaurant locations, returning node status, response time, and packet loss."
tags:
- network-monitoring
- solarwinds
- restaurant-infrastructure
capability:
exposes:
- type: mcp
namespace: network-monitoring
port: 8080
tools:
- name: get-restaurant-network-health
description: "Retrieve SolarWinds network health for a restaurant."
inputParameters:
- name: node_id
in: body
type: string
description: "The SolarWinds node ID."
call: "solarwinds.get-node"
with:
node_id: "{{node_id}}"
consumes:
- type: http
namespace: solarwinds
baseUri: "https://chipotle-solarwinds.com:17778/SolarWinds/InformationService/v3/Json"
authentication:
type: basic
username: "$secrets.solarwinds_user"
password: "$secrets.solarwinds_password"
resources:
- name: nodes
path: "/Query"
inputParameters:
- name: node_id
in: query
operations:
- name: get-node
method: GET
Retrieves Square POS transaction details for Chipotle restaurant locations, returning payment status, amount, and tender information.
naftiko: "0.5"
info:
label: "Square POS Transaction Lookup"
description: "Retrieves Square POS transaction details for Chipotle restaurant locations, returning payment status, amount, and tender information."
tags:
- payments
- square
- pos-systems
- restaurant-operations
capability:
exposes:
- type: mcp
namespace: pos-transactions
port: 8080
tools:
- name: get-pos-transaction
description: "Retrieve a Square POS transaction by payment ID."
inputParameters:
- name: payment_id
in: body
type: string
description: "The Square payment ID."
call: "square.get-payment"
with:
payment_id: "{{payment_id}}"
consumes:
- type: http
namespace: square
baseUri: "https://connect.squareup.com/v2"
authentication:
type: bearer
token: "$secrets.square_token"
resources:
- name: payments
path: "/payments/{{payment_id}}"
inputParameters:
- name: payment_id
in: path
operations:
- name: get-payment
method: GET
Audits supplier compliance by retrieving certifications from SAP, checking inspection records in Oracle E-Business Suite, and creating a compliance report in Confluence.
naftiko: "0.5"
info:
label: "Supplier Compliance Audit Pipeline"
description: "Audits supplier compliance by retrieving certifications from SAP, checking inspection records in Oracle E-Business Suite, and creating a compliance report in Confluence."
tags:
- supply-chain
- sap
- oracle
- confluence
- compliance
capability:
exposes:
- type: mcp
namespace: supplier-compliance
port: 8080
tools:
- name: audit-supplier-compliance
description: "Audit a supplier for compliance across certifications and inspections."
inputParameters:
- name: supplier_id
in: body
type: string
description: "The supplier identifier."
- name: audit_type
in: body
type: string
description: "The type of compliance audit."
steps:
- name: get-certifications
type: call
call: "sap.get-supplier-certs"
with:
vendor_id: "{{supplier_id}}"
- name: get-inspections
type: call
call: "oracle-ebs.get-inspection-records"
with:
supplier_id: "{{supplier_id}}"
type: "{{audit_type}}"
- name: create-report
type: call
call: "confluence.create-page"
with:
space_key: "SUPPLY"
title: "Compliance Audit: {{supplier_id}} - {{audit_type}}"
body: "Certifications: {{get-certifications.count}} valid. Inspections: {{get-inspections.pass_count}}/{{get-inspections.total_count}} passed."
consumes:
- type: http
namespace: sap
baseUri: "https://chipotle-s4.sap.com/sap/opu/odata/sap/VENDOR_SRV"
authentication:
type: basic
username: "$secrets.sap_user"
password: "$secrets.sap_password"
resources:
- name: certifications
path: "/VendorCertificates"
inputParameters:
- name: vendor_id
in: query
operations:
- name: get-supplier-certs
method: GET
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: inspections
path: "/inspections"
inputParameters:
- name: supplier_id
in: query
- name: type
in: query
operations:
- name: get-inspection-records
method: GET
- type: http
namespace: confluence
baseUri: "https://chipotle.atlassian.net/wiki/rest/api"
authentication:
type: bearer
token: "$secrets.confluence_token"
resources:
- name: pages
path: "/content"
operations:
- name: create-page
method: POST
Triggers a Tableau workbook refresh for Chipotle restaurant operations data and returns the updated dashboard view URL.
naftiko: "0.5"
info:
label: "Tableau Restaurant Operations Dashboard"
description: "Triggers a Tableau workbook refresh for Chipotle restaurant operations data and returns the updated dashboard view URL."
tags:
- analytics
- tableau
- restaurant-operations
- reporting
capability:
exposes:
- type: mcp
namespace: analytics-dashboards
port: 8080
tools:
- name: refresh-ops-dashboard
description: "Trigger a Tableau workbook refresh for restaurant operations data."
inputParameters:
- name: workbook_id
in: body
type: string
description: "The Tableau workbook ID."
call: "tableau.refresh-workbook"
with:
workbook_id: "{{workbook_id}}"
consumes:
- type: http
namespace: tableau
baseUri: "https://chipotle.online.tableau.com/api/3.19"
authentication:
type: bearer
token: "$secrets.tableau_token"
resources:
- name: workbooks
path: "/sites/{{site_id}}/workbooks/{{workbook_id}}/refresh"
inputParameters:
- name: workbook_id
in: path
- name: site_id
in: path
operations:
- name: refresh-workbook
method: POST
Queries Teradata data warehouse for Chipotle supply chain metrics including supplier lead times, order volumes, and delivery performance.
naftiko: "0.5"
info:
label: "Teradata Supply Chain Query"
description: "Queries Teradata data warehouse for Chipotle supply chain metrics including supplier lead times, order volumes, and delivery performance."
tags:
- supply-chain
- teradata
- analytics
- logistics
capability:
exposes:
- type: mcp
namespace: supply-chain-analytics
port: 8080
tools:
- name: query-supply-chain
description: "Query Teradata for supply chain performance metrics."
inputParameters:
- name: supplier_id
in: body
type: string
description: "The supplier identifier."
- name: date_range
in: body
type: string
description: "Date range for query."
call: "teradata.execute-query"
with:
query: "SELECT * FROM supply_chain_metrics WHERE supplier_id = '{{supplier_id}}' AND period = '{{date_range}}'"
consumes:
- type: http
namespace: teradata
baseUri: "https://chipotle-td.teradata.com/api/v1"
authentication:
type: basic
username: "$secrets.teradata_user"
password: "$secrets.teradata_password"
resources:
- name: queries
path: "/queries"
operations:
- name: execute-query
method: POST
Reconciles vendor invoices by matching SAP purchase orders with Oracle E-Business Suite receipts and flagging discrepancies in ServiceNow.
naftiko: "0.5"
info:
label: "Vendor Invoice Reconciliation Pipeline"
description: "Reconciles vendor invoices by matching SAP purchase orders with Oracle E-Business Suite receipts and flagging discrepancies in ServiceNow."
tags:
- finance
- sap
- oracle
- servicenow
- accounts-payable
capability:
exposes:
- type: mcp
namespace: invoice-reconciliation
port: 8080
tools:
- name: reconcile-vendor-invoice
description: "Reconcile a vendor invoice against purchase orders and receipts."
inputParameters:
- name: invoice_number
in: body
type: string
description: "The vendor invoice number."
- name: vendor_id
in: body
type: string
description: "The vendor identifier."
steps:
- name: get-purchase-order
type: call
call: "sap.get-purchase-order"
with:
invoice_ref: "{{invoice_number}}"
vendor_id: "{{vendor_id}}"
- name: get-receipt
type: call
call: "oracle-ebs.get-receipt"
with:
po_number: "{{get-purchase-order.po_number}}"
- name: flag-discrepancy
type: call
call: "servicenow.create-incident"
with:
short_description: "Invoice discrepancy: {{invoice_number}}"
description: "PO Amount: {{get-purchase-order.amount}}, Receipt Amount: {{get-receipt.amount}}"
category: "accounts_payable"
consumes:
- type: http
namespace: sap
baseUri: "https://chipotle-s4.sap.com/sap/opu/odata/sap/PO_SRV"
authentication:
type: basic
username: "$secrets.sap_user"
password: "$secrets.sap_password"
resources:
- name: purchase-orders
path: "/PurchaseOrders"
inputParameters:
- name: invoice_ref
in: query
- name: vendor_id
in: query
operations:
- name: get-purchase-order
method: GET
- type: http
namespace: oracle-ebs
baseUri: "https://chipotle-ebs.oracle.com/webservices/rest/v1"
authentication:
type: basic
username: "$secrets.oracle_user"
password: "$secrets.oracle_password"
resources:
- name: receipts
path: "/receipts"
inputParameters:
- name: po_number
in: query
operations:
- name: get-receipt
method: GET
- type: http
namespace: servicenow
baseUri: "https://chipotle.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
Analyzes food waste by querying waste data from Snowflake, running ML predictions in Azure Machine Learning, and updating action items in Jira.
naftiko: "0.5"
info:
label: "Waste Reduction Analysis Pipeline"
description: "Analyzes food waste by querying waste data from Snowflake, running ML predictions in Azure Machine Learning, and updating action items in Jira."
tags:
- sustainability
- snowflake
- azure-machine-learning
- jira
capability:
exposes:
- type: mcp
namespace: waste-reduction
port: 8080
tools:
- name: analyze-waste-reduction
description: "Analyze food waste patterns and generate reduction recommendations."
inputParameters:
- name: restaurant_number
in: body
type: string
description: "The restaurant number."
- name: period
in: body
type: string
description: "The analysis period."
steps:
- name: query-waste-data
type: call
call: "snowflake.execute-statement"
with:
statement: "SELECT * FROM food_waste_tracking WHERE restaurant = '{{restaurant_number}}' AND period = '{{period}}'"
- name: predict-optimization
type: call
call: "azure-ml.invoke-endpoint"
with:
endpoint: "waste_predictor"
data: "{restaurant: '{{restaurant_number}}', waste_kg: {{query-waste-data.total_waste}}}"
- name: create-action-items
type: call
call: "jira.create-issue"
with:
project: "SUSTAIN"
summary: "Waste reduction: Restaurant {{restaurant_number}}"
description: "Current waste: {{query-waste-data.total_waste}}kg. Predicted savings: {{predict-optimization.savings_pct}}%."
issue_type: "Task"
consumes:
- type: http
namespace: snowflake
baseUri: "https://chipotle.snowflakecomputing.com/api/v2"
authentication:
type: bearer
token: "$secrets.snowflake_token"
resources:
- name: statements
path: "/statements"
operations:
- name: execute-statement
method: POST
- type: http
namespace: azure-ml
baseUri: "https://chipotle-ml.azureml.net/score"
authentication:
type: bearer
token: "$secrets.azure_ml_token"
resources:
- name: endpoints
path: "/{{endpoint}}"
inputParameters:
- name: endpoint
in: path
operations:
- name: invoke-endpoint
method: POST
- type: http
namespace: jira
baseUri: "https://chipotle.atlassian.net/rest/api/3"
authentication:
type: bearer
token: "$secrets.jira_token"
resources:
- name: issues
path: "/issue"
operations:
- name: create-issue
method: POST
Retrieves employee benefits enrollment status from Workday for Chipotle HR operations, returning plan selections and coverage details.
naftiko: "0.5"
info:
label: "Workday Benefits Enrollment Status"
description: "Retrieves employee benefits enrollment status from Workday for Chipotle HR operations, returning plan selections and coverage details."
tags:
- hr
- workday
- benefits
- employee-management
capability:
exposes:
- type: mcp
namespace: hr-benefits
port: 8080
tools:
- name: get-benefits-enrollment
description: "Retrieve benefits enrollment status for a Chipotle employee."
inputParameters:
- name: employee_id
in: body
type: string
description: "The Workday employee ID."
call: "workday.get-enrollment"
with:
employee_id: "{{employee_id}}"
consumes:
- type: http
namespace: workday
baseUri: "https://chipotle.workday.com/api/benefits/v1"
authentication:
type: bearer
token: "$secrets.workday_token"
resources:
- name: enrollments
path: "/enrollments/{{employee_id}}"
inputParameters:
- name: employee_id
in: path
operations:
- name: get-enrollment
method: GET
Retrieves a Workday employee profile by worker ID, returning name, department, job title, and restaurant assignment for Chipotle HR operations.
naftiko: "0.5"
info:
label: "Workday Employee Profile Lookup"
description: "Retrieves a Workday employee profile by worker ID, returning name, department, job title, and restaurant assignment for Chipotle HR operations."
tags:
- hr
- workday
- employee-management
capability:
exposes:
- type: mcp
namespace: hr-employees
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
Publishes brand content to YouTube by retrieving video assets from Box, uploading to YouTube, and tracking performance in Google Analytics.
naftiko: "0.5"
info:
label: "YouTube Brand Content Publishing Pipeline"
description: "Publishes brand content to YouTube by retrieving video assets from Box, uploading to YouTube, and tracking performance in Google Analytics."
tags:
- marketing
- box
- youtube
- google-analytics
capability:
exposes:
- type: mcp
namespace: video-publishing
port: 8080
tools:
- name: publish-brand-video
description: "Publish brand video content to YouTube with performance tracking."
inputParameters:
- name: video_asset_id
in: body
type: string
description: "The Box video asset ID."
- name: title
in: body
type: string
description: "The video title."
- name: description
in: body
type: string
description: "The video description."
steps:
- name: get-video-asset
type: call
call: "box.get-file-info"
with:
file_id: "{{video_asset_id}}"
- name: upload-video
type: call
call: "youtube.upload-video"
with:
title: "{{title}}"
description: "{{description}}"
source_url: "{{get-video-asset.download_url}}"
- name: setup-tracking
type: call
call: "google-analytics.create-event"
with:
category: "video_publish"
action: "youtube_upload"
label: "{{upload-video.video_id}}"
consumes:
- type: http
namespace: box
baseUri: "https://api.box.com/2.0"
authentication:
type: bearer
token: "$secrets.box_token"
resources:
- name: files
path: "/files/{{file_id}}"
inputParameters:
- name: file_id
in: path
operations:
- name: get-file-info
method: GET
- type: http
namespace: youtube
baseUri: "https://www.googleapis.com/youtube/v3"
authentication:
type: bearer
token: "$secrets.youtube_token"
resources:
- name: videos
path: "/videos"
operations:
- name: upload-video
method: POST
- type: http
namespace: google-analytics
baseUri: "https://www.google-analytics.com/mp/collect"
authentication:
type: api-key
key: "$secrets.google_analytics_key"
resources:
- name: events
path: "/"
operations:
- name: create-event
method: POST
Creates Zoom meetings for Chipotle training sessions and corporate communications.
naftiko: "0.5"
info:
label: "Zoom Meeting Scheduler"
description: "Creates Zoom meetings for Chipotle training sessions and corporate communications."
tags:
- communications
- zoom
- meetings
- scheduling
capability:
exposes:
- type: mcp
namespace: meeting-mgmt
port: 8080
tools:
- name: create-zoom-meeting
description: "Create a Zoom meeting."
inputParameters:
- name: topic
in: body
type: string
description: "The meeting topic."
- name: start_time
in: body
type: string
description: "Start time in ISO 8601 format."
- name: duration
in: body
type: integer
description: "Meeting duration in minutes."
call: "zoom.create-meeting"
with:
topic: "{{topic}}"
start_time: "{{start_time}}"
duration: "{{duration}}"
consumes:
- type: http
namespace: zoom
baseUri: "https://api.zoom.us/v2"
authentication:
type: bearer
token: "$secrets.zoom_token"
resources:
- name: meetings
path: "/users/me/meetings"
operations:
- name: create-meeting
method: POST
Retrieves competitor company contact information from ZoomInfo for Chipotle business development and market intelligence.
naftiko: "0.5"
info:
label: "ZoomInfo Competitor Contact Lookup"
description: "Retrieves competitor company contact information from ZoomInfo for Chipotle business development and market intelligence."
tags:
- business-development
- zoominfo
- market-intelligence
capability:
exposes:
- type: mcp
namespace: competitor-intel
port: 8080
tools:
- name: lookup-competitor-contacts
description: "Look up competitor contacts in ZoomInfo."
inputParameters:
- name: company_name
in: body
type: string
description: "The competitor company name."
call: "zoominfo.search-contacts"
with:
company: "{{company_name}}"
consumes:
- type: http
namespace: zoominfo
baseUri: "https://api.zoominfo.com/search"
authentication:
type: bearer
token: "$secrets.zoominfo_token"
resources:
- name: contacts
path: "/contact"
inputParameters:
- name: company
in: query
operations:
- name: search-contacts
method: GET