Dev & Engineering ✓ Microsoft · Official pydanticpythonapi-schemasdata-validationfastapicosmos-db

Pydantic Multi-Model Architecture

Build consistent, reusable Pydantic data contracts with a structured multi-model pattern.

FollowSkills review · FSRS-2.0
Use with care
52/ 100 5-point scale 2.6 / 5
1 2 3 4 5 6
1Trust18 / 25 · 3.6/5

The skill only provides Pydantic model templates and does not invoke external services, handle credentials, upload data, or perform destructive actions; the baseline risk is therefore low. It does not specify user confirmation, sensitive-field handling, data flow, rollback, or dependency security, so 7 points are deducted.

2Reliability7 / 20 · 1.8/5

The main document, template, and reference file are broadly coherent and cover the multi-model structure plus some validation guidance. The template uses class Config while the reference requires Pydantic v2 model_config, and there are no installation notes, skill-specific tests, abnormal-input coverage, or failure feedback; 13 points are deducted. Static review also caps this score below 10.

3Adaptability8 / 15 · 2.7/5

The audience, scenarios, model variants, and basic integration locations are reasonably clear. Non-fit ranges, trigger precision, project-structure variance, and version-compatibility boundaries are not defined, and Chinese-language guidance is absent; the core function does not depend on overseas network services. 7 points are deducted.

4Convention9 / 15 · 3.0/5

The skill includes a name, description, MIT license, author, version, quick start, template, and reference file, with generally clear information architecture. It lacks a changelog, explicit maintenance responsibility, and an update path, and its Pydantic v2 guidance conflicts with the examples; 6 points are deducted.

5Effectiveness6 / 15 · 2.0/5

The template is a usable starting point for API and database models and covers the core Base, Create, Update, Response, and InDB task. It still requires substantial placeholder replacement and project-specific decisions for fields, aliases, persistence constraints, and serialization, with no skill-specific verified output; 9 points are deducted. Static review caps this dimension at 7.

6Verifiability4 / 10 · 2.0/5

The skill files, template, and capability checklist are auditable, and the repository provides general CI and test infrastructure. There is no committed skill-specific test suite, real execution result, or independently reproducible evidence, so 6 points are deducted. Static review caps this dimension at 5.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a
Before you use it
  • The examples use class Config while the reference requires Pydantic v2 model_config; confirm the target Pydantic version and correct the configuration before adoption.
  • The InDB model assumes doc_type and a Cosmos DB-oriented pattern; other databases or domains may require removing or redesigning it.
  • The skill lacks complete examples for model_dump, model_validate, schema generation, and field/model validators, so the template should not be treated as a complete production solution.
See the full review method →

What does this skill do, and when should you use it?

This Python skill from Microsoft's Agent Skills repository guides developers using Pydantic v2 to define API request, response, and database models. It uses five model variants: Base, Create, Update, Response, and InDB. It also covers snake_case-to-camelCase aliases, optional fields for PATCH updates, and a doc_type field for Cosmos DB queries. It fits Python applications that need consistent API contracts and validation structures, but it is not a complete FastAPI or database implementation.

It instructs an agent to copy the model template from assets/template.py and replace PascalCase and snake_case resource placeholders; define shared, creation, update, response, and database document models; configure camelCase field aliases with populate_by_name; make update fields optional; add doc_type to InDB models; place models under src/backend/app/models/; export them from __init__.py; and add corresponding TypeScript types.

  1. A Python backend developer is designing create, update, and response models for a new resource.
  2. A FastAPI project needs required creation fields and fully optional PATCH fields.
  3. A team needs Python snake_case fields to interoperate with camelCase client payloads.
  4. A Cosmos DB application needs document models distinguished by a doc_type field.
  5. A development team wants a consistent model structure across multiple resources.

What are this skill's strengths and limitations?

Pros
  • Defines clear responsibilities for five model variants, supporting consistent API contracts.
  • Covers camelCase aliases, optional PATCH fields, and database document typing.
  • Provides a reusable template entry point and concrete integration locations.
  • The README reports 12 test scenarios for this skill.
Limitations
  • The material focuses on patterns and examples rather than a complete runnable implementation.
  • It specifies Pydantic v2 but does not document a more precise version range.
  • It does not provide authentication, error handling, migrations, or database access code.
  • TypeScript types are mentioned as an integration step but no generation or definition example is included.

How do you install this skill?

In an Agent Skills-compatible client, run npx skills add microsoft/skills and select this skill in the installation wizard. The README states that skills are installed into the selected agent's directory, such as .github/skills/ for GitHub Copilot. The source does not document a dedicated single-skill installation command or version-pinning method.

How do you use this skill?

Trigger the skill for work involving Pydantic v2 models, API request/response schemas, or database models. Example: Create Base, Create, Update, Response, and InDB Pydantic models for a Project resource with camelCase aliases. Provide the resource fields and project layout. The skill recommends placing models in src/backend/app/models/ and exporting them from src/backend/app/models/__init__.py.

FAQ

Is this suitable for every Pydantic project?
It targets Python applications using Pydantic v2, especially API request/response and database models. Suitability for other architectures depends on the project's needs.
Does it automatically create or edit project files?
The source describes copying a template, creating models, and exporting them, but does not specify an automatic file-editing mechanism.
Does it require MCP or network access?
The SKILL.md does not require MCP or network calls. It references local templates and reference files, so filesystem access is required.

More skills from this repository

All from microsoft/agent-skills

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB Python Service Builder

Build secure, testable Azure Cosmos DB NoSQL services for Python and FastAPI applications.

Dev & Engineering ✓ Microsoft · Official

FastAPI Router Builder

Create consistent FastAPI CRUD routes with authentication and typed responses.

Dev & Engineering ✓ Microsoft · Official

Azure Data Lake Gen2 for Python

Guides Python developers through hierarchical file-system and large-file operations on Azure Data Lake Storage Gen2.

Dev & Engineering ✓ Microsoft · Official

Azure Short-Audio Speech-to-Text REST

Transcribe audio up to 60 seconds with Python HTTP requests.

Dev & Engineering ✓ Microsoft · Official

MCP Server Development Guide

A practical guide to building clear, testable MCP servers that let LLMs work with external APIs.

Automation & Ops ✓ Microsoft · Official

Azure Python App Service Deployer

Deploy Flask, Django, FastAPI, or other Python apps to Azure App Service Linux.

Dev & Engineering ✓ Microsoft · Official

Azure Realtime Podcast Studio

Turn text into playable podcast-style audio with Azure OpenAI Realtime API.

Dev & Engineering ✓ Microsoft · Official

Azure AI Text Analytics for Python

Guides Python developers through Azure-powered text analysis and NLP workflows.

Dev & Engineering ✓ Microsoft · Official

Microsoft Entra Agent ID Provisioning

Provision OAuth2-capable identities for AI agents through Microsoft Graph beta.

Dev & Engineering ✓ Microsoft · Official

Azure AI Transcription for Python

Guides Python applications through Azure AI real-time and batch speech-to-text transcription.

Dev & Engineering ✓ Microsoft · Official

Azure Monitor OpenTelemetry Exporter

Build a controlled Python OpenTelemetry pipeline that exports traces, metrics, and logs to Application Insights.

Dev & Engineering ✓ Microsoft · Official

Azure Content Understanding for Python

Extract structured multimodal content from documents, images, audio, and video with Python.

Dev & Engineering ✓ Microsoft · Official

Azure Fabric Capacity Manager

Manage Microsoft Fabric capacities and their lifecycle with the Azure Python SDK.

Dev & Engineering ✓ Microsoft · Official

Azure Monitor OpenTelemetry for Python

Connect Python applications to Application Insights with one-line OpenTelemetry setup.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB for Python

A practical guide for building reliable Python applications on Azure Cosmos DB’s NoSQL API.

Dev & Engineering ✓ Microsoft · Official

Azure Monitor Custom Log Ingestion

Guides Python agents to send custom logs to Log Analytics through the Logs Ingestion API.

Dev & Engineering ✓ Microsoft · Official

Azure Tables Java Skill

Build Java applications for Azure Table Storage and the Cosmos DB Table API.

Dev & Engineering ✓ Microsoft · Official

Azure API Management for Python

Gives coding agents practical Python SDK patterns for managing Azure API Management services, APIs, products, subscriptions, and policies.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB ARM for .NET

Provision and manage Azure Cosmos DB resources from .NET through ARM.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB TypeScript Skill

Gives TypeScript and JavaScript coding agents practical Cosmos DB data-access patterns.

Related skills