MCP Firebird
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DB_HOST | No | The Firebird database host | localhost |
| DB_PORT | No | The Firebird database port | 3050 |
| DB_USER | No | The Firebird database user | SYSDBA |
| SSE_PORT | No | Port for SSE transport | 3003 |
| LOG_LEVEL | No | Logging level (e.g., debug, info, warn, error) | info |
| CORS_ORIGIN | No | Allowed CORS origins (comma-separated) | |
| DB_DATABASE | Yes | Path to the Firebird database file (e.g., /path/to/database.fdb) | |
| DB_PASSWORD | No | The Firebird database password | |
| CORS_HEADERS | No | Allowed CORS headers (comma-separated) | |
| CORS_METHODS | No | Allowed CORS methods (comma-separated) | |
| MAX_SESSIONS | No | Maximum concurrent sessions | 1000 |
| TRANSPORT_TYPE | No | Transport protocol type (stdio, sse, http, or unified) | stdio |
| SSE_SESSION_TIMEOUT_MS | No | Session timeout in milliseconds for SSE transport | 1800000 |
| SESSION_CLEANUP_INTERVAL_MS | No | Session cleanup interval in milliseconds | 60000 |
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
} |
| prompts | {
"listChanged": true
} |
| resources | {
"subscribe": true,
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| execute-queryC | Executes a SQL query in the Firebird database. Uses FIRST/ROWS for pagination. |
| list-tablesA | Lists all user tables in the current Firebird database. |
| describe-tableA | Gets the detailed schema (columns, types, etc.) of a specific table. |
| get-field-descriptionsB | Gets the stored descriptions for fields of a specific table (if they exist). |
| analyze-query-performanceB | Analyzes the performance of a SQL query by executing it multiple times and measuring execution time |
| get-execution-planB | Gets the execution plan for a SQL query to understand how the database will execute it |
| analyze-missing-indexesA | Analyzes a SQL query to identify missing indexes that could improve performance |
| execute-batch-queriesB | Executes multiple SQL queries in parallel for improved performance. |
| describe-batch-tablesA | Gets the detailed schema of multiple tables in parallel for improved performance. |
| get-table-dataC | Retrieves data from a specific table with optional filtering, pagination, and ordering. |
| analyze-table-statisticsB | Analyzes statistical information about a table including row count, column statistics, and data distribution. |
| verify-wire-encryptionA | Verifies if the current database connection is using wire encryption (requires native driver). |
| get-database-infoB | Retrieves general information about the connected Firebird database. |
| get-server-infoB | Gets information about the Firebird MCP server and its available tools |
| list-available-toolsA | Lists all tools available on the MCP server |
| get-tool-helpA | Gets detailed information about a specific tool |
| system-health-checkB | Checks system health and database connectivity |
| list-available-eventsA | Lists native events (POST_EVENT) available in database triggers and procedures |
| list-triggersA | Lists all database triggers with their associated table, trigger type, and status |
| describe-triggerA | Gets detailed information about a specific trigger, including its source code, type, sequence, and status |
| list-proceduresA | Lists all stored procedures in the database with input and output parameter information |
| describe-procedureA | Gets detailed information about a specific stored procedure, including its source code and parameters |
| list-functionsA | Lists all functions in the database (UDFs and PSQL functions) |
| describe-functionA | Gets detailed information about a specific function, including its source code (for PSQL functions) |
| list-packagesA | Lists all packages in the database (available in Firebird 3.0+) |
| describe-packageA | Gets detailed information about a specific package, including its header and body source |
| subscribe_to_eventB | Subscribe to a Firebird event (POST_EVENT) to receive proactive notifications |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| database-health-check | Provides a comprehensive guide for analyzing database health, including performance, integrity, and security checks. |
| query-optimization-guide | Provides a step-by-step guide for optimizing SQL queries in Firebird. |
| schema-design-review | Provides a comprehensive guide for reviewing database schema design and suggesting improvements. |
| migration-planning | Provides a comprehensive guide for planning database migrations, schema changes, and data transformations. |
| security-audit | Provides a comprehensive guide for conducting a security audit of the Firebird database. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| database-tables | Resource representing the list of all tables in the database. |
| database-schema | Resource representing the complete database schema with all tables and their relationships. |
| database-statistics | Resource representing general database statistics. |
TDQS
Scored across 27 tools
Most tools are distinct, but there are overlapping clusters: execute-query, get-table-data, and execute-batch-queries all retrieve data, while analyze-query-performance, get-execution-plan, and analyze-missing-indexes have similar performance-analysis purposes. Server introspection tools like list-available-tools, get-tool-help, and get-server-info also blur together somewhat.
Naming is inconsistent: most tools use kebab-case list-/describe-/get-/analyze-/execute- prefixes, but subscribe_to_event uses snake_case, and the 'system-health-check' and 'verify-wire-encryption' do not follow the same verb_noun pattern. The mixed conventions make the set feel less predictable.
At 27 tools, this exceeds the range where each tool clearly earns its place. Several tools are for server introspection (get-server-info, list-available-tools, get-tool-help, system-health-check) and performance analysis (analyze-query-performance, get-execution-plan, analyze-missing-indexes) that could reasonably be consolidated.
The server covers Firebird schema inspection, query execution, performance analysis, and event notification well. Minor gaps exist such as no explicit view/index listing or database write operations, but execute-query may cover some of these and the read/analyze focus appears deliberate.