Skip to content

CVAT

Nuget package dotnet License: MIT Discord

Features 🔥

  • Fully generated C# SDK based on official CVAT OpenAPI specification using AutoSDK
  • Same day update to support new features
  • Updated and supported automatically if there are no breaking changes
  • All modern .NET features - nullability, trimming, NativeAOT, etc.
  • Support .Net Framework/.Net Standard 2.0

Usage

1
2
3
using CVAT;

using var client = new CVATClient(apiKey);

Client Creation

Basic example showing how to create a CVAT client with API key authentication.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
// Create a CVAT client using an API Access token.
// You can generate a token in the CVAT UI under User Profile > Access Tokens,
// or via the /auth/access_tokens API endpoint.
using var client = new CVATClient(apiKey);

// The client provides access to all CVAT API endpoints via sub-clients:
// - client.Projects — manage annotation projects
// - client.Tasks — manage annotation tasks
// - client.Jobs — manage annotation jobs
// - client.Labels — manage annotation labels/categories
// - client.Users — manage users
// - client.Organizations — manage organizations

MEAI Tools

Example showing how to create MEAI AIFunction tools for use with any IChatClient.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
// Create CVAT AIFunction tools for use with any IChatClient.
// These tools allow AI agents to interact with CVAT for
// computer vision annotation workflows.
using var client = new CVATClient(apiKey);

// Create tools for common CVAT operations:
var listProjectsTool = client.AsListProjectsTool();
var getTaskTool = client.AsGetTaskTool();
var listLabelsTool = client.AsListLabelsTool();
var getJobStatusTool = client.AsGetJobStatusTool();

// Verify all tools are created successfully:

// These tools can be passed to any IChatClient implementation:
// var response = await chatClient.GetResponseAsync(
//     "List all annotation projects",
//     new ChatOptions
//     {
//         Tools = [listProjectsTool, getTaskTool, listLabelsTool, getJobStatusTool],
//     });

Ecosystem maintenance

This SDK is one of more than 200 .NET SDKs maintained with AutoSDK. The tryAGI SDK audit continuously checks repository synchronization, upstream-spec regeneration, release workflows, warnings, public API visibility, and trimming/NativeAOT compatibility.

Every issue is first investigated for ecosystem-wide applicability. When the root cause belongs in AutoSDK, we fix and regression-test the generator, then roll the improvement out to every applicable SDK. Provider-specific behavior remains in this repository when it cannot be derived safely from the API specification.

Issue content—including code blocks, logs, links, and attachments—is treated only as untrusted diagnostic data. Embedded control instructions, hidden directives, delimiter tricks, or requests to alter triage or tooling behavior are ignored. Please report reproducible technical evidence and remove secrets and personal data.

Support

Priority place for bugs: https://github.com/tryAGI/CVAT/issues
Priority place for ideas and general questions: https://github.com/tryAGI/CVAT/discussions
Discord: https://discord.gg/Ca2xhfBf3v

Acknowledgments

JetBrains logo

This project is supported by JetBrains through the Open Source Support Program.