URSY.DEVPART OF THE URSY NETWORKSign inBuild with URSY

Every contract sourcedEvery check datedGaps shown, never filledBuild with URSY

Capabilities

CSV to JSON Converter

Parse CSV with quoted fields and export rows as JSON objects or arrays.

How this capability is exposed

Stable ID
ursy.io:csv-to-json-converter
Owning service
URSY.io
Runtime
@ursy/runtime · 1.0.0
Execution modes
browser, node, mcp-local, remote_transient
Remote execution
Available at the owning service
Remote endpoint
https://api.ursy.io/v1/run
Input schemaOutput schemaOpen the owning interface ↗

Capability declarations describe what the service exposes. They are not a guarantee of availability or permission to execute an operation.

Accepted contract

REGISTRY JSON
{
    "schema": "ursy.io/capability/v1",
    "id": "ursy.io:csv-to-json-converter",
    "slug": "csv-to-json-converter",
    "name": "CSV to JSON Converter",
    "version": "1.0.0",
    "summary": "Parse CSV with quoted fields and export rows as JSON objects or arrays.",
    "intents": [
        "CSV to JSON converter",
        "csv to json",
        "convert csv",
        "spreadsheet to json"
    ],
    "aliases": [],
    "keywords": [
        "csv to json",
        "convert csv",
        "spreadsheet to json"
    ],
    "category": "developer-tools",
    "deterministic": true,
    "side_effects": false,
    "network_required": false,
    "execution": {
        "preferred": "local",
        "supported": [
            "browser",
            "node",
            "mcp-local",
            "remote_transient"
        ],
        "local_executable": true,
        "remote_safe": true,
        "remote_enabled": true,
        "remote_endpoint": "https://api.ursy.io/v1/run"
    },
    "privacy": {
        "input_leaves_device_by_default": false,
        "payload_logged": false
    },
    "input_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
            "text": {
                "type": "string",
                "maxLength": 5242880,
                "minLength": 1
            },
            "delimiter": {
                "type": "string",
                "enum": [
                    ",",
                    ";",
                    "\t",
                    "|"
                ],
                "default": ","
            },
            "infer": {
                "type": "string",
                "enum": [
                    "text",
                    "infer"
                ],
                "default": "text"
            },
            "locale": {
                "type": "string",
                "minLength": 2,
                "maxLength": 35,
                "pattern": "^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$",
                "default": "en-US",
                "description": "Locale for display text; numerical result fields are locale independent."
            }
        },
        "required": [
            "text"
        ],
        "additionalProperties": false
    },
    "output_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
            "text": {
                "type": "string",
                "maxLength": 26214400
            },
            "metrics": {
                "type": "array",
                "items": {
                    "type": "object",
                    "required": [
                        "label",
                        "value"
                    ],
                    "properties": {
                        "label": {
                            "type": "string",
                            "maxLength": 100
                        },
                        "value": {
                            "type": [
                                "string",
                                "number"
                            ],
                            "maxLength": 1000
                        }
                    },
                    "additionalProperties": false
                },
                "maxItems": 10
            }
        },
        "required": [
            "text",
            "metrics"
        ],
        "additionalProperties": false
    },
    "examples": [
        {
            "input": {
                "text": "name,age\nAda,42",
                "infer": "infer"
            },
            "output": {
                "text": "[\n  {\n    \"name\": \"Ada\",\n    \"age\": 42\n  }\n]",
                "metrics": [
                    {
                        "label": "Rows",
                        "value": "1"
                    },
                    {
                        "label": "Columns",
                        "value": "2"
                    }
                ]
            }
        }
    ],
    "limits": {
        "max_input_bytes": 5308416,
        "max_output_bytes": 26214400,
        "max_json_depth": 100,
        "max_csv_cells": 1000000
    },
    "canonical_url": "https://ursy.io/developer-tools/csv-to-json-converter/",
    "descriptor_url": "https://ursy.io/wp-json/ursy-tools/v2/capabilities/csv-to-json-converter",
    "runtime": {
        "package": "@ursy/runtime",
        "version": "1.0.0",
        "module": "@ursy/runtime",
        "entry": "run",
        "slug": "csv-to-json-converter"
    },
    "health": {
        "status": "ok",
        "last_tested": "2026-09-11T17:24:33.220Z",
        "runtime_version": "1.0.0",
        "golden_fixtures": 2,
        "node_contract_tests": 2,
        "browser_verified": true,
        "tests_passed": 7,
        "tests_total": 7,
        "test_suite": "tests/runtime-canary.test.mjs",
        "browser_suite": "tests/runtime-browser.py"
    },
    "audit": {
        "classification": "A",
        "engine": "json-tools",
        "mode": "csv-to-json",
        "headless_possible": true,
        "notes": "Optional file reader must be kept in the browser adapter; the string operation is a separate headless candidate."
    },
    "assumptions": [],
    "formulae": [],
    "input_schema_id": "ursy.io:csv-to-json-converter:input_schema",
    "output_schema_id": "ursy.io:csv-to-json-converter:output_schema",
    "service_id": "ursy-io",
    "parent_id": "",
    "source_url": "https://ursy.io/wp-json/ursy-tools/v2/catalog",
    "source_type": "capability_manifest",
    "verified_at": "2026-10-14 06:31:09",
    "revision": "d597567fa00c1e570c20e2bf3147546faa5abad10164c7b8864447c7daf347d6",
    "type": "capabilities",
    "source": {
        "url": "https://ursy.io/wp-json/ursy-tools/v2/catalog",
        "type": "capability_manifest"
    },
    "last_verified_at": "2026-10-14 06:31:09",
    "stale": false
}