{
  "service": "nocodb",
  "displayName": "NocoDB",
  "categories": [
    "Data",
    "Productivity"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "API Token",
      "placeholder": "nc_pat_...",
      "description": "NocoDB API token sent in the xc-token header. Create or copy a personal API token from your NocoDB account settings: https://docs.nocodb.com/product-docs/account-settings/api-tokens.",
      "extraFields": [
        {
          "key": "baseUrl",
          "label": "NocoDB Base URL",
          "inputType": "text",
          "required": true,
          "secret": false,
          "placeholder": "https://app.nocodb.com",
          "description": "The root URL of your NocoDB Cloud or self-hosted instance, such as https://app.nocodb.com or https://nocodb.example.com."
        }
      ]
    }
  ],
  "homepageUrl": "https://nocodb.com",
  "actions": [
    {
      "id": "nocodb.count_records",
      "service": "nocodb",
      "name": "count_records",
      "description": "Count records in one NocoDB table, optionally filtered by a where expression.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "where": {
            "type": "string",
            "description": "A NocoDB where expression, such as (Status,eq,Done)."
          },
          "viewId": {
            "type": "string",
            "description": "The NocoDB view ID used to restrict records to a specific view."
          }
        },
        "additionalProperties": false,
        "required": [
          "tableId"
        ],
        "description": "The input payload for counting records in one NocoDB table."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "description": "The number of records matching the query."
          }
        },
        "additionalProperties": false,
        "required": [
          "count"
        ],
        "description": "The NocoDB record count response."
      }
    },
    {
      "id": "nocodb.count_table_records",
      "service": "nocodb",
      "name": "count_table_records",
      "description": "Count records in one NocoDB table using the v3 data API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "where": {
            "type": "string",
            "description": "A NocoDB v3 where expression, such as (Status,eq,Done)."
          },
          "viewId": {
            "type": "string",
            "description": "The NocoDB view ID used to restrict records to a specific view."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId"
        ],
        "description": "The input payload for counting records through the NocoDB v3 data API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "count": {
            "type": "integer",
            "description": "The number of records matching the query."
          }
        },
        "additionalProperties": false,
        "required": [
          "count"
        ],
        "description": "The NocoDB v3 record count response."
      }
    },
    {
      "id": "nocodb.create_records",
      "service": "nocodb",
      "name": "create_records",
      "description": "Create one or more records in a NocoDB table.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A NocoDB record payload keyed by table column names or system fields."
            },
            "description": "Records to create in the table.",
            "minItems": 1
          }
        },
        "additionalProperties": false,
        "required": [
          "tableId",
          "rows"
        ],
        "description": "The input payload for creating NocoDB records."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A NocoDB record returned by the API."
            },
            "description": "Created records returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "rows"
        ],
        "description": "The NocoDB record creation response."
      }
    },
    {
      "id": "nocodb.create_table",
      "service": "nocodb",
      "name": "create_table",
      "description": "Create a table in a NocoDB base using the v3 metadata API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "title": {
            "type": "string",
            "minLength": 1,
            "description": "The table title."
          },
          "description": {
            "anyOf": [
              {
                "type": "string",
                "description": "The table description."
              },
              {
                "type": "null"
              }
            ]
          },
          "sourceId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB source ID."
          },
          "meta": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "NocoDB table metadata options."
          },
          "fields": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "title": {
                  "type": "string",
                  "description": "The field title."
                },
                "type": {
                  "type": "string",
                  "description": "The NocoDB field type."
                }
              },
              "additionalProperties": true,
              "description": "A field to create with a new NocoDB table."
            },
            "description": "Fields to create with the table.",
            "minItems": 1
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "title"
        ],
        "description": "The input payload for creating a NocoDB table."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "table": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The NocoDB table ID."
              },
              "title": {
                "type": "string",
                "description": "The NocoDB table title."
              },
              "table_name": {
                "type": "string",
                "description": "The physical table name, when returned."
              }
            },
            "additionalProperties": true,
            "description": "A NocoDB table metadata object."
          }
        },
        "additionalProperties": false,
        "required": [
          "table"
        ],
        "description": "The NocoDB table creation response."
      }
    },
    {
      "id": "nocodb.create_table_field",
      "service": "nocodb",
      "name": "create_table_field",
      "description": "Create a field in a NocoDB table using the v3 metadata API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "field": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The NocoDB v3 field creation payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId",
          "field"
        ],
        "description": "The input payload for creating a NocoDB table field."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "field": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The NocoDB field ID."
              },
              "title": {
                "type": "string",
                "description": "The NocoDB field title."
              },
              "type": {
                "type": "string",
                "description": "The NocoDB field type."
              }
            },
            "additionalProperties": true,
            "description": "A NocoDB v3 field metadata object."
          }
        },
        "additionalProperties": false,
        "required": [
          "field"
        ],
        "description": "The NocoDB table field creation response."
      }
    },
    {
      "id": "nocodb.create_table_records",
      "service": "nocodb",
      "name": "create_table_records",
      "description": "Create one or more records in a NocoDB table using the v3 data API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Record field values keyed by field title or field ID."
                }
              },
              "additionalProperties": false,
              "required": [
                "fields"
              ],
              "description": "A NocoDB v3 record payload."
            },
            "description": "Records to create in the table.",
            "minItems": 1
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId",
          "records"
        ],
        "description": "The input payload for creating records through the NocoDB v3 data API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1,
                      "description": "The NocoDB record ID as a string."
                    },
                    {
                      "type": "number",
                      "description": "The NocoDB record ID as a number."
                    }
                  ],
                  "description": "The NocoDB record ID value."
                },
                "id_fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Primary key field values for the record."
                },
                "fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Record field values excluding primary key fields."
                }
              },
              "additionalProperties": true,
              "description": "A NocoDB v3 data record."
            },
            "description": "Created records returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "records"
        ],
        "description": "The NocoDB v3 record creation response."
      }
    },
    {
      "id": "nocodb.create_table_view",
      "service": "nocodb",
      "name": "create_table_view",
      "description": "Create a view for a NocoDB table using the v3 metadata API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "view": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The NocoDB v3 view creation payload."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId",
          "view"
        ],
        "description": "The input payload for creating a NocoDB table view."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "view": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The NocoDB view ID."
              },
              "title": {
                "type": "string",
                "description": "The NocoDB view title."
              },
              "type": {
                "type": "string",
                "description": "The NocoDB view type."
              }
            },
            "additionalProperties": true,
            "description": "A NocoDB view metadata object."
          }
        },
        "additionalProperties": false,
        "required": [
          "view"
        ],
        "description": "The NocoDB table view creation response."
      }
    },
    {
      "id": "nocodb.delete_records",
      "service": "nocodb",
      "name": "delete_records",
      "description": "Delete one or more records from a NocoDB table.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A NocoDB record payload keyed by table column names or system fields."
            },
            "description": "Records to delete. Each record must include its NocoDB record ID.",
            "minItems": 1
          }
        },
        "additionalProperties": false,
        "required": [
          "tableId",
          "rows"
        ],
        "description": "The input payload for deleting NocoDB records."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "deleted": {
            "type": "boolean",
            "description": "Whether NocoDB accepted the delete request."
          },
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A NocoDB record returned by the API."
            },
            "description": "Deleted records returned by NocoDB when available."
          }
        },
        "additionalProperties": false,
        "required": [
          "deleted",
          "rows"
        ],
        "description": "The NocoDB record deletion response."
      }
    },
    {
      "id": "nocodb.delete_table",
      "service": "nocodb",
      "name": "delete_table",
      "description": "Delete a NocoDB table using the v3 metadata API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId"
        ],
        "description": "The input payload for deleting a NocoDB table."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "deleted": {
            "type": "boolean",
            "description": "Whether NocoDB accepted the delete request."
          }
        },
        "additionalProperties": false,
        "required": [
          "deleted"
        ],
        "description": "The NocoDB table deletion response."
      }
    },
    {
      "id": "nocodb.delete_table_records",
      "service": "nocodb",
      "name": "delete_table_records",
      "description": "Delete one or more records from a NocoDB table using the v3 data API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1,
                      "description": "The NocoDB record ID as a string."
                    },
                    {
                      "type": "number",
                      "description": "The NocoDB record ID as a number."
                    }
                  ],
                  "description": "The NocoDB record ID value."
                }
              },
              "additionalProperties": false,
              "required": [
                "id"
              ],
              "description": "A NocoDB v3 record delete payload."
            },
            "description": "Records to delete from the table.",
            "minItems": 1
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId",
          "records"
        ],
        "description": "The input payload for deleting records through the NocoDB v3 data API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1,
                      "description": "The NocoDB record ID as a string."
                    },
                    {
                      "type": "number",
                      "description": "The NocoDB record ID as a number."
                    }
                  ],
                  "description": "The NocoDB record ID value."
                },
                "id_fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Primary key field values for the record."
                },
                "fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Record field values excluding primary key fields."
                }
              },
              "additionalProperties": true,
              "description": "A NocoDB v3 data record."
            },
            "description": "Deleted records returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "records"
        ],
        "description": "The NocoDB v3 record deletion response."
      }
    },
    {
      "id": "nocodb.get_base_schema",
      "service": "nocodb",
      "name": "get_base_schema",
      "description": "Get schema metadata for one NocoDB base.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId"
        ],
        "description": "The input payload for reading one NocoDB base schema."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "base": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The NocoDB base schema object."
          }
        },
        "additionalProperties": false,
        "required": [
          "base"
        ],
        "description": "The NocoDB base schema response."
      }
    },
    {
      "id": "nocodb.get_current_user",
      "service": "nocodb",
      "name": "get_current_user",
      "description": "Get the NocoDB user associated with the connected API token.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "The input payload for reading the current NocoDB user."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "user": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The current NocoDB user object."
          }
        },
        "additionalProperties": false,
        "required": [
          "user"
        ],
        "description": "The current NocoDB user response."
      }
    },
    {
      "id": "nocodb.get_table_metadata",
      "service": "nocodb",
      "name": "get_table_metadata",
      "description": "Get metadata for one NocoDB table, including columns and views when available.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          }
        },
        "additionalProperties": false,
        "required": [
          "tableId"
        ],
        "description": "The input payload for reading NocoDB table metadata."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "table": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The NocoDB table ID."
              },
              "title": {
                "type": "string",
                "description": "The NocoDB table title."
              },
              "table_name": {
                "type": "string",
                "description": "The physical table name, when returned."
              }
            },
            "additionalProperties": true,
            "description": "A NocoDB table metadata object."
          },
          "columns": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The NocoDB column ID."
                },
                "title": {
                  "type": "string",
                  "description": "The NocoDB column title."
                },
                "column_name": {
                  "type": "string",
                  "description": "The physical column name, when returned."
                },
                "uidt": {
                  "type": "string",
                  "description": "The NocoDB UI data type."
                }
              },
              "additionalProperties": true,
              "description": "A NocoDB column metadata object."
            },
            "description": "Columns returned for the table."
          }
        },
        "additionalProperties": false,
        "required": [
          "table",
          "columns"
        ],
        "description": "The NocoDB table metadata response."
      }
    },
    {
      "id": "nocodb.list_bases",
      "service": "nocodb",
      "name": "list_bases",
      "description": "List bases visible to the connected NocoDB API token.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false,
        "description": "The input payload for listing NocoDB bases."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "bases": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A NocoDB base object."
            },
            "description": "Bases returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "bases"
        ],
        "description": "The NocoDB base list response."
      }
    },
    {
      "id": "nocodb.list_records",
      "service": "nocodb",
      "name": "list_records",
      "description": "List records from one NocoDB table with optional where, sort, field, limit, and offset parameters.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "description": "The maximum number of records to return."
          },
          "offset": {
            "type": "integer",
            "minimum": 0,
            "description": "The zero-based offset for pagination."
          },
          "where": {
            "type": "string",
            "description": "A NocoDB where expression, such as (Status,eq,Done)."
          },
          "sort": {
            "type": "string",
            "description": "A comma-separated sort expression. Prefix a field with - for descending sort."
          },
          "fields": {
            "type": "string",
            "description": "A comma-separated list of fields to include."
          },
          "viewId": {
            "type": "string",
            "description": "The NocoDB view ID used to restrict records to a specific view."
          },
          "shuffle": {
            "type": "boolean",
            "description": "Whether to shuffle the returned records."
          }
        },
        "additionalProperties": false,
        "required": [
          "tableId"
        ],
        "description": "The input payload for listing records in one NocoDB table."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A NocoDB record returned by the API."
            },
            "description": "Records returned by NocoDB."
          },
          "pageInfo": {
            "anyOf": [
              {
                "type": "object",
                "properties": {
                  "totalRows": {
                    "type": "integer",
                    "description": "The total number of matching rows."
                  },
                  "page": {
                    "type": "integer",
                    "description": "The current page number."
                  },
                  "pageSize": {
                    "type": "integer",
                    "description": "The requested page size."
                  },
                  "isFirstPage": {
                    "type": "boolean",
                    "description": "Whether the current page is the first page."
                  },
                  "isLastPage": {
                    "type": "boolean",
                    "description": "Whether the current page is the last page."
                  }
                },
                "additionalProperties": true,
                "description": "Pagination metadata returned by NocoDB."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "required": [
          "rows",
          "pageInfo"
        ],
        "description": "The NocoDB record list response."
      }
    },
    {
      "id": "nocodb.list_table_records",
      "service": "nocodb",
      "name": "list_table_records",
      "description": "List records from one NocoDB table using the v3 data API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "page": {
            "type": "integer",
            "minimum": 1,
            "description": "The one-based page number to retrieve."
          },
          "nestedPage": {
            "type": "integer",
            "minimum": 1,
            "description": "The one-based page number for nested linked record data."
          },
          "pageSize": {
            "type": "integer",
            "minimum": 1,
            "description": "The maximum number of records to return."
          },
          "where": {
            "type": "string",
            "description": "A NocoDB v3 where expression, such as (Status,eq,Done)."
          },
          "sort": {
            "type": "string",
            "description": "A NocoDB v3 sort expression."
          },
          "fields": {
            "type": "string",
            "description": "A comma-separated list or JSON array string of fields to include."
          },
          "viewId": {
            "type": "string",
            "description": "The NocoDB view ID used to restrict records to a specific view."
          },
          "linksAsLtar": {
            "type": "boolean",
            "description": "Whether Links fields should return full linked record data."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId"
        ],
        "description": "The input payload for listing records through the NocoDB v3 data API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1,
                      "description": "The NocoDB record ID as a string."
                    },
                    {
                      "type": "number",
                      "description": "The NocoDB record ID as a number."
                    }
                  ],
                  "description": "The NocoDB record ID value."
                },
                "id_fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Primary key field values for the record."
                },
                "fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Record field values excluding primary key fields."
                }
              },
              "additionalProperties": true,
              "description": "A NocoDB v3 data record."
            },
            "description": "Records returned by NocoDB."
          },
          "next": {
            "anyOf": [
              {
                "type": "string",
                "description": "The pagination token for the next page."
              },
              {
                "type": "null"
              }
            ]
          },
          "prev": {
            "anyOf": [
              {
                "type": "string",
                "description": "The pagination token for the previous page."
              },
              {
                "type": "null"
              }
            ]
          },
          "nestedNext": {
            "anyOf": [
              {
                "type": "string",
                "description": "The nested pagination token for the next page."
              },
              {
                "type": "null"
              }
            ]
          },
          "nestedPrev": {
            "anyOf": [
              {
                "type": "string",
                "description": "The nested pagination token for the previous page."
              },
              {
                "type": "null"
              }
            ]
          }
        },
        "additionalProperties": false,
        "required": [
          "records",
          "next",
          "prev",
          "nestedNext",
          "nestedPrev"
        ],
        "description": "The NocoDB v3 record list response."
      }
    },
    {
      "id": "nocodb.list_table_views",
      "service": "nocodb",
      "name": "list_table_views",
      "description": "List views for a NocoDB table using the v3 metadata API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId"
        ],
        "description": "The input payload for listing NocoDB table views."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "views": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The NocoDB view ID."
                },
                "title": {
                  "type": "string",
                  "description": "The NocoDB view title."
                },
                "type": {
                  "type": "string",
                  "description": "The NocoDB view type."
                }
              },
              "additionalProperties": true,
              "description": "A NocoDB view metadata object."
            },
            "description": "Views returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "views"
        ],
        "description": "The NocoDB table view list response."
      }
    },
    {
      "id": "nocodb.list_tables",
      "service": "nocodb",
      "name": "list_tables",
      "description": "List tables in a NocoDB base or in a specific base source.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "sourceId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB source ID."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId"
        ],
        "description": "The input payload for listing NocoDB tables."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "tables": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The NocoDB table ID."
                },
                "title": {
                  "type": "string",
                  "description": "The NocoDB table title."
                },
                "table_name": {
                  "type": "string",
                  "description": "The physical table name, when returned."
                }
              },
              "additionalProperties": true,
              "description": "A NocoDB table metadata object."
            },
            "description": "Tables returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "tables"
        ],
        "description": "The NocoDB table list response."
      }
    },
    {
      "id": "nocodb.read_record",
      "service": "nocodb",
      "name": "read_record",
      "description": "Read one record from a NocoDB table by record ID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "recordId": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "description": "The NocoDB record ID as a string."
              },
              {
                "type": "number",
                "description": "The NocoDB record ID as a number."
              }
            ],
            "description": "The NocoDB record ID value."
          },
          "fields": {
            "type": "string",
            "description": "A comma-separated list of fields to include."
          }
        },
        "additionalProperties": false,
        "required": [
          "tableId",
          "recordId"
        ],
        "description": "The input payload for reading one NocoDB record."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "row": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A NocoDB record returned by the API."
          }
        },
        "additionalProperties": false,
        "required": [
          "row"
        ],
        "description": "The NocoDB record read response."
      }
    },
    {
      "id": "nocodb.read_table_record",
      "service": "nocodb",
      "name": "read_table_record",
      "description": "Read one record from a NocoDB table using the v3 data API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "recordId": {
            "anyOf": [
              {
                "type": "string",
                "minLength": 1,
                "description": "The NocoDB record ID as a string."
              },
              {
                "type": "number",
                "description": "The NocoDB record ID as a number."
              }
            ],
            "description": "The NocoDB record ID value."
          },
          "fields": {
            "type": "string",
            "description": "A comma-separated list or JSON array string of fields to include."
          },
          "linksAsLtar": {
            "type": "boolean",
            "description": "Whether Links fields should return full linked record data."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId",
          "recordId"
        ],
        "description": "The input payload for reading one record through the NocoDB v3 data API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "record": {
            "type": "object",
            "properties": {
              "id": {
                "anyOf": [
                  {
                    "type": "string",
                    "minLength": 1,
                    "description": "The NocoDB record ID as a string."
                  },
                  {
                    "type": "number",
                    "description": "The NocoDB record ID as a number."
                  }
                ],
                "description": "The NocoDB record ID value."
              },
              "id_fields": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Primary key field values for the record."
              },
              "fields": {
                "type": "object",
                "properties": {},
                "additionalProperties": true,
                "description": "Record field values excluding primary key fields."
              }
            },
            "additionalProperties": true,
            "description": "A NocoDB v3 data record."
          }
        },
        "additionalProperties": false,
        "required": [
          "record"
        ],
        "description": "The NocoDB v3 record read response."
      }
    },
    {
      "id": "nocodb.update_records",
      "service": "nocodb",
      "name": "update_records",
      "description": "Update one or more records in a NocoDB table.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A NocoDB record payload keyed by table column names or system fields."
            },
            "description": "Records to update. Each record must include its NocoDB record ID.",
            "minItems": 1
          }
        },
        "additionalProperties": false,
        "required": [
          "tableId",
          "rows"
        ],
        "description": "The input payload for updating NocoDB records."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "rows": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "A NocoDB record returned by the API."
            },
            "description": "Updated records returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "rows"
        ],
        "description": "The NocoDB record update response."
      }
    },
    {
      "id": "nocodb.update_table",
      "service": "nocodb",
      "name": "update_table",
      "description": "Update a NocoDB table title, description, display field, or metadata using the v3 metadata API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "title": {
            "type": "string",
            "description": "The new table title."
          },
          "description": {
            "type": "string",
            "description": "The new table description."
          },
          "displayFieldId": {
            "type": "string",
            "description": "The field ID to use as the table display field."
          },
          "meta": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "NocoDB table metadata options."
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId"
        ],
        "description": "The input payload for updating a NocoDB table."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "table": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string",
                "description": "The NocoDB table ID."
              },
              "title": {
                "type": "string",
                "description": "The NocoDB table title."
              },
              "table_name": {
                "type": "string",
                "description": "The physical table name, when returned."
              }
            },
            "additionalProperties": true,
            "description": "A NocoDB table metadata object."
          }
        },
        "additionalProperties": false,
        "required": [
          "table"
        ],
        "description": "The NocoDB table update response."
      }
    },
    {
      "id": "nocodb.update_table_records",
      "service": "nocodb",
      "name": "update_table_records",
      "description": "Update one or more records in a NocoDB table using the v3 data API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1,
                      "description": "The NocoDB record ID as a string."
                    },
                    {
                      "type": "number",
                      "description": "The NocoDB record ID as a number."
                    }
                  ],
                  "description": "The NocoDB record ID value."
                },
                "fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Record field values to update."
                }
              },
              "additionalProperties": false,
              "required": [
                "id",
                "fields"
              ],
              "description": "A NocoDB v3 record update payload."
            },
            "description": "Records to update in the table.",
            "minItems": 1
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId",
          "records"
        ],
        "description": "The input payload for updating records through the NocoDB v3 data API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1,
                      "description": "The NocoDB record ID as a string."
                    },
                    {
                      "type": "number",
                      "description": "The NocoDB record ID as a number."
                    }
                  ],
                  "description": "The NocoDB record ID value."
                },
                "id_fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Primary key field values for the record."
                },
                "fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Record field values excluding primary key fields."
                }
              },
              "additionalProperties": true,
              "description": "A NocoDB v3 data record."
            },
            "description": "Updated records returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "records"
        ],
        "description": "The NocoDB v3 record update response."
      }
    },
    {
      "id": "nocodb.upsert_table_records",
      "service": "nocodb",
      "name": "upsert_table_records",
      "description": "Create or update records in a NocoDB table by matching up to three fields using the v3 data API.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "baseId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB base ID."
          },
          "tableId": {
            "type": "string",
            "minLength": 1,
            "description": "The NocoDB table ID, such as m1abcdefghijk."
          },
          "fieldsToMergeOn": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "A field title or ID."
            },
            "description": "Field titles or IDs used to match existing records.",
            "minItems": 1,
            "maxItems": 3
          },
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Record field values keyed by field title or field ID."
                }
              },
              "additionalProperties": false,
              "required": [
                "fields"
              ],
              "description": "A NocoDB v3 record payload."
            },
            "description": "Records to create or update.",
            "minItems": 1,
            "maxItems": 10
          }
        },
        "additionalProperties": false,
        "required": [
          "baseId",
          "tableId",
          "fieldsToMergeOn",
          "records"
        ],
        "description": "The input payload for upserting records through the NocoDB v3 data API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "records": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "anyOf": [
                    {
                      "type": "string",
                      "minLength": 1,
                      "description": "The NocoDB record ID as a string."
                    },
                    {
                      "type": "number",
                      "description": "The NocoDB record ID as a number."
                    }
                  ],
                  "description": "The NocoDB record ID value."
                },
                "id_fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Primary key field values for the record."
                },
                "fields": {
                  "type": "object",
                  "properties": {},
                  "additionalProperties": true,
                  "description": "Record field values excluding primary key fields."
                }
              },
              "additionalProperties": true,
              "description": "A NocoDB v3 data record."
            },
            "description": "Upserted records returned by NocoDB."
          }
        },
        "additionalProperties": false,
        "required": [
          "records"
        ],
        "description": "The NocoDB v3 record upsert response."
      }
    }
  ]
}
