Skip to main content

setup

Verify NocoDB connection and MCP setup. Use when: - "check my NocoDB connection" - "verify MCP is working" - "test NocoDB setup" - "is NocoDB connected?" - "troubleshoot NocoDB access"

Source facts

Repository
Agents-Store/opencode-plugins
Last source activity
October 3, 2026 at 23:16
Detected SKILL.md language
English
Stars
0
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
setup
description
Verify NocoDB connection and MCP setup. Use when: - "check my NocoDB connection" - "verify MCP is working" - "test NocoDB setup" - "is NocoDB connected?" - "troubleshoot NocoDB access"
# NocoDB Setup Verification `nocodb-ops` works through the NocoDB **MCP server**. The optional REST variables (`NOCODB_URL`, `NOCODB_TOKEN`) are only for the `curl` recipes in **cli-reference**. ## Prerequisites Before running verification, confirm these environment variables are set: | Variable | Required | Description | |----------|----------|-------------| | `NOCODB_MCP_URL` | Yes (MCP) | Full MCP endpoint URL. NocoDB Cloud and licensed self-hosted: `https://<host>/mcp` (Cloud: `https://app.nocodb.com/mcp`). Community Edition: the per-endpoint URL `https://<host>/mcp/<ncId>` shown in the base's MCP settings. | | `NOCODB_MCP_TOKEN` | Yes (MCP) | MCP token, sent as the `xc-mcp-token` header (still accepted; NocoDB's newer primary header is `x-api-key`). Create it where the MCP connection is created -- see "MCP connection options". | | `NOCODB_URL` | No (REST) | Base instance URL without a trailing slash, e.g. `https://<host>` (`https://app.nocodb.com` on NocoDB Cloud). Used by the `curl` recipes. | | `NOCODB_TOKEN` | No (REST) | NocoDB API token, sent as the `xc-token` header. Create it under **Team & Settings → API Tokens → Add New Token**. | | `NOCODB_VERBOSE` | No | Set to `1` to print resolved IDs from the optional official `nocodb.sh` script. | Legacy alias: `NOCODB_API_TOKEN` is the former name of `NOCODB_TOKEN`. Wrappers may keep reading it as an alias (`export NOCODB_TOKEN="${NOCODB_TOKEN:-$NOCODB_API_TOKEN}"`); the official `nocodb.sh` reads only `NOCODB_TOKEN`, and every recipe in this plugin uses `NOCODB_TOKEN`. The MCP token and the API token are **distinct** and are created in different places. Do not reuse one variable for both transports (see `LEARNINGS.md`, 2026-05-06). The plugin's `.mcp.json` uses `${NOCODB_MCP_URL}` and `${NOCODB_MCP_TOKEN}` (via the `xc-mcp-token` header) to configure the `nocodb` HTTP MCP server. ### MCP connection options | Option | How | |--------|-----| | MCP token | Cloud / licensed: Account Settings → **MCP** tab → New connection (choose Access and Tools & Permissions). Community Edition: Overview → Settings → Model Context Protocol → New MCP Endpoint. Put the token in `NOCODB_MCP_TOKEN`. | | OAuth | Cloud: connect to `https://app.nocodb.com/mcp` without a token. Self-hosted: `https://<host>/mcp`. | Also confirm: 1. **MCP server connected** -- the plugin's `nocodb` server is active and its tools appear as `mcp__plugin_nocodb-ops_nocodb__<tool>` 2. **Base accessible** -- at least one NocoDB base is shared with the connection's user ## Verification Steps Run these checks in order. Stop at the first failure and check the troubleshooting table below. ### Step 1 -- Who am I? (`whoami`) Call `mcp__plugin_nocodb-ops_nocodb__whoami` with no parameters (Cloud / licensed servers). - **Pass:** names the user the connection acts as, the base it is pinned to, and the permissions granted -- "what you can do". Effective authority is the intersection of that grant and the user's role on each resource. - **Tool missing or an error:** the server may be Community Edition or an older release without `whoami`; go to Step 2. ### Step 2 -- Test connection Call `mcp__plugin_nocodb-ops_nocodb__getTablesList` with no parameters. - **Pass:** Returns a list of table names and IDs. - **Fail:** Connection error or authentication error. See troubleshooting. ### Step 3 -- Verify read access Pick any table ID from Step 2. Call `mcp__plugin_nocodb-ops_nocodb__queryRecords` with that `tableId` and `pageSize: 1`. - **Pass:** Returns one record (or an empty list if the table has no data). - **Fail:** Permission error or invalid table ID. ### Step 4 -- Verify count access Call `mcp__plugin_nocodb-ops_nocodb__countRecords` with the same `tableId`. - **Pass:** Returns a number (even zero is fine). - **Fail:** Aggregation permissions may be restricted. ### Step 5 -- Verify base info Call `mcp__plugin_nocodb-ops_nocodb__getBaseInfo` with no parameters. - **Pass:** Returns base name, ID, and metadata. - **Fail:** The connection may lack base-level access. ### Step 6 -- Which edition? (`listTools`) ``` mcp__plugin_nocodb-ops_nocodb__listTools category: "records" ``` - **Cloud / licensed:** the answer names `upsertRecords`, `updateRecordsByCondition` and `linkRecordsByDisplayValue` -- the extra record tools are available through `callTool` (see **mcp-patterns**). - **Community Edition:** `listTools` is absent or errors. The server offers the original record tools only; everything in this plugin still works, with batches of up to 100 records via `createRecords` / `updateRecords`. ## Troubleshooting | Symptom | Likely Cause | Fix | |---------|-------------|-----| | "Protected resource does not match" | `NOCODB_MCP_URL` does not match the endpoint the server expects | Cloud / licensed: `https://<host>/mcp`. Community Edition: use the full `/mcp/<ncId>` URL from the base's MCP settings | | Connection refused | Server down or wrong URL | Check `NOCODB_MCP_URL`, then `curl -sSI "$NOCODB_URL"` to confirm the host answers; restart the session | | 401 Unauthorized | `NOCODB_MCP_TOKEN` is wrong, **revoked**, or the connection was restricted (its Tools & Permissions allowlist) | Recreate or re-open the connection where it was created (see "MCP connection options") and update `NOCODB_MCP_TOKEN` | | 403 Forbidden | The connection's user lacks permission for this base | Share the base with the user, or use a connection with a higher role | | Timeout | Network issue or server overloaded | Check server status, try again | | Empty table list | No tables in the base, or wrong base | Ask `whoami` which base the connection is pinned to | | "Tool not found" for `mcp__plugin_nocodb-ops_nocodb__<tool>` | The plugin's MCP server did not start (missing `NOCODB_MCP_URL` / `NOCODB_MCP_TOKEN`), or the tool is a hidden one | Confirm both variables are set in the shell that launched Claude Code, then restart the session. For `upsertRecords`, `importCsv`, `listTrash` and the like call `listTools(category)` then `callTool` | | `listTools` missing | Community Edition (record tools only) | Use the listed record tools; hidden tools do not exist on this edition | ## What This Skill Does NOT Cover - **Installing or configuring the MCP server** -- that is an admin task handled during provisioning. - **Creating tokens** -- the MCP token is created with the MCP connection (Account Settings → MCP tab on Cloud / licensed; the base's MCP settings on Community Edition); the API token under Team & Settings → API Tokens. - **Database or base creation** -- create bases through the NocoDB web interface first. ## After Verification Once all steps pass, you are ready to: - Browse tables and schemas with the **mcp-patterns** skill - Create, read, update, and delete records with the **record-management** skill - Build filtered views and reports with other plugin skills
View on GitHub