MCP server for interacting with SingleStore Management API and services.
4.2K
22 Tools
Version 4.43 or later needs to be installed to add the server automatically
Use cases
About
MCP server for interacting with SingleStore Management API and services.
| Attribute | Details |
|---|---|
| Docker Image | mcp/singlestore |
| Author | singlestore-labs |
| Repository | https://github.com/singlestore-labs/mcp-server-singlestore |
| Attribute | Details |
|---|---|
| Dockerfile | https://github.com/singlestore-labs/mcp-server-singlestore/blob/abc33d9f5061f41e382accb8d74f91dbc23cafbd/Dockerfile |
| Commit | abc33d9f5061f41e382accb8d74f91dbc23cafbd |
| Docker Image built by | Docker Inc. |
| Docker Scout Health Score | |
| Verify Signature | COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/singlestore --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub |
| Licence | MIT License |
| Tools provided by this Server | Short Description |
|---|---|
create_job_from_notebook | Create a scheduled job to run a notebook (uploaded to shared space). |
create_notebook_file | Create a Jupyter notebook file in the correct singlestore format and saves it to a temporary location. |
create_starter_workspace | Create a new starter workspace using the SingleStore SDK. |
delete_job | Delete a scheduled job by its ID. |
get_job | Retrieve details of a scheduled job by its ID. |
get_user_info | Retrieve all information about the current user. |
list_regions | List all available deployment regions where SingleStore workspaces can be deployed by the user. |
list_sharedtier_regions | List all regions where shared tier workspaces can be created. |
list_starter_workspaces | List all starter (virtual) workspaces available to the user in SingleStore. |
organization_info | Retrieve information about the current user's organization in SingleStore. |
resume_workspace | Resume a workspace within a specified workspace group in SingleStore. |
run_sql | Use this tool to execute a single SQL statement against a SingleStore database. |
stage_create_folder | Create a folder in Stage. |
stage_delete | Delete a file or folder from Stage. |
stage_get_file | Get a file from Stage by path. |
stage_list_files | List files and folders in a Stage deployment's file system. |
stage_move | Move or rename a file or folder in Stage. |
stage_upload_file | Upload a file to Stage from text content or a local file path. |
terminate_starter_workspace | Permanently delete a starter workspace in SingleStore with safety confirmations. |
upload_notebook_file | Upload a notebook file from a local local_path to SingleStore shared or personal space. |
workspace_groups_info | List all workspace groups accessible to the user in SingleStore. |
workspaces_info | List all workspaces within a specified workspace group in SingleStore. |
create_job_from_notebookCreate a scheduled job to run a notebook (uploaded to shared space).
| Parameters | Type | Description |
|---|---|---|
name | string | Name of the job |
notebook_path | string | Remote path to the shared notebook file |
execution_interval_in_minutes | stringoptional | Optional interval in minutes for recurring jobs |
mode | stringoptional | Job mode (options: "Once", "Recurring") |
create_notebook_fileCreate a Jupyter notebook file in the correct singlestore format and saves it to a temporary location.
This tool validates the provided content against the Jupyter notebook schema and creates a properly
formatted .ipynb file in a temporary location. The content is converted from the simplified format
to the full Jupyter notebook format.
| Parameters | Type | Description |
|---|---|---|
content | object | Notebook content in the format: { |
create_starter_workspaceCreate a new starter workspace using the SingleStore SDK.
This tool provides a modern SDK-based approach to creating starter workspaces,
offering improved reliability and better error handling compared to direct API calls.
| Parameters | Type | Description |
|---|---|---|
database_name | string | Name of the database to create in the starter workspace |
name | string | Unique name for the new starter workspace |
provider | stringoptional | Cloud provider for the workspace (e.g., "AWS", "GCP", "Azure") |
region_name | stringoptional | Region where the workspace should be deployed (e.g., "us-west-2", "europe-west1") |
delete_jobDelete a scheduled job by its ID.
| Parameters | Type | Description |
|---|---|---|
job_id | string | ID of the job to delete |
get_jobRetrieve details of a scheduled job by its ID.
| Parameters | Type | Description |
|---|---|---|
job_id | string | ID of the job to retrieve |
get_user_infoRetrieve all information about the current user.
Returns:
dict: User information including userID, email, firstName, lastName.
Performance Tip:
Cache the returned info when making multiple API calls.
list_regionsList all available deployment regions where SingleStore workspaces can be deployed by the user.
Returns region information including:
- regionID: Unique identifier for the region
- provider: Cloud provider (AWS, GCP, or Azure)
- name: Human-readable region name (e.g., Europe West 2 (London), US West 2 (Oregon))
Use this tool to:
1. Select optimal deployment regions based on:
- Geographic proximity to users
- Compliance requirements
- Cost considerations
- Available cloud providers
2. Plan multi-region deployments
list_sharedtier_regionsList all regions where shared tier workspaces can be created.
This tool provides information about available regions for creating starter workspaces,
including region names and cloud providers.
list_starter_workspacesList all starter (virtual) workspaces available to the user in SingleStore.
Returns detailed information about each starter workspace:
- virtualWorkspaceID: Unique identifier for the workspace
- name: Display name of the workspace
- endpoint: Connection endpoint URL
- databaseName: Name of the primary database
- mysqlDmlPort: Port for MySQL protocol connections
- webSocketPort: Port for WebSocket connections
- state: Current status of the workspace
Use this tool to:
1. Get starter workspace IDs for other operations
2. Check starter workspace availability and status
3. Obtain connection details for database access
organization_infoRetrieve information about the current user's organization in SingleStore.
Returns organization details including:
- orgID: Unique identifier for the organization
- name: Organization display name
resume_workspaceResume a workspace within a specified workspace group in SingleStore.
| Parameters | Type | Description |
|---|---|---|
workspace_id | string | Unique identifier of the workspace to resume |
run_sqlUse this tool to execute a single SQL statement against a SingleStore database.
Generally you should *NOT* specify the username and password when calling this tool.
You must only use those parameters if a previous attempt to call this method failed and
indicated that the `username` and `password` must be specified.
Credentials for a specific workspace and database combination will be cached.
Returns:
- Query results with column names and typed values
- Row count and metadata
- Execution status
- Workspace type ("shared" for starter workspaces, "dedicated" for regular workspaces)
- Workspace name
| Parameters | Type | Description |
|---|---|---|
id | string | Workspace or starter workspace ID |
sql_query | string | The SQL query to execute |
database | stringoptional | (optional) Database name to use |
password | stringoptional | |
username | stringoptional |
stage_create_folderCreate a folder in Stage.
| Parameters | Type | Description |
|---|---|---|
deployment_id | string | The workspace group ID or starter workspace ID. |
path | string | Folder path to create. |
stage_deleteDelete a file or folder from Stage.
For folders, ensure the path ends with '/'.
For files, the path must not end with '/'.
| Parameters | Type | Description |
|---|---|---|
deployment_id | string | The workspace group ID or starter workspace ID. |
path | string | Path of the file or folder to delete. |
stage_get_fileGet a file from Stage by path. Returns metadata, a download URL, or text content.
Recommended workflow: first call with return_type='metadata' to check file size
and type, then decide whether to fetch the full content or just the URL.
| Parameters | Type | Description |
|---|---|---|
deployment_id | string | The workspace group ID or starter workspace ID. |
path | string | Path to the file in Stage. |
return_type | stringoptional | What to return. One of: |
stage_list_filesList files and folders in a Stage deployment's file system.
Lists the contents of the root folder or a specific subfolder in the Stage
file system attached to a SingleStore deployment (workspace group or starter
workspace).
| Parameters | Type | Description |
|---|---|---|
deployment_id | string | The workspace group ID or starter workspace ID. |
path | stringoptional | Optional folder path to list. Defaults to root. Must refer to a |
stage_moveMove or rename a file or folder in Stage. For folders, ensure the path ends with '/'. For files, the path must not end with '/'.
Works like the `mv` command - can rename and/or move into a different folder.
| Parameters | Type | Description |
|---|---|---|
deployment_id | string | The workspace group ID or starter workspace ID. |
destination_path | string | New path for the file or folder. |
source_path | string | Current path of the file or folder. |
stage_upload_fileUpload a file to Stage from text content or a local file path.
Provide exactly one of `content` or `local_path`:
- content: Text content to upload as the file body.
- local_path: Absolute path to a local file to upload.
| Parameters | Type | Description |
|---|---|---|
deployment_id | string | The workspace group ID or starter workspace ID. |
path | string | Destination file path in Stage. |
content | stringoptional | Text content to upload as the file body. |
local_path | stringoptional | Absolute path to a local file to upload. |
terminate_starter_workspacePermanently delete a starter workspace in SingleStore with safety confirmations.
⚠️ WARNING: This action CANNOT be undone. All workspace data will be permanently lost.
Make sure to backup important data before proceeding.
Safety Features:
- Requires explicit user confirmation (if elicitation is supported)
- Validates workspace existence
- Provides warning messages
- Includes error handling
| Parameters | Type | Description |
|---|---|---|
workspace_id | string | Workspace identifier (format: "ws-" followed by alphanumeric chars) |
upload_notebook_fileUpload a notebook file from a local local_path to SingleStore shared or personal space.
This tool validates the notebook schema before uploading. If upload_name or upload_location
are not provided, the user will be prompted through elicitation.
| Parameters | Type | Description |
|---|---|---|
local_path | string | Local file system path to the notebook file (.ipynb) |
upload_location | stringoptional | Optional. Either "shared" or "personal". If not provided, user will be prompted. |
upload_name | stringoptional | Optional. Name of the file after upload (with or without .ipynb extension). |
workspace_groups_infoList all workspace groups accessible to the user in SingleStore.
Returns detailed information for each group:
- workspaceGroupID: Unique identifier for the group
- name: Display name of the workspace group
- region: Region information (name, provider)
- firewallRanges: List of allowed IP ranges for the group
- allowAllTraffic: Whether all traffic is allowed to the group
- createdAt: Timestamp of group creation
- terminatedAt: Timestamp when the group was terminated (if applicable)
Use this tool to:
1. Get workspace group IDs for other operations
2. Plan maintenance windows
Related operations:
- Use workspaces_info to list workspaces within a group
- Use execute_sql to run queries on workspaces in a group
workspaces_infoList all workspaces within a specified workspace group in SingleStore.
Returns detailed information for each workspace:
- createdAt: Timestamp of workspace creation
- deploymentType: Type of deployment (e.g., 'PRODUCTION')
- endpoint: Connection URL for database access
- name: Display name of the workspace
- size: Compute and storage configuration
- state: Current status (e.g., 'ACTIVE', 'PAUSED')
- terminatedAt: End timestamp if applicable
- workspaceGroupID: Workspacegroup identifier
- workspaceID: Unique workspace identifier
| Parameters | Type | Description |
|---|---|---|
workspace_group_id | string | Unique identifier of the workspace group |
{
"mcpServers": {
"singlestore": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"MCP_API_KEY",
"mcp/singlestore"
],
"env": {
"MCP_API_KEY": "<MCP_API_KEY>"
}
}
}
}