Dev & Engineering ✓ Microsoft · Official rustazure-cosmos-dbnosqldocument-crudpartition-keysazure-sdk

Azure Cosmos DB for Rust

A practical guide to building Rust applications with the official Azure Cosmos DB NoSQL client.

FollowSkills review · FSRS-2.0
Not recommended
44/ 100 5-point scale 2.2 / 5
1 2 3 4 5 6
1Trust13 / 25 · 2.6/5

The skill restricts use to the official azure_data_cosmos crate, rejects unofficial community crates, and recommends managed identity, environment variables, and RBAC, reducing credential and dependency risk. It lacks user confirmation for CRUD/deletion, finer least-privilege guidance, data-flow disclosure, and rollback guidance, so points are deducted.

2Reliability6 / 20 · 1.5/5

Installation, authentication, client hierarchy, and CRUD examples cover the main path, with Result-based error propagation. However, there are no committed tests specific to this skill, no version pinning, abnormal-input handling, or diagnosable failure guidance, and compile correctness of some API calls cannot be established statically; the score is conservatively limited.

3Adaptability8 / 15 · 2.7/5

The name, audience, Rust/Cosmos DB use cases, and trigger phrases are reasonably clear, covering document CRUD, containers, and partition keys. Non-fit boundaries, input/output boundaries, query or pagination scenarios, and Chinese-language or mainland-China network fit are not documented, so points are deducted.

4Convention8 / 15 · 2.7/5

The document has clear sections for installation, environment variables, authentication, client hierarchy, examples, best practices, license metadata, and reference links. It lacks an SDK version policy, changelog, explicit maintenance/update path, troubleshooting guidance, and broader complete examples, so it does not merit full marks.

5Effectiveness5 / 15 · 1.7/5

The material gives a directly useful starting point for common Cosmos DB Rust CRUD work and includes patch operations, key authentication, and RBAC guidance. Static evidence does not verify that representative snippets run, and query, pagination, recovery, and production-configuration details are missing, so additional review and rework may be needed.

6Verifiability4 / 10 · 2.0/5

The skill supplies docs.rs, crates.io, and Azure SDK source references and identifies the official crate source. It provides no skill-specific tests or committed execution results, and the supplied repository-level test material does not cover this path's key behavior, leaving evidence coverage limited.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 9ccaf7c3704a
Before you use it
  • This is a static source review; cargo builds, examples, and tests were not executed.
  • The deletion example causes external data changes but provides no confirmation, backup, or recovery workflow.
  • Reference links and dependency versions are not pinned; the current azure_data_cosmos API and release should be checked before use.
  • The skill does not address mainland-China reachability of Azure services, crates.io, or docs.rs, or provide alternatives.
See the full review method →

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

This skill is for Rust developers working with Azure Cosmos DB through its NoSQL API. It covers the CosmosClient hierarchy and document create, read, update, delete, and patch operations with partition keys. It also explains Entra ID and account-key authentication, built-in RBAC roles, regional routing, and client reuse. It fits application-level Cosmos DB development, but does not provide infrastructure provisioning, deployment, or a dedicated Rust test suite.

It guides an agent to install azure_data_cosmos, azure_identity, serde, serde_json, and tokio, configure COSMOS_ENDPOINT, and generate Rust authentication code using DeveloperToolsCredential or ManagedIdentityCredential. It demonstrates creating a CosmosClient, obtaining database and container clients, and performing item CRUD and patch operations with partition keys. It also documents the key_auth feature, Cosmos DB built-in data roles, ProximityTo routing, and the distinction between the official crate and named unofficial alternatives.

  1. A Rust developer needs to store or read documents in an Azure Cosmos DB NoSQL container.
  2. A team needs item create, update, query, or delete flows that consistently supply partition keys.
  3. A project needs DeveloperToolsCredential for local development and managed identity for production.
  4. An application needs account-key authentication as an alternative to Entra ID.
  5. A globally distributed application needs proximity-based regional routing for lower latency.

What are this skill's strengths and limitations?

Pros
  • Includes copyable Cargo commands and Rust examples for authentication, client construction, and CRUD.
  • Clearly identifies the official azure_data_cosmos crate and warns about named unofficial crates.
  • Covers Entra ID, account keys, RBAC, partition keys, and regional routing.
  • Released under the MIT license as part of Microsoft's open Agent Skills repository.
Limitations
  • The source provides no dedicated Rust test scenarios or Rust-specific coverage evidence.
  • It focuses on client usage rather than provisioning Cosmos DB accounts, databases, or containers.
  • Successful operation depends on a configured endpoint, valid authentication, and correct partition keys.
  • No specific azure_data_cosmos version is stated.

How do you install this skill?

Install the collection with npx skills add microsoft/skills, then select this skill in the wizard. The README says skills are installed into the selected agent directory, such as .github/skills/ for GitHub Copilot; the source skill is .github/plugins/azure-sdk-rust/skills/azure-cosmos-rust/SKILL.md. Add project dependencies with cargo add azure_data_cosmos azure_identity serde serde_json tokio. If the code imports azure_core types directly, also run cargo add azure_core.

How do you use this skill?

In an Agent Skills-compatible coding agent, use a prompt such as: “Implement Rust document CRUD for Cosmos DB with CosmosClient and a partition key” or “Configure key_auth for a Rust Cosmos DB project.” Set COSMOS_ENDPOINT=https://<account>.documents.azure.com/, use the official azure_data_cosmos crate, and avoid azure_cosmos and azure_sdk_for_rust.

How does this skill compare with similar options?

The skill presents account-key authentication as an optional alternative to Entra ID and recommends DeveloperToolsCredential locally and ManagedIdentityCredential in production. It explicitly distinguishes the official azure_data_cosmos crate from the unofficial azure_cosmos and azure_sdk_for_rust crates.

FAQ

Does this skill require MCP or a specific agent platform?
The SKILL.md uses standard YAML frontmatter, prose, shell commands, and Rust examples. It declares no MCP dependency or platform-specific extension.
What configuration is required before Cosmos DB operations?
COSMOS_ENDPOINT is required for all operations, and the application must use either Entra ID authentication or account-key authentication.
Why does every item operation include a partition key?
The skill states that Cosmos DB requires a partition key for item operations, so its create, read, replace, and delete examples all provide one.
Does this skill cover Azure resource deployment?
No. It covers the azure_data_cosmos client, authentication, containers, and items; the source does not document infrastructure deployment.

More skills from this repository

All from microsoft/agent-skills

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 Cosmos DB Java Skill

Guides Java developers in building globally distributed, partitioned, and reactive Azure Cosmos DB applications.

Dev & Engineering ✓ Microsoft · Official

Azure Blob Storage for Rust

Guides Rust developers through official Azure SDK patterns for managing blobs and containers.

Dev & Engineering ✓ Microsoft · Official

Azure Event Hubs for Rust

A practical guide to sending, batching, and consuming Azure Event Hubs data with the official Rust SDK.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for Rust

Configure Microsoft Entra ID authentication for Azure SDK clients written in Rust.

Dev & Engineering ✓ Microsoft · Official

Azure Cosmos DB TypeScript Skill

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

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 Cosmos DB Python Service Builder

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

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 Document Intelligence for TypeScript

Extract document text, tables, and structured fields in TypeScript applications.

Dev & Engineering ✓ Microsoft · Official

Azure Key Vault Keys for Rust

A practical Rust guide for creating, managing, and using RSA, EC, and HSM-protected keys in Azure Key Vault.

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 Document Intelligence for .NET

Guides .NET developers in extracting structured data from invoices, receipts, IDs, and forms.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for TypeScript

Configure secure, flexible Microsoft Entra ID authentication for TypeScript Azure applications.

Dev & Engineering ✓ Microsoft · Official

Azure Playwright Workspace Manager

Provision and manage Microsoft Playwright Testing workspaces with .NET and Azure Resource Manager.

Dev & Engineering ✓ Microsoft · Official

Azure Queue Storage for Rust

A focused guide for building secure Azure Queue Storage messaging workflows in Rust.

Dev & Engineering ✓ Microsoft · Official

Azure Key Vault Certificates for Rust

Guides Rust applications in creating, managing, and using X.509 certificates in Azure Key Vault.

Dev & Engineering ✓ Microsoft · Official

Azure Blob Storage for TypeScript

A practical guide for uploading, downloading, and managing Azure Blob Storage from TypeScript and JavaScript applications.

Dev & Engineering ✓ Microsoft · Official

Azure Identity for .NET

Guides .NET applications in authenticating Azure SDK clients with Microsoft Entra ID.

Dev & Engineering ✓ Microsoft · Official

Azure AI Search for TypeScript

Build TypeScript search apps with vector, hybrid, and semantic retrieval patterns.

Related skills