Skip to main content
Glama
jonasliesas

singlestore-mcp-server

by jonasliesas

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
SINGLESTORE_URLNoAlternative to SINGLESTORE_HOST: user:password@host:port/database
SINGLESTORE_HOSTNoThe SingleStore host. Either this or SINGLESTORE_URL must be set.
SINGLESTORE_PORTNoThe SingleStore port. Defaults to 3306.3306
SINGLESTORE_USERNoThe SingleStore user. Defaults to root.root
SINGLESTORE_DATABASENoDefault database for queries.
SINGLESTORE_PASSWORDNoThe SingleStore password.
SINGLESTORE_SSL_DISABLEDNoSet to 'true' for a self-managed cluster without TLS configured.false

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
run_sqlA

Run one arbitrary SQL statement against SingleStore and return the results.

Use this for SELECT/DML/DDL that isn't pipeline-specific. For creating,
altering, starting, stopping, dropping or inspecting Pipelines, prefer
the dedicated pipeline tools -- they validate the statement type and are
easier to call correctly.

Args:
    sql: The statement to execute.
    database: Database to run it against (defaults to the connection's
        configured database).
    max_rows: Truncate returned rows to this many (does not affect how
        many rows the statement itself processes).
list_databasesA

List all databases visible to the connected user.

list_tablesA

List tables (and views) in a database.

Args:
    database: Database to list tables from (defaults to the connection's
        configured database).
describe_tableA

Show column definitions for a table.

Args:
    table: Table name.
    database: Database the table lives in (defaults to the connection's
        configured database).
list_pipelinesA

List all pipelines in a database and their current state (Running/Stopped/Error).

Args:
    database: Database to list pipelines from (defaults to the
        connection's configured database).
pipeline_statusA

Get the current state of one pipeline by name.

Equivalent to SHOW PIPELINES filtered down to a single pipeline. Returns
an empty row list if no pipeline with that name exists.

Args:
    pipeline_name: Name of the pipeline to look up.
    database: Database the pipeline lives in (defaults to the
        connection's configured database).
get_pipeline_ddlA

Get the full CREATE PIPELINE statement that reproduces an existing pipeline.

Args:
    pipeline_name: Name of the pipeline.
    database: Database the pipeline lives in (defaults to the
        connection's configured database).
create_pipelineA

Create a new pipeline from a full CREATE PIPELINE statement.

Pipeline definitions vary a lot by source (S3, Kafka, Azure Blob, GCS,
filesystem, ...), format (CSV/JSON/Avro/Parquet) and optional transforms,
so this tool takes the complete statement text rather than trying to
model every variant as separate parameters. It only checks that the
statement actually starts with CREATE [OR REPLACE] PIPELINE before
running it. Creating a pipeline does not start it -- call start_pipeline
afterwards, or include FOREGROUND handling via start_pipeline.

Example create_pipeline_sql:
    CREATE PIPELINE my_pipeline AS
    LOAD DATA S3 's3://my-bucket/path/'
    CONFIG '{"region": "us-east-1"}'
    CREDENTIALS '{"aws_access_key_id": "...", "aws_secret_access_key": "..."}'
    INTO TABLE my_table
    FIELDS TERMINATED BY ',';

Args:
    create_pipeline_sql: The full CREATE PIPELINE ... statement.
    database: Database to create the pipeline in (defaults to the
        connection's configured database).
alter_pipelineA

Alter an existing pipeline from a full ALTER PIPELINE statement.

Commonly used to change the connection string/credentials or reset
offsets. Takes the full statement for the same reason as create_pipeline:
the set of alterable clauses is source-specific.

Args:
    alter_pipeline_sql: The full ALTER PIPELINE ... statement.
    database: Database the pipeline lives in (defaults to the
        connection's configured database).
start_pipelineA

Start a pipeline so it begins (or resumes) loading data.

Args:
    pipeline_name: Name of the pipeline to start.
    database: Database the pipeline lives in (defaults to the
        connection's configured database).
    foreground: If true, run synchronously and report rows loaded /
        errors in the result instead of returning immediately. Useful
        for a one-off load or for testing a pipeline end to end.
    limit_batches: Only valid with foreground=True: stop after this many
        batches instead of running indefinitely.
    if_not_running: Add IF NOT RUNNING so starting an already-running
        pipeline is a no-op instead of an error.
stop_pipelineA

Stop a running pipeline.

Args:
    pipeline_name: Name of the pipeline to stop.
    database: Database the pipeline lives in (defaults to the
        connection's configured database).
drop_pipelineA

Delete a pipeline. Running pipelines are stopped automatically before being dropped.

Args:
    pipeline_name: Name of the pipeline to drop.
    database: Database the pipeline lives in (defaults to the
        connection's configured database).
    if_exists: Add IF EXISTS so dropping a nonexistent pipeline is a
        no-op instead of an error.
test_pipelineA

Test an existing pipeline: extract and transform data without loading it into the table.

The pipeline must already exist and must be stopped first (SingleStore
errors if you test a running pipeline) -- call stop_pipeline before this
if needed. Nothing is written to the destination table; this is purely
for validating that the source/format/transform config works.

Args:
    pipeline_name: Name of the pipeline to test.
    database: Database the pipeline lives in (defaults to the
        connection's configured database).
    limit: Only pull this many rows/messages instead of testing the
        whole batch.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jonasliesas/singlestore-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server