MCP Firebird 0.2.3 (Windows x64)
An MCP server that lets an AI assistant diagnose a Firebird database: read its schema, explain a query plan, propose and refute indexes, and measure whether a goal was actually met.
Tested against Firebird 2.5, 3.0, 4.0 and 5.0, not just the newest. A version-blind answer passes 5.0 and lies to a 2.5 DBA.
Install
- Unzip anywhere. The exe,
.env.exampleandloggerpro.stdio.jsonsit together in that folder; there is nobin\subfolder in the download. - Copy
.env.exampleto.env, beside the exe, and fill it in. (It starts with a dot, so Explorer andlshide it unless you ask for hidden files. It is in the zip.) firebird.client_libmust point at thefbclient.dllof YOUR Firebird installation. No client library is bundled on purpose: a mismatched one fails in ways that are hard to read, and only you know which server you are talking to.- Install it into your AI agent: register
MCPFirebird.exeas a stdio MCP server. The agent starts the executable itself and talks to it over stdin/stdout. Nothing runs as a service, nothing listens on a port. The README has the exact recipe for Claude Desktop, Claude Code, Gemini CLI, OpenCode and Cursor. Pass--env <directory>if the.envlives elsewhere: a directory, not a file.
stdout carries JSON-RPC and nothing else; logging goes to a file, per loggerpro.stdio.json.
The tools
fb_info, fb_list_tables, fb_generate_documentation, fb_analyze_query, fb_suggest_indexes, fb_suggest_index_drops, fb_audit_table, fb_evaluate_goal, fb_monitor_transactions, plus prompts and resources.
fb_analyze_config, fb_analyze_host, fb_parse_log, fb_analyze_storage and fb_capture_trace are the Enterprise edition's, and this build tells you so rather than pretending they do nothing.
Since 0.2.2
A sleeping index was answered with a second index. Ask why a query is slow, the plan says CUSTOMERS NATURAL, and there is an index on the filtered column: it is simply INACTIVE. fb_suggest_indexes refused to count a disabled index as usable, correctly, and then forgot it existed: it told you to CREATE INDEX. Follow that and you own two indexes over one column, both written on every INSERT, one of them dead, while the real fix, one ALTER INDEX ... ACTIVE away, was never named. It now names it.
The README said Apache-2.0. The licence line at the bottom contradicted the badge, the licensing chapter and the LICENSE file, all of which say PolyForm Internal Use 1.0.0 from v0.2.0. Anyone who scrolled to the end was told the software may be redistributed. It may not. Fixed, and 0.2.2 is withdrawn for that reason.
Two more claims that were not true: the comparison table advertised a DDL-applying tool behind a firebird.allow_ddl setting (no such tool, no such setting: all nine tools are read-only), and the milestone name "M3" appeared as if the reader knew it.
The README now exists in Italian, Spanish and German, each written as a document in its own language rather than transposed from the English, all four linked from a language bar. The download carries all four, minus the chapters on compiling the binary you just downloaded.
Notes
Windows x64. The exe is a Release build; the compliance suite was run against this binary, not against a debug twin of it.