Baserow Schema MCP

io.github.aficiomaquinasPublished by GitHub account aficiomaquinasv2.0.2Updated Oct 24, 2026

Generic Baserow API client MCP server with automatic 2FA (TOTP) auth and OpenAPI validation.

The publisher's own server: Baserow

VerifiedSTDIODesktop onlyDatabasesDeveloper Tools

Overview

AI-generated overview

A local MCP server that gives an assistant a generic client for the full Baserow REST API, with automatic TOTP two-factor login and OpenAPI path validation.

What you can do
Call any Baserow API endpoint with a method, path, optional JSON body and query parameters, covering tables, fields, views, filters, rows and workspace admin endpoints, including batch row operations and deletes. Check the current authentication state, token expiry and remaining token lifetime for debugging the login lifecycle. Requests are checked against a bundled Baserow OpenAPI spec; unknown or wrong-method paths still execute but return a warning with similar paths or allowed methods.
When to use it
Use it when an assistant needs to change Baserow structure (tables, fields, views, filters) or reach admin endpoints that curated row-CRUD servers do not expose, or when the Baserow account requires TOTP two-factor authentication.
Requirements
Runs locally as a Node.js process (Node.js 20 or newer), installed from the npm package or built from source. Needs a Baserow instance URL, account email, account password and the account's base32 TOTP secret, supplied through the environment variables BASEROW_API_URL, BASEROW_USERNAME, BASEROW_PASSWORD and BASEROW_TOTP_SECRET. The Baserow account must have 2FA enabled, and the machine needs network access to the instance.
Before you install
The server holds the account password (BASEROW_PASSWORD) and the 2FA TOTP secret (BASEROW_TOTP_SECRET) in its environment; anyone with these can log in as the user. The generic tool can write, change and delete data and schema, including deleting tables, and validation is non-blocking, so a mistyped path is still sent. All requests go to the configured Baserow instance.

Installation

In SourceWeft

  1. Open Baserow Schema MCP in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-baserow-schema

MCP server for Baserow: a generic Baserow API client with 2FA authentication (TOTP) and OpenAPI validation.

One tool, the entire Baserow REST API. Schema changes (tables, fields, views, filters), row CRUD, workspace admin — anything documented in the OpenAPI spec is callable, with JWT auth handled automatically.

Why

Baserow's official MCP handles curated data CRUD but not the full API surface (schema changes, views, filters, admin endpoints). In 2026, plain password auth without 2FA is not acceptable. This MCP solves both:

  • Full API access: any endpoint from the bundled Baserow OpenAPI spec via one generic tool
  • 2FA support: automatic TOTP-based authentication — no manual token management
  • OpenAPI guard: requests are validated against the spec; mistyped paths get a hint instead of a mystery 404
  • Designed for agents: AI agents can modify table structure without human intervention

Tools (2)

baserow_api

Generic HTTP client for any Baserow API endpoint.

ParameterTypeDescription
methodGET | POST | PATCH | DELETE | PUTHTTP method
pathstringAPI path starting with /api/
bodyobject, optionalJSON body for POST/PATCH/PUT
queryobject, optionalQuery params as string key-value pairs

Examples:

GET    /api/database/tables/database/123/                    → list tables in database 123POST   /api/database/views/table/456/       {name, type}     → create viewPOST   /api/database/views/789/filters/     {field, type, value} → create filterDELETE /api/database/tables/456/                             → delete tablePATCH  /api/database/rows/table/456/11/    {status}   ?user_field_names=true → update rowPOST   /api/database/rows/table/456/batch/ {items:[...]}      → batch update

Auth is handled automatically: just provide method, path, and optional body/query. If the OpenAPI spec doesn't recognize the path/method, the response is prefixed with a warning (⚠️ OpenAPI spec: ...) including similar paths — the request still executes (validation is non-blocking).

auth_status

Returns the current authentication state: authenticated, token expiry, and remaining lifetime of access/refresh tokens. Useful for debugging the auth lifecycle.

OpenAPI Validation

The server bundles the official Baserow OpenAPI spec (v2.2.2, 275 paths, openapi.json at the repo root). Before each request:

  • Path + method found → request proceeds silently.
  • Path exists, method wrong → warning lists the available methods for that path.
  • Path unknown → warning plus up to 5 similar paths from the spec.

The spec is loaded lazily from dist/../openapi.json; if missing, validation is skipped gracefully and requests proceed unvalidated.

Authentication

Supports Baserow's two-step 2FA flow:

  1. POST /api/user/token-auth/ → temporary 2FA token (~60 s)
  2. POST /api/two-factor-auth/verify/ (with TOTP code) → JWT access_token + refresh_token
  3. POST /api/user/token-refresh/ → new access_token, silently (no 2FA needed)

Token lifecycle:

  • access_token: ~10 minutes (expiry read from the JWT exp claim, refreshed 2 min before expiry)
  • refresh_token: ~7 days (full 2FA re-login 5 min before expiry)
  • temp_token: ~60 seconds (only for the 2FA verify step)

Credentials are passed via environment variables — never hardcoded.

Setup

Prerequisites

  • Node.js ≥ 20
  • Baserow account with 2FA enabled
  • Baserow TOTP secret (base32)

Install

bash
git clone [email protected]:aficiomaquinas/mcp-baserow-schema.gitcd mcp-baserow-schemanpm installnpm run build

Configure

Set environment variables (or use a .env file — see .env.example):

bash
BASEROW_API_URL=https://your-baserow-instance.com[email protected]BASEROW_PASSWORD=your_passwordBASEROW_TOTP_SECRET=YOUR_BASE32_TOTP_SECRET

Hermes Agent

Add to ~/.hermes/profiles/<profile>/config.yaml:

yaml
mcp_servers:  baserow-mcp:    command: node    args:      - /path/to/mcp-baserow-schema/dist/index.js    enabled: true    env:      BASEROW_API_URL: https://baserow.example.com      BASEROW_USERNAME: [email protected]      BASEROW_PASSWORD: your_password      BASEROW_TOTP_SECRET: YOUR_BASE32_TOTP_SECRET

Claude Desktop

Add to claude_desktop_config.json:

json
{  "mcpServers": {    "baserow-schema": {      "command": "node",      "args": ["/path/to/mcp-baserow-schema/dist/index.js"],      "env": {        "BASEROW_API_URL": "https://baserow.example.com",        "BASEROW_USERNAME": "[email protected]",        "BASEROW_PASSWORD": "your_password",        "BASEROW_TOTP_SECRET": "YOUR_BASE32_TOTP_SECRET"      }    }  }}

Field Types

Since baserow_api is a pass-through client, every Baserow field type is supported — the JSON body just needs to match the API contract for the endpoint. Reference list of field types:

text, long_text, url, email, number, rating, boolean, date, last_modified, last_modified_by, created_on, created_by, duration, link_row, file, single_select, multiple_select, phone_number, formula, count, rollup, lookup, multiple_collaborators, uuid, autonumber, password, ai

Endpoint details: consult the bundled openapi.json or the Baserow API docs.

Usage with Official Baserow MCP

Since v2, this MCP covers data operations too (rows, batches, search, sort), so the official Baserow MCP is optional:

  • mcp-baserow-schema → everything: schema, data, views, filters, admin
  • Official Baserow MCP → curated row-CRUD UX, if you prefer it for data work

Running both side by side is fine; they don't conflict.

Releasing

Maintainers: see docs/RELEASING.md. Releases are fully automated (release-it + GitHub Actions with OIDC trusted publishing) — never bump versions, tags, or server.json manually.

License

MIT

Source: README.md at commit 1ccfac9

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v2.0.2LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts

Other Baserow integrations