Skip to main content
Glama
Michael2150

flamerobin-mcp-server

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
Logging__LogLevel__DefaultNoThe server's startup log output is written to stdout, which Claude reads as part of the MCP handshake — any unexpected output causes Claude to fail to recognize the server.None

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_triggersA

List all user-defined triggers formatted as 'TRIGGER_NAME (on TABLE_NAME)'. database: key from list_databases. filter: optional case-insensitive regex applied to the full formatted string — e.g. pass 'on INVOICES' to see only triggers on a specific table. Pass just the trigger name (without the suffix) to get_trigger_source.

list_proceduresA

List all user-defined stored procedures in the database. database: key from list_databases. filter: optional case-insensitive regex on procedure name. Returns procedure names — pass a name to get_procedure_source to read the PSQL body.

list_objectsA

List user tables, views, or both in a Firebird database. database: key from list_databases. type: 'tables' (non-view relations only) | 'views' | 'all' (default). filter: optional case-insensitive regex on object name. Returns a list of names — pass them to describe_table, get_table_constraints, get_foreign_keys, etc.

execute_scriptA

Execute multiple SQL statements separated by semicolons. Each statement runs in its own transaction and is committed independently — if one fails the remaining statements still run. database: key from list_databases. sqlScript: semicolon-separated DDL or DML statements. Returns one status line per statement showing OK or ERROR with a message.

describe_tableA

Return column definitions for a table or view. database: key from list_databases. table: exact table or view name from list_objects — automatically uppercased. brief: if true returns only {name, type, nullable}; default false returns full detail including length, precision, scale, default_src, description. filter: optional case-insensitive regex on column name.

run_queryA

Execute a read-only SELECT query and return results as a list of row objects. database: key from list_databases. sql: a SELECT statement using Firebird SQL syntax — use 'SELECT FIRST n ...' or 'SELECT ... ROWS n' to limit rows, NOT 'LIMIT n' (which is not valid Firebird syntax). maxRows: server-side cap on rows returned (default 500). columns: optional comma-separated column names to include — useful to reduce noise from wide tables. Returns a list of row objects keyed by column name.

list_generatorsA

List all user-defined generators (sequences / auto-increment counters) with their current values. database: key from list_databases. filter: optional case-insensitive regex on generator name. Returns [{name, value}].

list_active_connectionsA

List all currently active non-system connections to the database (from MON$ATTACHMENTS). Useful for checking who is connected before running DDL or maintenance operations. database: key from list_databases. Returns [{id, user, address, process, connected_at}].

get_table_constraintsA

Return all constraints defined on a table: PRIMARY KEY, FOREIGN KEY, UNIQUE, and CHECK. database: key from list_databases. table: table name from list_objects — automatically uppercased. Returns [{constraint, type, index}]. For full FK relationship details (referenced columns, ON DELETE/UPDATE rules) use get_foreign_keys instead.

execute_ddlA

Execute a single DDL statement (CREATE TABLE, ALTER TABLE, DROP TABLE, CREATE INDEX, etc.) and auto-commit. database: key from list_databases. sql: one DDL statement — do not include a trailing semicolon. Returns 'DDL executed and committed.' on success, or throws on error.

analyze_missing_indexesA

For a given table, report which columns are covered by an active index (as the leading segment) and which are not. database: key from list_databases. table: table name from list_objects — automatically uppercased. filterColumns: optional comma-separated list of column names to check — useful when you only care about columns used in WHERE clauses or JOINs; omit to check all columns. Returns [{column, has_index, index (name or null), unique}].

list_databasesA

List all servers and databases registered in FlameRobin. Returns [{key, host, port, path}]. The 'key' value is what you must pass as the 'database' parameter in every other tool. filter: optional case-insensitive regex applied to key, host, or path — omit to list all.

get_foreign_keysA

Return foreign key relationships for a table. database: key from list_databases. table: table name from list_objects — automatically uppercased. direction: 'out' = FK constraints this table declares (what other tables it references), 'in' = FK constraints on other tables that point to this table (what references it), 'all' (default) = both directions. Returns [{direction, from_table, from_column, to_table, to_column, on_update, on_delete}].

get_view_sourceA

Return the source SQL of a view. database: key from list_databases. view: view name from list_objects (type='views') — automatically uppercased. Returns the SELECT statement that defines the view, or an error message if not found.

execute_dmlA

Execute a single INSERT, UPDATE, or DELETE statement in a transaction and commit. database: key from list_databases. sql: one DML statement — do not include a trailing semicolon. Returns 'Done. Rows affected: N'. Throws and rolls back on error. Use execute_script to run multiple statements.

get_procedure_sourceA

Return the full PSQL source body of a stored procedure. database: key from list_databases. procedure: procedure name from list_procedures — automatically uppercased. Returns the raw PSQL body text, or an error message if not found.

get_trigger_sourceA

Return the full PSQL source body of a trigger. database: key from list_databases. trigger: trigger name from list_triggers (use just the name, not the '(on TABLE)' suffix) — automatically uppercased. Returns the raw PSQL body text, or an error message if not found.

list_rolesA

List all roles defined in the database (used for grouping permissions). database: key from list_databases. filter: optional case-insensitive regex on role name.

get_execution_planA

Return the execution plan for a SELECT query — shows which indexes Firebird will use. Useful for spotting full table scans before running expensive queries. database: key from list_databases. sql: a SELECT statement (not DML) — the query is prepared but not executed, so it is safe to use on large tables. Returns a plan string, e.g. 'PLAN (TABLE NATURAL)' or 'PLAN (TABLE INDEX (INDEX_NAME))'.

get_database_infoA

Return physical metadata for a Firebird database: path, ODS version (On-Disk Structure — indicates the Firebird engine version that created the database), page_size, pages (total allocated pages), sql_dialect (1 = legacy, 3 = standard/recommended), sweep_interval. database: key from list_databases.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Michael2150/flamerobin-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server