mcp-firebird mcp

v1.1.0 · MCP Tool · database · registry.pascalai.org

Firebird 2.5/3.0/4.0 and InterBase via FireDAC native driver. Operations: query (SELECT → rows JSON), execute (DML/DDL), execute_tx (transaction), list_tables, describe (columns), list_databases. database param is the file path or alias (e.g. '/data/sales.fdb' or 'sales').

firebirdinterbasedatabasesqlfiredacembedded

Input Parameters

ParameterTypeDescription
operationrequired string Operation to perform. One of: query, execute, execute_tx, list_tables, describe, list_databases.
hostoptional string Firebird server host or IP. Use 'localhost' for local embedded connections. Default: localhost.
portoptional integer Firebird port. Default: 3050. Default: 3050.
databaserequired string Database file path or alias (e.g. '/data/sales.fdb', 'C:\data\sales.fdb', or alias 'sales' if configured in aliases.conf).
usernameoptional string Firebird username. Default is typically 'SYSDBA'. Default: SYSDBA.
passwordoptional string Firebird password (default install uses 'masterkey').
sQLoptional string SQL statement. Required for query and execute operations. Firebird uses FIRST/ROWS for limiting rows.
sQLListoptional string JSON array string of SQL statements for execute_tx. All executed in a single transaction.
tableoptional string Table name. Required for describe operation.
schemaoptional string Schema filter (Firebird does not use schemas; this param is ignored but accepted for API consistency).
maxRowsoptional integer Maximum rows to return for query. Default: 100. Default: 100.
timeoutoptional integer Query timeout in seconds. Default: 30. Default: 30.

Output Fields

FieldTypeDescription
ok boolean
rows array[object]
affected integer
tables array[object]
columns array[object]
databases array[string]
error string

Examples

Query recent invoices

// Input
{
  "operation": "query",
  "host": "localhost",
  "database": "/data/sales.fdb",
  "username": "SYSDBA",
  "password": "masterkey",
  "sQL": "SELECT FIRST 10 INV_ID, CUSTOMER, AMOUNT FROM INVOICES ORDER BY INV_DATE DESC"
}

// Output
{
  "ok": true,
  "rows": [
    {
      "INV_ID": 1001,
      "CUSTOMER": "Acme",
      "AMOUNT": 500.0
    }
  ]
}

Insert a record

// Input
{
  "operation": "execute",
  "host": "localhost",
  "database": "/data/sales.fdb",
  "username": "SYSDBA",
  "password": "masterkey",
  "sQL": "INSERT INTO CUSTOMERS (NAME, EMAIL) VALUES ('John Doe', 'john@example.com')"
}

// Output
{
  "ok": true,
  "affected": 1
}

List all tables

// Input
{
  "operation": "list_tables",
  "host": "localhost",
  "database": "/data/sales.fdb",
  "username": "SYSDBA",
  "password": "masterkey"
}

// Output
{
  "ok": true,
  "tables": [
    {
      "TABLE_NAME": "INVOICES"
    },
    {
      "TABLE_NAME": "CUSTOMERS"
    }
  ]
}

Describe table columns

// Input
{
  "operation": "describe",
  "host": "localhost",
  "database": "/data/sales.fdb",
  "username": "SYSDBA",
  "password": "masterkey",
  "table": "INVOICES"
}

// Output
{
  "ok": true,
  "columns": [
    {
      "COLUMN_NAME": "INV_ID",
      "DATA_TYPE": "INTEGER"
    }
  ]
}

Install & Discovery

Install

ppm install mcp-firebird

Get JSON Schema

GET /v1/packages/mcp-firebird/1.1.0/schema

Discover by keyword

GET /v1/mcp/discover?q=firebird
Discovery hint: Install with ppm install mcp-firebird or invoke remotely via POST /v1/invoke/mcp-firebird on the MCP Service.