Fire in da houseTop Tip:Paying $100+ per month for Perplexity, MidJourney, Runway, ChatGPT and other tools is crazy - get all your AI tools in one site starting at $15 per month with Galaxy AI Fire in da houseCheck it out free

mcp-server-singlestore

MCP.Pizza Chef: singlestore-labs

The mcp-server-singlestore is an MCP server that integrates SingleStore Management API and services with the Model Context Protocol. It allows LLMs and compatible MCP clients to interact with SingleStore databases using natural language commands, simplifying database management and operations. This server supports seamless, real-time context sharing between LLMs and SingleStore, enabling efficient querying, monitoring, and administration through conversational AI interfaces.

Use This MCP server To

Query SingleStore databases using natural language Monitor SingleStore database health and performance Manage SingleStore database configurations via LLM commands Automate SingleStore data retrieval and reporting Integrate SingleStore operations into AI-enhanced workflows Enable conversational database management in MCP clients

README

SingleStore MCP Server

MIT Licence PyPI Downloads Smithery

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:

uvx singlestore-mcp-server init

This command will:

  1. Authenticate the user
  2. Automatically locate the configuration file for your platform
  3. Create or update the configuration to include the SingleStore MCP server
  4. Provide instructions for starting the server

You can also explicitly pass a <SINGLESTORE_API_KEY>:

uvx singlestore-mcp-server init <SINGLESTORE_API_KEY>

To specify a client (e.g., claude or cursor), use the --client flag:

uvx singlestore-mcp-server init <SINGLESTORE_API_KEY> --client=<client>

2. Installing via Smithery

To install mcp-server-singlestore automatically via Smithery:

npx -y @smithery/cli install @singlestore-labs/mcp-server-singlestore --client=<client>

Replace <client> with claude or cursor as needed.

3. Manual Configuration

Claude Desktop and Cursor
  1. Add the following configuration to your client configuration file:
  • Claude Desktop:

  • Cursor

    {
      "mcpServers": {
       "singlestore-mcp-server": {
        "command": "uvx",
        "args": [
          "singlestore-mcp-server",
          "start",
          "<SINGLESTORE_API_KEY>"
        ]
       }
      }
    }
  1. 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 workspace
      • database_name: Name of the database to create
      • username: Username for accessing the workspace
      • password: Password for the user
      • workspace_group: Object containing name (optional) and cellID (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 job
      • notebook_path: Path to the notebook to execute
      • schedule_mode: Once or Recurring
      • execution_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 environment
      • parameters: 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:

docker build -t mcp-server-singlestore .

Running the Docker Container

To run the Docker container, use the following command:

docker run -d \
  -p 8080:8080 \
  --name mcp-server \
  mcp-server-singlestore

Using Docker Secrets

To securely pass secrets to the container, create a Docker secret and mount it:

echo "your-secret-value" | docker secret create mcp_secret -

Then, run the container with the secret:

docker service create \
  --name mcp-server \
  --secret mcp_secret \
  mcp-server-singlestore

mcp-server-singlestore FAQ

How do I install the mcp-server-singlestore?
You can install it via PyPI using 'pip install singlestore-mcp-server' or follow the GitHub repository instructions.
Which MCP clients are compatible with mcp-server-singlestore?
It works with any MCP-compatible client such as Claude Desktop, Cursor, and others supporting the MCP protocol.
Can I use mcp-server-singlestore to perform real-time database monitoring?
Yes, it supports real-time context sharing allowing LLMs to monitor SingleStore database health and performance.
Is the mcp-server-singlestore open source?
Yes, it is open source under the MIT License, with source code available on GitHub.
Does mcp-server-singlestore support multiple LLM providers?
Yes, it is provider-agnostic and works with OpenAI, Claude, Gemini, and other LLMs supporting MCP.
How secure is the communication between the MCP client and mcp-server-singlestore?
The server follows MCP principles for secure, scoped, and observable interactions to ensure safe communication.
Can I extend mcp-server-singlestore to support custom SingleStore APIs?
Yes, the server is designed to be extensible for additional SingleStore Management API endpoints and custom workflows.
What programming language is mcp-server-singlestore written in?
It is primarily written in Python, facilitating easy installation and integration.