analytics-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ANALYTICS_DB_PATH | No | Path 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
| Capability | Details |
|---|---|
| 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
| Name | Description |
|---|---|
| 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_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 |
| 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_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
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Each tool has a clear, distinct purpose: listing tables, describing schemas, importing data, running custom queries, and performing common aggregations. No overlap or ambiguity.
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.
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.
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.