Skip to content

MCP Firebird 0.2.3 (Windows x64)

Choose a tag to compare

@danieleteti danieleteti released this 13 Jul 16:07

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

  1. Unzip anywhere. The exe, .env.example and loggerpro.stdio.json sit together in that folder; there is no bin\ subfolder in the download.
  2. Copy .env.example to .env, beside the exe, and fill it in. (It starts with a dot, so Explorer and ls hide it unless you ask for hidden files. It is in the zip.)
  3. firebird.client_lib must point at the fbclient.dll of 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.
  4. Install it into your AI agent: register MCPFirebird.exe as 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 .env lives 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.