CSV schema check

csv-schema-check · version 1.0.0 · CSV & tables · free, no key needed

Validate a CSV document against an ordered column list and per-column string constraints.

Use when you need to: csv schema check · validate csv columns · check csv column constraints.

Supported

Not supported

Behavior

Input

Output

Limits

Example

Request input:

{
  "csv": "id,name,amount,note\n1,Ada,1.5,\n-0,Lin,5.,ok\n",
  "columns": [
    {
      "name": "id",
      "constraint": "integer"
    },
    {
      "name": "name",
      "constraint": "nonempty"
    },
    {
      "name": "amount",
      "constraint": "decimal"
    },
    {
      "name": "note",
      "constraint": "any"
    }
  ]
}

Response:

{
  "result": {
    "valid": true,
    "rows_checked": 2,
    "violations": [],
    "truncated": false
  }
}

How to call it

MCP

Connect https://computefirst.net/mcp (setup), then call execute with:

{
  "id": "csv-schema-check",
  "version": "1.0.0",
  "input": {
    "csv": "id,name,amount,note\n1,Ada,1.5,\n-0,Lin,5.,ok\n",
    "columns": [
      {
        "name": "id",
        "constraint": "integer"
      },
      {
        "name": "name",
        "constraint": "nonempty"
      },
      {
        "name": "amount",
        "constraint": "decimal"
      },
      {
        "name": "note",
        "constraint": "any"
      }
    ]
  }
}

HTTP (no key)

curl -X POST https://computefirst.net/v1/tools/csv-schema-check/versions/1.0.0/execute \
  -H "Content-Type: application/json" \
  -d '{"csv":"id,name,amount,note\n1,Ada,1.5,\n-0,Lin,5.,ok\n","columns":[{"name":"id","constraint":"integer"},{"name":"name","constraint":"nonempty"},{"name":"amount","constraint":"decimal"},{"name":"note","constraint":"any"}]}'

The machine-readable contract is at /v1/tools/csv-schema-check/versions/1.0.0.

CLI

node cli.mjs run csv-schema-check 1.0.0 --input input.json --base-url https://computefirst.net

Get the client at /clients/cli/.