add-connector

Adds any Power Platform connector to a Power Apps code app. Generic fallback for connectors not covered by a specific skill.

npx skills add https://github.com/microsoft/power-platform-skills --skill add-connector

πŸ“‹ Shared Instructions: shared-instructions.md - Cross-cutting concerns.

Add Connector (Generic)

Fallback skill for any connector not covered by a specific /add-* skill. For common connectors, prefer the dedicated skills:

  • /add-dataverse -- Dataverse tables
  • /add-azuredevops -- Azure DevOps
  • /add-teams -- Microsoft Teams
  • /add-excel -- Excel Online (Business)
  • /add-onedrive -- OneDrive for Business
  • /add-sharepoint -- SharePoint Online
  • /add-office365 -- Office 365 Outlook (calendar, email, contacts)
  • /add-workiq -- Work IQ (M365 Copilot Search)

Workflow

  1. Check Memory Bank β†’ 2. Identify Connector β†’ 3. Add Connector β†’ 4. Inspect & Configure β†’ 5. Build β†’ 6. Update Memory Bank

Step 1: Check Memory Bank

Check for memory-bank.md per shared-instructions.md.

Step 2: Identify Connector

If $ARGUMENTS is provided or the caller already specified the connector, use it directly and skip the question below.

Otherwise, ask the user which connector they want to add. Browse available connectors: Connector Reference

Before proceeding, check if the connector has a dedicated skill. If it does, delegate immediately and STOP:

Connector API nameDelegate to
shared_a365copilotchatmcp/add-workiq
sharepointonline/add-sharepoint
teams/add-teams
excelonlinebusiness/add-excel
onedriveforbusiness/add-onedrive
visualstudioteamservices/add-azuredevops
office365/add-office365
commondataservice/add-dataverse

Match the API name with or without the shared_ prefix (pa connector list shows it with the prefix, e.g. shared_teams).

Invoke the appropriate skill with the same $ARGUMENTS and do not continue this skill's workflow.

Common connector API names:

  • sharepointonline, teams, excelonlinebusiness, onedriveforbusiness
  • visualstudioteamservices (Azure DevOps), azureblob, azurequeues
  • office365, office365users, office365groups
  • sql, commondataservice

Step 3: Add Connector

Get the connection as described in connector-reference.md. On CLI 1.3.0+ (PA_INLINE_CONNECTIONS=yes), tell the user a connection may be created with their account, run the add without -c and with --non-interactive, and handle the result with the outcome table there. On older CLIs, run /list-connections first to find the connection ID (if none exists, create one with pa connection create as described in connector-reference.md) and pass -c <connection-id>.

# CLI 1.3.0+, connectors that only have actions (Teams, Office 365 Outlook, Azure DevOps, ...):
# the CLI finds or creates the connection
pa app add data-source --connector <connector-api-name> --non-interactive

# CLI 1.3.0+, connectors that also support tables (SharePoint, SQL Server, Excel): choose
# --as action (or a table, below). Without either, --non-interactive fails on the missing choice.
pa app add data-source --connector <connector-api-name> --as action --non-interactive

# Older CLIs: pass the connection ID
pa app add data-source --connector <connector-api-name> -c <connection-id>

# Tables (SharePoint, Excel, SQL, etc.) on any CLI: dataset and table, plus the connection ID used to find them
pa app add data-source --connector <connector-api-name> -c <connection-id> -d '<dataset>' --table '<table>'

To check whether a connector also supports tables, read isTabular from pa connector list --search '<connector name>' --json.

Finding a table's dataset and name (pa connection list-datasets / list-tables) needs a connection ID: unlike add data-source, these commands don't find or create connections, and without -c they fail in non-interactive mode. So for tables, look the connection up first, even on CLI 1.3.0+ (pa connection list --search <connector-api-name> --json).

Parameter reference:

  • --connector (apiId) -- connector name (e.g., sharepointonline, teams). On the flat power-apps binary this is --api-id/-a.
  • -c (connectionId) -- required on CLIs older than 1.3.0. On 1.3.0+ it's optional: without it the CLI reuses or creates the connection (see connector-reference.md). Get IDs from /list-connections.
  • -d (dataset) -- required for tabular datasources (e.g., SharePoint site URL, SQL database). Not needed for Dataverse.
  • --table (table) -- table/list name for tabular datasources (e.g., SharePoint list, Dataverse table logical name). On the flat power-apps binary this is --resource-name/-t.
  • --as -- table or action, for connectors that support both (CLI 1.2.0+). Use --as action to add the connector's actions instead of a table.
  • --use-sso -- use a single sign-on connection (CLI 1.3.0+). Ask the user first; see connector-reference.md.
  • --non-interactive -- the CLI never prompts; it fails with a message that says what's missing instead. Pass it on every add on CLI 1.3.0+: if the CLI runs in a real terminal, it would otherwise show prompts the agent can't answer, such as the connection picker when -c is omitted.

Step 4: Inspect & Configure

After adding, inspect the generated files. Generated service files can be very large -- use Grep to find specific methods instead of reading the entire file:

Grep pattern="async \w+" path="src/generated/services/<Connector>Service.ts"

Files to check:

  • src/generated/services/<Connector>Service.ts -- available operations and their parameters
  • src/generated/models/<Connector>Model.ts -- TypeScript interfaces (if generated)
  • .power/schemas/<connector>/ -- connector schema and configuration

For each method the user needs:

  1. Grep for the method name to find its signature
  2. Read just that method's section (use offset and limit parameters on Read)
  3. Identify required vs optional parameters and response type

Help the user write code using the generated service methods.

Step 5: Build

npm run build

Fix TypeScript errors before proceeding. Do NOT deploy yet.

Step 6: Update Memory Bank

Update memory-bank.md with: connector added, configured operations, build status.

More skills from microsoft

oss-growth
microsoft
OSS growth hacker persona
agent-framework-azure-ai-py
microsoft
Build Azure AI Foundry agents using the Microsoft Agent Framework Python SDK (agent-framework-azure-ai). Use when creating persistent agents with AzureAIAgentsProvider, using hosted tools (code interpreter, file search, web search), integrating MCP servers, managing conversation threads, or implementing streaming responses. Covers function tools, structured outputs, and multi-tool agents.
development
airunway-aks-setup
microsoft
Set up AI Runway on AKS β€” from bare cluster to running model. Covers cluster verification, controller install, GPU assessment, provider setup, and first deployment. WHEN: "setup AI Runway", "onboard AKS cluster", "install AI Runway", "airunway setup", "deploy model to AKS", "GPU inference on AKS", "KAITO setup on AKS", "run LLM on AKS", "vLLM on AKS", "set up model serving on AKS", "AI Runway controller".
devops
appinsights-instrumentation
microsoft
Guidance for instrumenting webapps with Azure Application Insights. Provides telemetry patterns, SDK setup, and configuration references. WHEN: how to instrument app, App Insights SDK, telemetry patterns, what is App Insights, Application Insights guidance, instrumentation examples, APM best practices.
devops
applicationinsights-web-ts
microsoft
Instrument browser/web apps with the Application Insights JavaScript SDK (@microsoft/applicationinsights-web). Use for Real User Monitoring (RUM) β€” page views, clicks, AJAX/fetch dependencies, exceptions, custom events, and browser-side GenAI agent traces correlated to backend OpenTelemetry traces. Covers SDK Loader Script and npm setup, framework extensions (React, React Native, Angular), Click Analytics, telemetry initializers, and OTel GenAI semantic conventions for agent/tool/model spans emitted from the browser.
devops
azure-ai-anomalydetector-java
microsoft
Build anomaly detection applications with Azure AI Anomaly Detector SDK for Java. Use when implementing univariate/multivariate anomaly detection, time-series analysis, or AI-powered monitoring.
development
azure-ai-language-conversations-py
microsoft
Implement Conversational Language Understanding (CLU) using the azure-ai-language-conversations Python SDK. Use when working with ConversationAnalysisClient to analyze conversation intent and entities, building NLP features, or integrating language understanding into applications.
development
azure-ai-ml-py
microsoft
Azure Machine Learning SDK v2 for Python. Use for ML workspaces, jobs, models, datasets, compute, and pipelines. Triggers: "azure-ai-ml", "MLClient", "workspace", "model registry", "training jobs", "datasets".
development