astra-db-mcp
by: datastax
An MCP server for Astra DB workloads
📌Overview
Purpose: To provide a Model Context Protocol (MCP) server for seamless interaction with Astra DB, enabling Large Language Models (LLMs) to function as agents that interact with external systems.
Overview: The Astra DB MCP Server enhances the capabilities of LLMs by facilitating interactions with Astra DB databases, allowing users to perform various operations on collections and records within the database effortlessly. It integrates into existing MCP clients, offering a streamlined setup process.
Key Features:
-
Comprehensive Database Operations: Includes functionalities for managing collections (creation, updating, and deletion) and records (listing, adding, updating, and deleting).
-
User-Friendly Integration: Simple configuration process to connect with MCP clients like Claude Desktop and Cursor, with specific instructions and flexibility for different operating systems.
Astra DB MCP Server
A Model Context Protocol (MCP) server for interacting with Astra DB. MCP extends the capabilities of Large Language Models (LLMs) by allowing them to interact with external systems as agents.
Prerequisites
You need to have a running Astra DB database. If you don't have one, you can create a free database here. From there, you can get two things you need:
- An Astra DB Application Token
- The Astra DB API Endpoint
To learn how to get these, please read the getting started docs at:
https://docs.datastax.com/en/astra-db-serverless/api-reference/dataapiclient.html#set-environment-variables
Adding to an MCP client
Here's how you can add this server to your MCP client.
Claude Desktop
To add this to Claude Desktop (https://claude.ai/download), go to Preferences -> Developer -> Edit Config and add this JSON blob to claude_desktop_config.json
:
{
"mcpServers": {
"astra-db-mcp": {
"command": "npx",
"args": ["-y", "@datastax/astra-db-mcp"],
"env": {
"ASTRA_DB_APPLICATION_TOKEN": "your_astra_db_token",
"ASTRA_DB_API_ENDPOINT": "your_astra_db_endpoint"
}
}
}
}
Windows PowerShell Users:
npx
is a batch command so modify the JSON as follows:
"command": "cmd",
"args": ["/k", "npx", "-y", "@datastax/astra-db-mcp"],
Cursor
To add this to Cursor (https://www.cursor.com/), go to Settings -> Cursor Settings -> MCP
From there, add the server by clicking the "+ Add New MCP Server" button, where you will be brought to an mcp.json
file.
Tip: There is a
~/.cursor/mcp.json
representing your global MCP settings, and a project-specific.cursor/mcp.json
file. You probably want to install this MCP server into the project-specific file.
Add the same JSON as indicated in the Claude Desktop instructions.
Alternatively, you may be presented with a wizard, where you can enter the following values (for Unix-based systems):
- Name: Whatever you want
- Type: Command
- Command:
env ASTRA_DB_APPLICATION_TOKEN=your_astra_db_token ASTRA_DB_API_ENDPOINT=your_astra_db_endpoint npx -y @datastax/astra-db-mcp
Once added, your editor will be fully connected to your Astra DB database.
Available Tools
The server provides the following tools for interacting with Astra DB:
GetCollections
: Get all collections in the databaseCreateCollection
: Create a new collection in the databaseUpdateCollection
: Update an existing collection in the databaseDeleteCollection
: Delete a collection from the databaseListRecords
: List records from a collection in the databaseGetRecord
: Get a specific record from a collection by IDCreateRecord
: Create a new record in a collectionUpdateRecord
: Update an existing record in a collectionDeleteRecord
: Delete a record from a collectionFindRecord
: Find records in a collection by field valueBulkCreateRecords
: Create multiple records in a collection at onceBulkUpdateRecords
: Update multiple records in a collection at onceBulkDeleteRecords
: Delete multiple records from a collection at onceOpenBrowser
: Open a web browser for authentication and setupHelpAddToClient
: Get assistance with adding Astra DB client to your MCP clientEstimateDocumentCount
: Get estimate of the number of documents in a collection
Changelog
All notable changes to this project will be documented in the CHANGELOG.md file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Contributors
See project contributors on GitHub.