Skip to content

Guide · Agent skill

How to use the Dataverse Python Production Code agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

This guide explains the dataverse-python-production-code agent skill, a set of instructions that makes an AI coding agent write Python for Microsoft Dataverse in a more careful style. It is for developers and teams who build Python scripts or services that read and write Dataverse tables. By the end you will know how to install the skill, ask for code that triggers it, and what to check before running the output.

Dataverse Python Production Codegithub/awesome-copilot · MIT

Quick start

  1. 1Download the ZIP. Download the skill ZIP from this page. It contains SKILL.md.
  2. 2Unzip into a skills folder. Place the unzipped folder in ~/.claude/skills/ for personal use, or in .claude/skills/ inside a project.
  3. 3Or upload in the Claude apps. In the Claude apps, go to Settings, then Capabilities, then Skills, and upload the skill.
  4. 4Ask for Dataverse Python code. Describe the table, the operation and the behaviour you want, such as retries or logging.
  5. 5Set up the SDK and credentials. Install Python 3.10 or later and the PowerPlatform-Dataverse-Client package, and supply your org URL and credentials.
  6. 6Review and test. Check names and credentials against your environment, then run the code against a non-production Dataverse org first.

What the skill makes the agent do

When the skill is installed, the agent writes Python code that talks to Microsoft Dataverse, the database behind Power Platform, using the official PowerPlatform-Dataverse-Client SDK. The skill's instructions ask for a specific coding style rather than a bare minimum script.

  • Error handling built around the DataverseError hierarchy, including HttpError and ValidationError.
  • Retry logic with exponential backoff for 429 (throttling) and timeout errors.
  • A single shared client connection instead of creating a new client for every call.
  • OData optimization: filter on the server, select only the columns you need, and use orderby and top for pagination.
  • Logging with the logging module instead of print, for audit trails and debugging.
  • Type hints, docstrings and usage examples in the generated code.

Install the skill from the download ZIP

Download the ZIP for this skill from this page. It contains one file, SKILL.md. Unzip it so that the folder ends up inside your skills directory. For a personal install, use ~/.claude/skills/. For a single project, use .claude/skills/ inside the project folder.

If you use the Claude apps instead of a local tool, you can upload the skill under Settings → Capabilities → Skills.

  • Personal install: place the unzipped folder in ~/.claude/skills/.
  • Project install: place the unzipped folder in .claude/skills/ inside your project.
  • Claude apps: upload the skill under Settings → Capabilities → Skills.

Trigger the skill with a natural request

You do not need a special command. Ask the agent in plain language to generate Python code for Dataverse, and mention the kind of work you want done. The skill is described as generating production-ready Python code using the Dataverse SDK with error handling, optimization and best practices, so requests that match that wording are the most likely to use it.

Be specific about the table, the operation and the environment. The skill's instructions ask the agent to provide imports, configuration, a main implementation, docstrings, type hints, a usage example, error scenarios and logging statements, so a request can reasonably expect those parts.

  • Write production-ready Python using the Dataverse SDK to read active accounts from my org and log the results.
  • Generate Python code with retry and backoff that creates contact records in Dataverse from a CSV file.
  • Create a Python service class for Dataverse that updates opportunity records, with error handling and logging.

Review the output before you run it

The skill only changes how code is written. It does not run anything. The patterns are templates and have not been verified against a live Dataverse org, so treat the output as a starting point. Check the table names, column logical names and credential setup against your own environment, and test against a non-production environment first.

  • Confirm the org URL and credentials are read from configuration, not hard-coded.
  • Check that the filter and select names are the lowercase logical names used in your org.
  • Run the code against a test environment before pointing it at production data.

What you need before running the code

The generated code needs Python 3.10 or later, the PowerPlatform-Dataverse-Client SDK package, and a Dataverse environment URL with credentials. Azure Identity is given as an example credential source. The skill itself does not install these for you.

  • Python 3.10 or later.
  • The PowerPlatform-Dataverse-Client SDK package.
  • A Dataverse environment URL and credentials, for example through Azure Identity.

Safety notes: scripts and network

This skill runs no scripts and uses no network access on its own. Its only file is SKILL.md, a set of written instructions. Any network calls will come from the Python code you choose to run, which connects to your Dataverse environment with the credentials you supply. Keep those credentials out of source control and use the least-privileged account you can.

  • Runs scripts: no.
  • Uses network: no (the generated code, when you run it, will connect to Dataverse).
  • Store the org URL and credentials in configuration or environment settings, not in the code.

What people use it for

  • Generating a script that reads a filtered, limited set of columns from a Dataverse table and logs the results.
  • Building a Python service class that wraps Dataverse calls with a shared client and consistent error handling.
  • Creating a batch job that writes records to Dataverse and retries when the service throttles requests.
  • Giving engineers new to the SDK a structured starting point with docstrings and usage examples.

Frequently asked questions

How do I install the dataverse python production code skill?

Download the ZIP from this page and unzip it into ~/.claude/skills/ for personal use or into .claude/skills/ inside a project. In the Claude apps, you can instead upload it under Settings, then Capabilities, then Skills.

What do I need to run the code this skill generates?

You need Python 3.10 or later, the PowerPlatform-Dataverse-Client SDK package, and a Dataverse environment URL with credentials such as those from Azure Identity. The skill does not install these.

Is the dataverse python production code skill free?

The skill is published under the MIT licence, as listed on this page. Check the licence file in the source repository for the full terms.

Does the skill run code or access my Dataverse environment?

No. The skill runs no scripts and uses no network. It only changes how the agent writes code. Any connection to Dataverse happens when you run the generated code yourself.

Can I use this skill for Power Automate or Power Apps?

No. The skill produces Python code for the Dataverse SDK and does not cover no-code Power Automate or Power Apps solutions.

Is the generated code safe to run against production?

Not without review. The patterns are templates and have not been verified against a live Dataverse org, so test in a non-production environment first.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

This skill suits developers and teams who write Python that reads and writes Dataverse tables and want consistent error handling, retries and logging from the start. It is less useful for no-code Power Platform work or for anyone who wants code that is ready to deploy without testing. Review and test every generated script before it touches production data.

Download the skill