MCP server for interacting with SingleStore Management API and services.
939
0
16 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 |
Dockerfile | https://github.com/singlestore-labs/mcp-server-singlestore/blob/main/Dockerfile |
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. |
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_notebook
Create 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 | string optional | Optional interval in minutes for recurring jobs |
mode | string optional | Job mode (options: "Once", "Recurring") |
create_notebook_file
Create 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_workspace
Create 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 | string optional | Cloud provider for the workspace (e.g., "AWS", "GCP", "Azure") |
region_name | string optional | Region where the workspace should be deployed (e.g., "us-west-2", "europe-west1") |
delete_job
Delete a scheduled job by its ID.
Parameters | Type | Description |
---|---|---|
job_id | string | ID of the job to delete |
get_job
Retrieve details of a scheduled job by its ID.
Parameters | Type | Description |
---|---|---|
job_id | string | ID of the job to retrieve |
get_user_info
Retrieve 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_regions
List 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_regions
List 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_workspaces
List 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_info
Retrieve information about the current user's organization in SingleStore.
Returns organization details including:
- orgID: Unique identifier for the organization
- name: Organization display name
resume_workspace
Resume a workspace within a specified workspace group in SingleStore.
Parameters | Type | Description |
---|---|---|
workspace_id | string | Unique identifier of the workspace to resume |
run_sql
Use this tool to execute a single SQL statement against a SingleStore database.
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 | string optional | (optional) Database name to use |
terminate_starter_workspace
Permanently 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_file
Upload 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 | string optional | Optional. Either "shared" or "personal". If not provided, user will be prompted. |
upload_name | string optional | Optional. Name of the file after upload (with or without .ipynb extension). |
workspace_groups_info
List 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_info
List 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>"
}
}
}
}
Manual installation
You can install the MCP server using:
Installation for