Azure AI
MicrosoftOfficialCreated by Microsoft
- Skill
- Tool integration
- Cloud and DevOps
- MIT
- Low risk
- Has scripts
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
This skill provides a centralized reference for integrating and debugging Microsoft Azure AI services. It covers AI Search, Speech, OpenAI, and Document Intelligence, offering guidance on MCP tool usage, CLI commands, and SDK patterns. It includes specific troubleshooting resources for Speech SDK diagnostics and best practices for secure authentication across development and production environments.
What it does
- Provides MCP tool mappings for Azure AI Search and Speech services.
- Offers quick-reference guides for various Azure AI SDKs across multiple languages.
- Outlines best practices for secure authentication using managed identities.
- Includes troubleshooting patterns for Speech SDK logs and diagnostics.
- Summarizes capabilities for vector, hybrid, and semantic search.
- Details patterns for document intelligence and content safety implementations.
When to use it
- When integrating Azure AI Search, Speech, or OpenAI into an application.
- When troubleshooting Speech SDK connectivity or transcription issues.
- When setting up authentication for Azure services in production versus local environments.
- When looking for language-specific SDK patterns for Azure AI services.
- When needing to perform OCR or form extraction via Document Intelligence.
Advantages
- Centralizes documentation for multiple Azure AI services.
- Provides clear guidance on moving from local development to production security.
- Includes actionable MCP tool commands for rapid integration.
- Offers language-specific SDK snippets for quick implementation.
- Simplifies complex troubleshooting tasks like Speech SDK log analysis.
Usage examples
- “List the available search indexes in my Azure AI Search service.”
- The agent uses the azure__search MCP tool with the search_index_list command to retrieve and display the indexes.
- “How should I authenticate my Azure AI client in a production environment?”
- The agent provides the recommended pattern using ManagedIdentityCredential instead of DefaultAzureCredential to ensure secure, deterministic authentication.
- “Transcribe this audio file using Azure Speech.”
- The agent utilizes the azure__speech tool with the speech_transcribe command to process the audio file.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/microsoft/azure-ai/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip azure-ai.zip -d .agents/skills
Documentation by Microsoft
Azure AI Services
Services
| Service | Use When | MCP Tools | CLI |
|---|---|---|---|
| AI Search | Full-text, vector, hybrid search | azure__search | az search |
| Speech | Speech-to-text, text-to-speech, SDK logs | azure__speech | - |
| OpenAI | GPT models, embeddings, DALL-E | - | az cognitiveservices |
| Document Intelligence | Form extraction, OCR | - | - |
MCP Server (Preferred)
When Azure MCP is enabled:
AI Search
azure__searchwith commandsearch_index_list- List search indexesazure__searchwith commandsearch_index_get- Get index detailsazure__searchwith commandsearch_query- Query search index
Speech
azure__speechwith commandspeech_transcribe- Speech to textazure__speechwith commandspeech_synthesize- Text to speech
If Azure MCP is not enabled: In Copilot CLI or Claude Code, ask the user to run /mcp and enable Azure MCP; in other hosts, ask the user to enable Azure MCP through the host's MCP configuration.
AI Search Capabilities
| Feature | Description |
|---|---|
| Full-text search | Linguistic analysis, stemming |
| Vector search | Semantic similarity with embeddings |
| Hybrid search | Combined keyword + vector |
| AI enrichment | Entity extraction, OCR, sentiment |
Speech Capabilities
| Feature | Description |
|---|---|
| Speech-to-text | Real-time and batch transcription |
| Text-to-speech | Neural voices, SSML support |
| Speaker diarization | Identify who spoke when |
| Custom models | Domain-specific vocabulary |
| Client SDK diagnostics | Speech SDK client diagnostics for log collection, offline analysis, features, and session/result IDs (no MCP or login required) |
SDK Quick References
For programmatic access to these services, see the condensed SDK guides:
AI Search: Python | TypeScript | .NET
OpenAI: .NET
Transcription: Python
Translation: Python | TypeScript
Document Intelligence: .NET | TypeScript
Content Safety: Python | TypeScript | Java
Service Details
For deep documentation on specific services:
AI Search indexing and queries -> Azure AI Search documentation
Speech transcription patterns -> Azure AI Speech documentation
Speech SDK client logs and troubleshooting -> Speech SDK client diagnostics
Files
- ATTRIBUTION.mdAdded by AutoGineer956 B
- LICENSELicence file added by AutoGineer1.1 KiB
- SKILL.md3.6 KiB
- references/auth-best-practices.md6.1 KiB
- references/sdk/azure-ai-contentsafety-java.md1.4 KiB
- references/sdk/azure-ai-contentsafety-py.md1.3 KiB
- references/sdk/azure-ai-contentsafety-ts.md1.4 KiB
- references/sdk/azure-ai-document-intelligence-dotnet.md1.4 KiB
- references/sdk/azure-ai-document-intelligence-ts.md1.5 KiB
- references/sdk/azure-ai-openai-dotnet.md1.4 KiB
- references/sdk/azure-ai-transcription-py.md1.2 KiB
- references/sdk/azure-ai-translation-text-py.md1.3 KiB
- references/sdk/azure-ai-translation-ts.md1.3 KiB
- references/sdk/azure-ai-vision-imageanalysis-java.md1.3 KiB
- references/sdk/azure-ai-vision-imageanalysis-py.md1.3 KiB
- references/sdk/azure-search-documents-dotnet.md1.3 KiB
- references/sdk/azure-search-documents-py.md1.5 KiB
- references/sdk/azure-search-documents-ts.md1.2 KiB
- references/speech/azure-checks.md3.5 KiB
- references/speech/collection.md3.5 KiB
- references/speech/diagnostics.md3.9 KiB
- references/speech/interpretation.md3.8 KiB
- references/speech/logging-apis.md3.8 KiB
- references/speech/output.md3.5 KiB
- references/speech/source-contract.md3.8 KiB
- references/speech/without-node.md1.9 KiB
- scripts/analyze-speech-sdk-log.mjsScript17.7 KiB
- scripts/analyze-speech-sdk-log.ps1Script1.4 KiB
- scripts/analyze-speech-sdk-log.shScript1.3 KiB
references/speech/interpretation.md
Interpret observations, not assumptions
Read source boundaries for the reviewed release. Every finding needs an analyzer line anchor; avoid broad root-cause statements.
Configuration and feature evidence
property observations distinguish a property write from a read on a
property-bag object. Neither proves the user explicitly configured it, nor that
it belongs to the nearest session. Values can change; retain conflicting
observations, not a process-global "last value".
request_context observations summarize selected speech.context JSON fields:
language identification, pronunciation assessment presence, phrase-list count,
segmentation, output options, and speaker diarization. They mean the SDK
generated that context, not that transport succeeded or the server adopted it.
Do not print phrase/reference text, JSON bodies or unknown properties.
| Observation | Safe interpretation |
|---|---|
| Locale, voice or format property | A value was observed on that object |
| LID context with mode/candidate languages | Those fields occurred in generated context |
| Pronunciation assessment object | Assessment configuration was present; scoring success is unknown |
| Speaker diarization context | Diarization configuration was present; not proof of speaker accuracy |
| Detailed output/word timings | Requested output; may be set by another feature |
| No feature entry | Not observed, not disabled |
IDs and lifecycle
The ID inventory is typed, not a count of unique business requests. Session ID is not ResultId. STT intermediate/final IDs can reflect phrase IDs; do not count every occurrence as a new request. TTS result/request equivalence is supported only by the reviewed implementation. One connection can serve multiple synthesis requests. Preserve protocol request IDs separately.
Final recognition records retain numeric reasonCode, not a guessed cause.
For the reviewed version, ResultReason
defines NoMatch as 0 and RecognizedSpeech as 3. Other values/versions require
their matching enum; cancellation details must come from app events when the
native trace does not expose them.
Only IDs explicit in the same record are attached to observations. Result IDs on unrelated records remain unassociated. Same thread, time overlap, or similar GUID spelling is insufficient.
| Client evidence | Next check; not a conclusion |
|---|---|
| WebSocket upgrade status other than 101 | Preserve exact status; compare endpoint/auth mode and error details |
| DNS error code | Resolve the confirmed host from the affected environment |
| 401/403 | Verify resource/endpoint, auth method and relevant configuration; no single-cause mapping |
| NoMatch | Read NoMatch details and inspect input/configuration; do not label an outage |
| TLS certificate verification error (not extracted by the analyzer) | Keep the exact line; compare the trust store and any TLS-inspecting proxy of the affected host; never disable validation |
| Log ends without a terminal event | Incomplete capture is possible; do not invent a disconnect |
The analyzer does not implement all these diagnoses or echo unknown errors.
Relative milliseconds are not wall-clock UTC or audio offsets. Embedded timestamps are separate observations, not automatic cross-clock anchors. SDK latency properties are reported as SDK metrics, not microphone-to-display or playback latency. Use matching API definitions before deriving a breakdown: TTS latency.
Never disable certificate validation, remove network controls, rotate keys, increase quota, or delete/recreate resources as a generic troubleshooting fix.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs an MCP server, Needs Node.js
Security
What our scanner noticed· Low risk
- Instructions that use the network
- Scripts that your agent may run
This skill includes scripts that your agent may run. Read them before you use it.
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Microsoft
- Publisher
- Microsoft (Official)
- Source
- microsoft/skills · .github/plugins/azure-skills/skills/azure-ai · commit 0696600
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from .github/plugins/azure-skills/LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
- Also distributed in
- microsoft/azure-skills
AutoGineer is not affiliated with or endorsed by Microsoft or Microsoft.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download azure-ai.zip