askDB
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TOP_K | No | Chunks retrieved per search. | 8 |
| ELICIT | No | Prompt the user directly when the client supports MCP elicitation. | true |
| DB_FIELDS | No | Candidate metadata keys for database fields. | |
| MAX_TOP_K | No | Maximum chunks retrieved per search. | 30 |
| MIN_SCORE | No | Extra absolute score floor; 0 disables it. | 0 |
| MAX_TABLES | No | Tables rendered in one answer. | 4 |
| EMBED_MODEL | No | Embedding model. Must match the model used to upsert the index. | multilingual-e5-large |
| SQL_DIALECT | No | SQL dialect hint passed to the model. | MySQ L |
| TEXT_FIELDS | No | Candidate metadata keys for text fields, tried in order. | |
| CACHE_TTL_MS | No | In-process TTL cache for searches, fetches and inventory; 0 disables. | 600000 |
| TABLE_FIELDS | No | Candidate metadata keys for table fields. | |
| AMBIGUITY_GAP | No | Biggest score drop in the top results below which the ranking counts as flat. Raise to be asked more often. | 0.015 |
| MAX_CANDIDATES | No | Length of the shortlist. | 8 |
| MCP_AUTH_TOKEN | No | Required when hosted; unused over stdio. Bearer token for /mcp endpoint. | |
| PINECONE_INDEX | No | Pinecone index name. | ask-db |
| ASK_WHEN_UNSURE | No | Set to false to always answer with the best guess. | true |
| LIST_SCAN_LIMIT | No | Cap on list_tables scanning. | 1000 |
| DEFAULT_DATABASE | No | Scope every lookup to one database, e.g. speed_core_live. | |
| PINECONE_API_KEY | Yes | Required. Your Pinecone API key. | |
| SCAN_CONCURRENCY | No | Record batches fetched in parallel while scanning. | 6 |
| INVENTORY_WAIT_MS | No | How long a search waits for a table scan still warming up; 0 never waits. | 3000 |
| MAX_LISTED_TABLES | No | Names printed by list_tables before asking for a filter. | 120 |
| MAX_RESPONSE_CHARS | No | Whole-response cap in characters. | 7000 |
| PINECONE_NAMESPACE | No | Pinecone namespace. Empty for default namespace. | |
| MAX_CHARS_PER_TABLE | No | Per-table DDL cap in compact detail. | 1400 |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| search_schemaA | Semantic search over the database schema stored in Pinecone. Call this FIRST for any text-to-SQL request: pass the user question verbatim and you get back the relevant tables, columns, types and relationships to write the query against. |
| get_table_schemaA | Fetch the full stored DDL for one or more tables by exact name. Use after search_schema when you need every column of a table, or when the user named the table. |
| list_tablesA | Inventory of every table in the schema index, grouped by database, plus the index configuration. Use it to orient yourself, or when search_schema comes back empty. |
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 3 tools
Each tool has a clearly distinct purpose: search_schema for semantic discovery, get_table_schema for exact DDL retrieval, and list_tables for inventory. There is no overlap or ambiguity between them.
All tool names follow a consistent verb_noun pattern in snake_case (search_schema, get_table_schema, list_tables), making them predictable and easy to understand.
Three tools is minimal but appropriate for the focused domain of database schema exploration. Each tool earns its place and covers the essential operations without being overly sparse.
The tool set fully covers schema discovery: semantic search, exact schema lookup, and table listing. For the stated purpose of enabling text-to-SQL by providing schema info, there are no obvious gaps.