Manages modifications and creation of .tsp files for Azure API specifications, including validation and authoring plans.
Install
mkdir -p .claude/skills/azure-typespec-author && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/10135" && unzip -o skill.zip -d .claude/skills/azure-typespec-author && rm skill.zipInstalls to .claude/skills/azure-typespec-author
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Authors and modifies Azure TypeSpec (.tsp) API specifications. USE FOR: any TypeSpec/tsp change — api versions (add, bump, preview, stable, promote), resources, operations, models, properties, decorators, visibility, constraints, breaking changes, LRO, suppressions, operationId, spread model. Covers ARM resource-manager and data-plane services. DO NOT USE FOR: SDK generation, releasing SDK packages, or single MCP tool calls. INVOKES: azure-sdk-mcp:azsdk_typespec_generate_authoring_plan, azure-sdk-mcp:azsdk_run_typespec_validation.Key capabilities
- →Add API versions
- →Define resource models
- →Apply architectural constraints
- →Validate TypeSpec files
- →Generate authoring plans
How it works
It follows a structured workflow of analysis, planning, application, and validation to modify TypeSpec files.
Inputs & outputs
When to use azure-typespec-author
- →Adding a new API version to a specification
- →Defining a new resource model in TypeSpec
- →Validating TypeSpec changes against architectural rules
About this skill
Azure TypeSpec Author
This skill authors and modifies Azure TypeSpec (.tsp) API specifications for ARM resource-manager and data-plane services, covering versioning, resources, operations, models, decorators, constraints, and other schema changes that must follow the repository's TypeSpec authoring workflow.
Triggers
USE FOR: any TypeSpec/tsp change — api versions (add, bump, preview, stable, promote), resources, operations, models, properties, decorators, visibility, constraints, breaking changes, LRO, suppressions, operationId, spread model WHEN: "add TypeSpec API version", "modify .tsp file", "change TypeSpec decorators", "update TypeSpec models or operations", "author Azure TypeSpec" DO NOT USE FOR: SDK generation, releasing SDK packages, or single MCP tool calls
The azure-typespec-author skill must be invoked immediately in all modes (including plan mode) for any task that involves creating and modifying TypeSpec (.tsp) files except for client.tsp under the specification directory in this repository. This skill MUST be used regardless of how simple the task appears — there are no "simple" TypeSpec edits. Even trivial-seeming changes (adding a single enum value, one property, one operation) require the full workflow because versioning decorators, validation, and compliance checks are mandatory.
This includes but is not limited to:
- Adding, bumping, or promoting API versions (preview, stable) for ARM or data-plane services
- Adding or modifying resources, operations, models, properties, or decorators
- Changing visibility, constraints, breaking changes, LRO patterns, or suppressions
- Defining or updating operationId, spread models, or extension resources
- Converting Swagger to TypeSpec (post-conversion edits)
MCP Tools
| Tool | Purpose |
|---|---|
azure-sdk-mcp:azsdk_typespec_retrieve_knowledge | Retrieve knowledge for requests not covered by the eight cases in reference-document-links.md. Covered cases use agentic search (web_fetch) instead. |
azure-sdk-mcp:azsdk_run_typespec_validation | Validate TypeSpec |
Prerequisite: azure-sdk-mcp server must be running.
Rules
- Do NOT skip this skill for "simple" tasks — there are no simple TypeSpec edits. A single property addition can require
@addeddecorators, version gating, and validation. Always invoke this skill. - Always follow the full workflow — even seemingly simple changes (e.g. adding a default value) can require complex versioning decorator changes. Never skip steps.
- Mandatory for ALL
.tspedits — even a single?change can be breaking. - Minimal, scoped edits — only change what the request requires.
- Always validate — run every steps in validation after every edit.
- Always cite references — provide links that justify the approach.
- Follow the authoring plan exactly — code changes in Step 4 MUST follow the authoring plan generated in Step 3. Do not deviate by referring to existing code patterns in the TypeSpec project; the authoring plan is the single source of truth for what to change.
Steps
Analyze → Intake → Plan → Apply → Validate → Output reference links
- Step 1 — Analyze project
- Step 2 — Intake
- Step 3 — Build authoring plan
- Step 4 — Apply changes
- Step 5 — Validate
- Step 6 — Output reference links
Step 1: Analyze Project
See analyze-project.md.
Step 2: Intake
See intake.md.
Step 3: Build Authoring Plan
See authoring-plan.md.
Step 4: Apply Changes
Make minimal .tsp edits following the plan from Step 3. Confirm uncertainties with the user first.
Step 5: Validate
See validation.md. Always run 5.1 general validation (5.1.1 TypeSpec validation and 5.1.2 tsp compile .); run 5.2 case-specific validation whenever its case matches.
Output the validation results as a checklist. Report one line per check, each marked ✅ (pass) or ❌ (fail) with a short note. Fix every ❌ and re-run until all checks pass. For API Versioning (Case 3) the checklist must cover every §5.2 Case 3 check — including: the new version's examples/ folder exists; no example folder remains for a version absent from the Versions enum; no decorator references a version absent from the enum; every carried-over feature is present with its decorators rebased onto the new version (not reverted); every excluded feature is fully removed.
Step 6: Output Reference Links
Output all referenced document URLs from Step 3. This gives the user direct links to the documentation that informed the changes.
Reference Files
| File | Purpose |
|---|---|
| analyze-project.md | Step 1: project analysis |
| intake.md | Step 2: general + case-specific intake |
| authoring-plan.md | Step 3: build authoring plan (Option A + B) |
| agentic-search.md | Procedure: fetch URLs → extract guidance |
| reference-document-links.md | Catalog of external guide URLs |
| validation.md | Step 5: validate → compile → verify |
Examples
- "Add a new preview API version 2026-01-01-preview for widget resource manager"
- "Add an ARM resource named Asset with CRUD operations"
- "Add a new property to the Widget model"
- "Add a list operation for the WidgetSuite resource using Azure.Core templates"
- "Add a new preview API version to a data-plane service"
- "Create a data-plane resource interface with full CRUD and list operations"
When not to use it
- →SDK generation
- →Releasing SDK packages
- →Single MCP tool calls
Prerequisites
Limitations
- →Must follow full workflow
- →Minimal scoped edits only
How it compares
It enforces a mandatory, multi-step validation workflow for all TypeSpec edits to ensure architectural compliance.
Compared to similar skills
azure-typespec-author side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| azure-typespec-author (this skill) | 0 | 3mo | No flags | Advanced |
| mcp-builder | 136 | 5mo | Review | Advanced |
| api-design-principles | 72 | 4mo | No flags | Intermediate |
| langchain-architecture | 8 | 4mo | Review | Intermediate |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by Azure
View all by Azure →You might also like
mcp-builder
anthropics
Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).
api-design-principles
wshobson
Master REST and GraphQL API design principles to build intuitive, scalable, and maintainable APIs that delight developers. Use when designing new APIs, reviewing API specifications, or establishing API design standards.
langchain-architecture
wshobson
Design LLM applications using the LangChain framework with agents, memory, and tool integration patterns. Use when building LangChain applications, implementing AI agents, or creating complex LLM workflows.
nodejs-backend-patterns
wshobson
Build production-ready Node.js backend services with Express/Fastify, implementing middleware patterns, error handling, authentication, database integration, and API design best practices. Use when creating Node.js servers, REST APIs, GraphQL backends, or microservices architectures.
springboot-patterns
affaan-m
Spring Boot 架构模式、REST API 设计、分层服务、数据访问、缓存、异步处理和日志记录。适用于 Java Spring Boot 后端工作。
backend-architect
sickn33
Expert backend architect specializing in scalable API design, microservices architecture, and distributed systems. Masters REST/GraphQL/gRPC APIs, event-driven architectures, service mesh patterns, and modern backend frameworks. Handles service boundary definition, inter-service communication, resilience patterns, and observability. Use PROACTIVELY when creating new backend services or APIs.