Skip to main content
Glama
kshitiz305

analytics-mcp-server

by kshitiz305

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
ANALYTICS_DB_PATHNoPath to a SQLite database file. If not set, the server may use a default sample.db.

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": true
}
logging
{}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
extensions
{
  "io.modelcontextprotocol/ui": {}
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
analytics_list_tablesA

List all user tables in the database together with their row counts.

Use this first to discover what data is available before describing or querying a specific table. It does not read row contents, only metadata.

analytics_describe_tableA

Show a table's column schema, total row count and a few sample rows.

Use this after analytics_list_tables to understand a table's columns (names, types, nullability, primary keys) before writing a query.

analytics_run_queryA

Run a guarded, read-only SQL SELECT query with pagination.

The query is executed over a read-only connection protected by a SQLite authorizer, and is validated to be a single SELECT/WITH statement, so it cannot modify data. Results are paginated via limit/offset.

analytics_aggregateA

Group a table by a column and compute an aggregate — no SQL required.

A convenience workflow tool over the most common analytics pattern. Column and table names are validated against the schema, so it is safe from injection. For anything more complex, use analytics_run_query.

analytics_import_csvA

Load a CSV file into a SQLite table (validated via pandas).

This is the only WRITE tool. Column types are inferred by pandas. The destination table name must be a valid SQL identifier.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4.3/5.0

Scored across 5 tools

Disambiguation5/5

Each tool has a clear, distinct purpose: listing tables, describing schemas, importing data, running custom queries, and performing common aggregations. No overlap or ambiguity.

Naming Consistency4/5

All tools use the 'analytics_' prefix and snake_case. Most follow a verb_noun pattern (e.g., describe_table, list_tables), but 'analytics_aggregate' lacks a noun, which is a minor inconsistency.

Tool Count5/5

With 5 tools covering exploration (list, describe), querying (run, aggregate), and data loading (import), the count is well-scoped for an analytics server. Not too few, not too many.

Completeness4/5

Covers core analytics workflows: schema discovery, custom queries, common aggregations, and data import. Minor gaps include lack of an export tool or more advanced statistical functions, but these can be addressed via custom queries.

Maintenance

ActivityInactive
ResponsivenessNo issues