The SingleStore MCP Server enables natural language interaction with SingleStore resources through the Model Context Protocol (MCP). With this server, you can:
Workspace Management: List, retrieve details, and create virtual workspaces with user access
SQL Execution: Run read-only SQL queries on connected workspaces with structured results
Organization Management: Set active organization, retrieve details, list regions, and access billing and usage metrics
Notebook Management: Create and manage Jupyter notebooks, access samples, and schedule execution jobs
Job Management: Create, monitor, and retrieve execution history for scheduled jobs
File Management: List and verify existence of files in shared or personal spaces
Metadata Access: Retrieve project and user IDs for API operations
Security: Ensure credentials are never displayed or logged
Enables database operations with SingleStore, including executing SQL queries, creating workspaces, managing notebooks, scheduling jobs, and accessing workspace information. Provides tools for retrieving organization details, working with virtual workspaces, and managing database resources.
SingleStore MCP Server
Model Context Protocol (MCP) is a standardized protocol designed to manage context between large language models (LLMs) and external systems. This repository provides an installer and an MCP Server for Singlestore, enabling seamless integration.
With MCP, you can use Claude Desktop, Cursor, or any compatible MCP client to interact with SingleStore using natural language, making it easier to perform complex operations effortlessly.
Requirements
Python >= v3.11.0
uvx installed on your python environment
Claude Desktop, Cursor, or another supported LLM client
Client Setup
1. Init Command
The simplest way to set up the MCP server is to use the initialization command:
This command will:
Authenticate the user
Automatically locate the configuration file for your platform
Create or update the configuration to include the SingleStore MCP server
Provide instructions for starting the server
You can also explicitly pass a <SINGLESTORE_API_KEY>
:
To specify a client (e.g., claude
or cursor
), use the --client
flag:
2. Installing via Smithery
To install mcp-server-singlestore
automatically via Smithery:
Replace <client>
with claude
or cursor
as needed.
3. Manual Configuration
Claude Desktop and Cursor
Add the following configuration to your client configuration file:
- { "mcpServers": { "singlestore-mcp-server": { "command": "uvx", "args": [ "singlestore-mcp-server", "start", "<SINGLESTORE_API_KEY>" ] } } }
Restart your client after making changes to the configuration.
Components
Tools
The server implements the following tools:
workspace_groups_info: Retrieve details about the workspace groups accessible to the user
No arguments required
Returns details of the workspace groups
workspaces_info: Retrieve details about the workspaces in a specific workspace group
Arguments:
workspaceGroupID
(string)Returns details of the workspaces
organization_info: Retrieve details about the user's current organization
No arguments required
Returns details of the organization
list_of_regions: Retrieve a list of all regions that support workspaces for the user
No arguments required
Returns a list of regions
execute_sql: Execute SQL operations on a connected workspace
Arguments:
workspace_group_identifier
,workspace_identifier
,username
,password
,database
,sql_query
Returns the results of the SQL query in a structured format
list_virtual_workspaces: List all starter workspaces accessible to the user
No arguments required
Returns details of available starter workspaces
create_virtual_workspace: Create a new starter workspace with a user
Arguments:
name
: Name of the starter workspacedatabase_name
: Name of the database to createusername
: Username for accessing the workspacepassword
: Password for the userworkspace_group
: Object containingname
(optional) andcellID
(mandatory)
Returns details of the created workspace and user
execute_sql_on_virtual_workspace: Execute SQL operations on a virtual workspace
Arguments:
virtual_workspace_id
,username
,password
,sql_query
Returns the results of the SQL query in a structured format including data, row count, columns, and status
list_notebook_samples: List all notebook samples available in SingleStore Spaces
No arguments required
Returns details of available notebook samples
create_notebook: Create a new notebook in the user's personal space
Arguments:
notebook_name
,content
(optional)Returns details of the created notebook
list_personal_files: List all files in the user's personal space
No arguments required
Returns details of all files in the user's personal space
create_scheduled_job: Create a new scheduled job to run a notebook
Arguments:
name
: Name for the jobnotebook_path
: Path to the notebook to executeschedule_mode
: Once or Recurringexecution_interval_minutes
: Minutes between executions (optional)start_at
: When to start the job (optional)description
: Description of the job (optional)create_snapshot
: Whether to create notebook snapshots (optional)runtime_name
: Name of the runtime environmentparameters
: Parameters for the job (optional)target_config
: Target configuration for the job (optional)
Returns details of the created job
get_job_details: Get details about a specific job
Arguments:
job_id
Returns detailed information about the specified job
list_job_executions: List execution history for a specific job
Arguments:
job_id
,start
(optional),end
(optional)Returns execution history for the specified job
Dockerization
Building the Docker Image
To build the Docker image for the MCP server, run the following command in the project root:
Running the Docker Container
To run the Docker container, use the following command:
Using Docker Secrets
To securely pass secrets to the container, create a Docker secret and mount it:
Then, run the container with the secret:
remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Tools
An implementation of the Model Context Protocol (MCP) server for SingleStore that enables natural language interaction with SingleStore databases through compatible LLM clients like Claude Desktop and Cursor.
Related Resources
Related MCP Servers
- -securityAlicense-qualityA Model Context Protocol (MCP) server that enables LLMs to interact directly with MongoDB databases. Query collections, inspect schemas, and manage data seamlessly through natural language.Last updated -79170MIT License
- AsecurityAlicenseAqualityAn educational implementation of a Model Context Protocol server that demonstrates how to build a functional MCP server for integrating with various LLM clients like Claude Desktop.Last updated -1131MIT License
- -securityAlicense-qualityA Model Context Protocol (MCP) server implementation that enables LLMs to interact with the Osmosis protocol, allowing for querying and transaction functionality through natural language.Last updated -9MIT License
- AsecurityFlicenseAqualityA ready-to-use starter implementation of the Model Context Protocol (MCP) server that enables applications to provide standardized context for LLMs with sample resources, tools, and prompts.Last updated -21