Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,12 @@
# ServiceLabel: %tools-Advisor
# ServiceOwners: @ankiga-MSFT

# PRLabel: %tools-DocumentDb
/tools/Azure.Mcp.Tools.DocumentDb/ @microsoft/azure-mcp

# ServiceLabel: %tools-DocumentDb
# ServiceOwners: @microsoft/azure-mcp

# PRLabel: %tools-Aks
/tools/Azure.Mcp.Tools.Aks/ @jongio @anuchandy @microsoft/azure-mcp

Expand Down
1 change: 1 addition & 0 deletions Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -82,6 +82,7 @@
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="10.0.2" />
<PackageVersion Include="ModelContextProtocol" Version="0.6.0-preview.1" />
<PackageVersion Include="ModelContextProtocol.AspNetCore" Version="0.6.0-preview.1" />
<PackageVersion Include="MongoDB.Driver" Version="3.2.0" />
<PackageVersion Include="MySqlConnector" Version="2.4.0" />
<PackageVersion Include="Npgsql" Version="10.0.1" />
<PackageVersion Include="YamlDotNet" Version="16.3.0" />
Expand Down
7 changes: 7 additions & 0 deletions servers/Azure.Mcp.Server/Azure.Mcp.Server.slnx
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,13 @@
<Project Path="../../tools/Azure.Mcp.Tools.Deploy/tests/Azure.Mcp.Tools.Deploy.LiveTests/Azure.Mcp.Tools.Deploy.LiveTests.csproj" />
<Project Path="../../tools/Azure.Mcp.Tools.Deploy/tests/Azure.Mcp.Tools.Deploy.UnitTests/Azure.Mcp.Tools.Deploy.UnitTests.csproj" />
</Folder>
<Folder Name="/tools/Azure.Mcp.Tools.DocumentDb/" />
<Folder Name="/tools/Azure.Mcp.Tools.DocumentDb/src/">
<Project Path="../../tools/Azure.Mcp.Tools.DocumentDb/src/Azure.Mcp.Tools.DocumentDb.csproj" />
</Folder>
<Folder Name="/tools/Azure.Mcp.Tools.DocumentDb/tests/">
<Project Path="../../tools/Azure.Mcp.Tools.DocumentDb/tests/Azure.Mcp.Tools.DocumentDb.UnitTests/Azure.Mcp.Tools.DocumentDb.UnitTests.csproj" />
</Folder>
<Folder Name="/tools/Azure.Mcp.Tools.EventGrid/" />
<Folder Name="/tools/Azure.Mcp.Tools.EventGrid/src/">
<Project Path="../../tools/Azure.Mcp.Tools.EventGrid/src/Azure.Mcp.Tools.EventGrid.csproj" />
Expand Down
13 changes: 13 additions & 0 deletions servers/Azure.Mcp.Server/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -851,6 +851,18 @@ Check out the remote hosting [azd templates](https://github.com/microsoft/mcp/bl

* "List my Advisor recommendations"

### 🗄️ Azure Cosmos DB for MongoDB (vCore)

* "Connect to my DocumentDB instance"
* "List all databases in DocumentDB"
* "Show me collections in database 'mydb'"
* "Find documents in collection 'users' where status is active"
* "Count documents in collection 'orders'"
* "Insert a document into collection 'products'"
* "Update documents in collection 'inventory'"
* "Create an index on collection 'customers'"
* "Get statistics for database 'analytics'"

### 🔎 Azure AI Search

* "What indexes do I have in my Azure AI Search service 'mysvc'?"
Expand Down Expand Up @@ -1042,6 +1054,7 @@ The Azure MCP Server provides tools for interacting with **41+ Azure service are
- 📦 **Azure Container Apps** - Container hosting
- 📦 **Azure Container Registry (ACR)** - Container registry management
- 📊 **Azure Cosmos DB** - NoSQL database operations
- 🗄️ **Azure Cosmos DB for MongoDB (vCore)** - MongoDB vCore database operations
- 🧮 **Azure Data Explorer** - Analytics queries and KQL
- 🐬 **Azure Database for MySQL** - MySQL database management
- 🐘 **Azure Database for PostgreSQL** - PostgreSQL database management
Expand Down
45 changes: 45 additions & 0 deletions servers/Azure.Mcp.Server/docs/azmcp-commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -257,6 +257,51 @@ azmcp server info
azmcp advisor recommendations list --subscription <subscription>
```

### Azure Cosmos DB for MongoDB (vCore) Operations

```bash
# Connection Management
azmcp documentdb connect --connection-string <connection-string>
azmcp documentdb disconnect
azmcp documentdb connection status

# Database Operations
azmcp documentdb database list
azmcp documentdb database stats --db-name <database-name>
azmcp documentdb database info --db-name <database-name>
azmcp documentdb database drop --db-name <database-name>

# Collection Operations
azmcp documentdb collection stats --db-name <database-name> --collection-name <collection-name>
azmcp documentdb collection rename --db-name <database-name> --collection-name <old-name> --new-collection-name <new-name>
azmcp documentdb collection drop --db-name <database-name> --collection-name <collection-name>
azmcp documentdb collection sample --db-name <database-name> --collection-name <collection-name> --sample-size 10

# Document Operations
azmcp documentdb find documents --db-name <database-name> --collection-name <collection-name> --query '{"status": "active"}'
azmcp documentdb count documents --db-name <database-name> --collection-name <collection-name> --query '{}'
azmcp documentdb insert document --db-name <database-name> --collection-name <collection-name> --document '{"name": "example"}'
azmcp documentdb insert many --db-name <database-name> --collection-name <collection-name> --documents '[{"name": "doc1"}, {"name": "doc2"}]'
azmcp documentdb update document --db-name <database-name> --collection-name <collection-name> --filter '{"_id": "123"}' --update '{"$set": {"status": "updated"}}'
azmcp documentdb update many --db-name <database-name> --collection-name <collection-name> --filter '{"status": "pending"}' --update '{"$set": {"status": "processed"}}'
azmcp documentdb delete document --db-name <database-name> --collection-name <collection-name> --filter '{"_id": "123"}'
azmcp documentdb delete many --db-name <database-name> --collection-name <collection-name> --filter '{"status": "archived"}'
azmcp documentdb aggregate --db-name <database-name> --collection-name <collection-name> --pipeline '[{"$group": {"_id": "$status", "count": {"$sum": 1}}}]'
azmcp documentdb find and modify --db-name <database-name> --collection-name <collection-name> --query '{"_id": "123"}' --update '{"$set": {"modified": true}}'

# Query Explanation
azmcp documentdb explain find --db-name <database-name> --collection-name <collection-name> --query '{}'
azmcp documentdb explain count --db-name <database-name> --collection-name <collection-name> --query '{}'
azmcp documentdb explain aggregate --db-name <database-name> --collection-name <collection-name> --pipeline '[{"$match": {"status": "active"}}]'

# Index Operations
azmcp documentdb index create --db-name <database-name> --collection-name <collection-name> --keys '{"fieldName": 1}'
azmcp documentdb index list --db-name <database-name> --collection-name <collection-name>
azmcp documentdb index drop --db-name <database-name> --collection-name <collection-name> --index-name <index-name>
azmcp documentdb index stats --db-name <database-name> --collection-name <collection-name>
azmcp documentdb current ops
```

### Azure AI Search Operations

```bash
Expand Down
Loading