← WebMCP Directory

Tool tree

sql.try-mcp.dev

Developer ToolsTools verified
Website
SQL Caterpillar
Explore capabilities
    list-connectionsAnswer

    List the database connections the user has opened up to agents, and which one is active. Never returns credentials.

    View tool JSON
    {
      "name": "list-connections",
      "kind": "answer",
      "impl": "imperative",
      "description": "List the database connections the user has opened up to agents, and which one is active. Never returns credentials.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    get-active-connectionAnswer

    Details of the database connection the notebook is currently pointed at, with a count of schemas and tables.

    View tool JSON
    {
      "name": "get-active-connection",
      "kind": "answer",
      "impl": "imperative",
      "description": "Details of the database connection the notebook is currently pointed at, with a count of schemas and tables.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    list-tablesAnswer

    List tables in the active database with their estimated row counts. Use search-schema instead when looking for something by name.

    View tool JSON
    {
      "name": "list-tables",
      "kind": "answer",
      "impl": "imperative",
      "description": "List tables in the active database with their estimated row counts. Use search-schema instead when looking for something by name.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "schema": {
            "type": "string",
            "description": "Restrict to one schema, e.g. 'public'."
          },
          "limit": {
            "type": "number",
            "description": "Maximum tables to return (default 100)."
          }
        }
      }
    }
    search-schemaAnswer

    Fuzzy-search tables and columns by name in the active database. The fastest way to find the right tables in a large schema.

    View tool JSON
    {
      "name": "search-schema",
      "kind": "answer",
      "impl": "imperative",
      "description": "Fuzzy-search tables and columns by name in the active database. The fastest way to find the right tables in a large schema.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Substring to look for in table and column names."
          },
          "limit": {
            "type": "number",
            "description": "Maximum tables to return (default 20, max 50)."
          }
        },
        "required": [
          "query"
        ]
      }
    }
    describe-tablesAnswer

    Full column detail (types, nullability, primary keys) for named tables, plus the foreign keys connecting them. Accepts 'schema.table' or a bare table name.

    View tool JSON
    {
      "name": "describe-tables",
      "kind": "answer",
      "impl": "imperative",
      "description": "Full column detail (types, nullability, primary keys) for named tables, plus the foreign keys connecting them. Accepts 'schema.table' or a bare table name.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "tables": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Table names, e.g. ['public.orders', 'order_items']."
          }
        },
        "required": [
          "tables"
        ]
      }
    }
    get-canvas-focusAnswer

    What the user currently has in focus on the schema canvas: the open table, the search filter, and the highlighted tables. This is the user's own curation of context — prefer these tables when answering an ambiguous question.

    View tool JSON
    {
      "name": "get-canvas-focus",
      "kind": "answer",
      "impl": "imperative",
      "description": "What the user currently has in focus on the schema canvas: the open table, the search filter, and the highlighted tables. This is the user's own curation of context — prefer these tables when answering an ambiguous question.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    list-cellsAnswer

    List the cells in the open notebook with their SQL and last run status. Row data is not included — use get-cell-result for that.

    View tool JSON
    {
      "name": "list-cells",
      "kind": "answer",
      "impl": "imperative",
      "description": "List the cells in the open notebook with their SQL and last run status. Row data is not included — use get-cell-result for that.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    get-cellAnswer

    One notebook cell: its SQL, name and last run status.

    View tool JSON
    {
      "name": "get-cell",
      "kind": "answer",
      "impl": "imperative",
      "description": "One notebook cell: its SQL, name and last run status.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "cellId": {
            "type": "string",
            "description": "Cell id from list-cells."
          }
        },
        "required": [
          "cellId"
        ]
      }
    }
    add-cellAction

    Append a SQL cell to the notebook, optionally running it. The cell is visible to the user and can be edited, saved and re-run by hand.

    View tool JSON
    {
      "name": "add-cell",
      "kind": "act",
      "impl": "imperative",
      "description": "Append a SQL cell to the notebook, optionally running it. The cell is visible to the user and can be edited, saved and re-run by hand.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sql": {
            "type": "string",
            "description": "The SQL statement for the cell."
          },
          "name": {
            "type": "string",
            "description": "Cell title shown in the notebook, e.g. 'Revenue by month'."
          },
          "variableName": {
            "type": "string",
            "description": "Publish this cell's rows as a variable that later cells can reference as :name."
          },
          "run": {
            "type": "boolean",
            "description": "Run the cell immediately and return a preview (default false)."
          },
          "previewRows": {
            "type": "number",
            "description": "Rows to return when run is true (default 20, max 100)."
          }
        },
        "required": [
          "sql"
        ]
      }
    }
    run-sqlAction

    Add a cell for this SQL, run it, and return a small preview of the rows. The one-shot version of add-cell + run-cell. Read-only statements only (SELECT, EXPLAIN, WITH ... SELECT).

    View tool JSON
    {
      "name": "run-sql",
      "kind": "act",
      "impl": "imperative",
      "description": "Add a cell for this SQL, run it, and return a small preview of the rows. The one-shot version of add-cell + run-cell. Read-only statements only (SELECT, EXPLAIN, WITH ... SELECT).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sql": {
            "type": "string",
            "description": "A single read-only SQL statement."
          },
          "name": {
            "type": "string",
            "description": "Cell title shown in the notebook."
          },
          "variableName": {
            "type": "string",
            "description": "Publish the rows as :name for later cells."
          },
          "previewRows": {
            "type": "number",
            "description": "Rows to return (default 20, max 100)."
          }
        },
        "required": [
          "sql"
        ]
      }
    }
    run-cellAction

    Run an existing notebook cell and return a preview of its rows. Waits for the query to finish.

    View tool JSON
    {
      "name": "run-cell",
      "kind": "act",
      "impl": "imperative",
      "description": "Run an existing notebook cell and return a preview of its rows. Waits for the query to finish.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "cellId": {
            "type": "string",
            "description": "Cell id from list-cells."
          },
          "previewRows": {
            "type": "number",
            "description": "Rows to return (default 20, max 100)."
          }
        },
        "required": [
          "cellId"
        ]
      }
    }
    update-cellAction

    Edit an existing cell's SQL, title, or variable name — the way to iterate after a query fails, instead of piling up new cells.

    View tool JSON
    {
      "name": "update-cell",
      "kind": "act",
      "impl": "imperative",
      "description": "Edit an existing cell's SQL, title, or variable name — the way to iterate after a query fails, instead of piling up new cells.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "cellId": {
            "type": "string",
            "description": "Cell id from list-cells."
          },
          "sql": {
            "type": "string",
            "description": "Replacement SQL."
          },
          "name": {
            "type": "string",
            "description": "Replacement cell title."
          },
          "variableName": {
            "type": "string",
            "description": "Replacement variable name; empty string clears it."
          }
        },
        "required": [
          "cellId"
        ]
      }
    }
    delete-cellSensitive Action

    Delete a notebook cell. The notebook always keeps at least one cell.

    View tool JSON
    {
      "name": "delete-cell",
      "kind": "transact",
      "impl": "imperative",
      "description": "Delete a notebook cell. The notebook always keeps at least one cell.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "cellId": {
            "type": "string",
            "description": "Cell id from list-cells."
          }
        },
        "required": [
          "cellId"
        ]
      }
    }
    get-cell-resultAnswer

    Page through the rows a cell returned. Prefer aggregating in SQL over paging: the user can already see the full grid.

    View tool JSON
    {
      "name": "get-cell-result",
      "kind": "answer",
      "impl": "imperative",
      "description": "Page through the rows a cell returned. Prefer aggregating in SQL over paging: the user can already see the full grid.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "cellId": {
            "type": "string",
            "description": "Cell id from list-cells."
          },
          "offset": {
            "type": "number",
            "description": "First row to return (default 0)."
          },
          "limit": {
            "type": "number",
            "description": "Rows to return (default 20, max 100)."
          }
        },
        "required": [
          "cellId"
        ]
      }
    }
    list-variablesAnswer

    List the notebook variables published by cells. Reference them in SQL as :name (or :name.column).

    View tool JSON
    {
      "name": "list-variables",
      "kind": "answer",
      "impl": "imperative",
      "description": "List the notebook variables published by cells. Reference them in SQL as :name (or :name.column).",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }
    set-variableAction

    Set a notebook variable directly, for parameterising later cells. Accepts a scalar, an array of scalars, or an array of row objects.

    View tool JSON
    {
      "name": "set-variable",
      "kind": "act",
      "impl": "imperative",
      "description": "Set a notebook variable directly, for parameterising later cells. Accepts a scalar, an array of scalars, or an array of row objects.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Variable name, referenced in SQL as :name."
          },
          "value": {
            "type": [
              "string",
              "number",
              "boolean",
              "array",
              "object",
              "null"
            ],
            "description": "Scalar, array of scalars, or array of row objects."
          }
        },
        "required": [
          "name",
          "value"
        ]
      }
    }
    delete-variableSensitive Action

    Remove a notebook variable.

    View tool JSON
    {
      "name": "delete-variable",
      "kind": "transact",
      "impl": "imperative",
      "description": "Remove a notebook variable.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Variable name."
          }
        },
        "required": [
          "name"
        ]
      }
    }
    list-saved-queriesAnswer

    List queries saved in the query library, optionally filtered by a search term matching the name or SQL.

    View tool JSON
    {
      "name": "list-saved-queries",
      "kind": "answer",
      "impl": "imperative",
      "description": "List queries saved in the query library, optionally filtered by a search term matching the name or SQL.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "search": {
            "type": "string",
            "description": "Substring of the name or SQL."
          },
          "limit": {
            "type": "number",
            "description": "Maximum results (default 25)."
          }
        }
      }
    }
    load-saved-queryAction

    Load a saved query into the notebook as a new cell, optionally running it.

    View tool JSON
    {
      "name": "load-saved-query",
      "kind": "act",
      "impl": "imperative",
      "description": "Load a saved query into the notebook as a new cell, optionally running it.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "queryId": {
            "type": "string",
            "description": "Id from list-saved-queries."
          },
          "run": {
            "type": "boolean",
            "description": "Run it after loading (default false)."
          }
        },
        "required": [
          "queryId"
        ]
      }
    }
    save-queryAction

    Save SQL to the query library so it survives the session. Lands in the user's first workspace and folder.

    View tool JSON
    {
      "name": "save-query",
      "kind": "act",
      "impl": "imperative",
      "description": "Save SQL to the query library so it survives the session. Lands in the user's first workspace and folder.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "Name for the saved query."
          },
          "sql": {
            "type": "string",
            "description": "The SQL to save."
          },
          "tags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Optional tags."
          }
        },
        "required": [
          "name",
          "sql"
        ]
      }
    }
    focus-tablesAction

    Highlight tables on the user's schema canvas and centre the view on them, dimming everything else. Use this to show which tables you are working with before running queries against them.

    View tool JSON
    {
      "name": "focus-tables",
      "kind": "act",
      "impl": "imperative",
      "description": "Highlight tables on the user's schema canvas and centre the view on them, dimming everything else. Use this to show which tables you are working with before running queries against them.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "tables": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Table names to highlight, e.g. ['public.orders', 'order_items']."
          },
          "open": {
            "type": "boolean",
            "description": "Also open the column panel for the first table (default false)."
          }
        },
        "required": [
          "tables"
        ]
      }
    }
    clear-canvas-focusAction

    Undim the schema canvas, restoring the full schema view after focus-tables.

    View tool JSON
    {
      "name": "clear-canvas-focus",
      "kind": "act",
      "impl": "imperative",
      "description": "Undim the schema canvas, restoring the full schema view after focus-tables.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      }
    }