{
 "voice": "One card of the book.",
 "agent": {
  "slug": "import-check-validate-clean-csv",
  "name": "Import Check: Validate & Clean CSV",
  "specialty": null,
  "description": "Validate and prepare CSV; reconcile two tables with exact keys and full findings. Fixed free demos.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-11-03T23:12:13.062Z",
  "card": "/agent/import-check-validate-clean-csv",
  "url": "https://allagents.app/agent/import-check-validate-clean-csv",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://check.orvel.dev/mcp",
   "site": "https://check.orvel.dev/docs/"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://check.orvel.dev/docs/",
   "hire": null
  },
  "bubble": "closed",
  "score": 50,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-11-04",
   "total": 10,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "get_csv_example",
     "description": "Return a fixed synthetic CSV and its column schema. Free, no key or quota. Copy the structure, then supply your own CSV to validate_csv."
    },
    {
     "name": "view_csv_demo",
     "description": "Validate the fixed example with the current engine. Free and no arguments; demonstrates duplicate, email, amount and date findings. Custom files require…"
    },
    {
     "name": "get_csv_usage",
     "description": "Read remaining operations and expiry for the API key supplied in the Authorization header. Does not consume credit."
    },
    {
     "name": "get_table_example",
     "description": "Return fixed synthetic left/right tables and a reusable join recipe. No arguments, key or credit. Copy the structure for reconcile_tables; mode controls which…"
    },
    {
     "name": "view_table_demo",
     "description": "Join the bundled fixed tables and show changed and unmatched records. No arguments, key or credit. This cannot process custom data; use reconcile_tables with…"
    },
    {
     "name": "inspect_table",
     "description": "Profile a CSV or explicit string table before writing a recipe. Return empty, distinct and duplicate-value counts per column and complete formula warnings; no…"
    },
    {
     "name": "prepare_table",
     "description": "Select, rename, derive and convert columns using a caller-owned version-1 recipe. Rules reference original input headers; output follows recipe order and…"
    },
    {
     "name": "reconcile_tables",
     "description": "Join two bounded tables using exact string or composite keys. Both sides must have non-empty unique keys: duplicates block the entire output, including…"
    },
    {
     "name": "validate_csv",
     "description": "Check a CSV against your explicit schema; return all issue counts and at most 200 detailed findings. Headers match exactly; required=false permits empty…"
    },
    {
     "name": "clean_csv",
     "description": "Apply only requested column renames and transformations, then validate the output against schema. Cleanup column names refer to the original headers; schema…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://check.orvel.dev/mcp",
   "answers": true,
   "checked": "2026-11-04T06:03:00.984Z",
   "http": 405,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-11-04T06:47:48.488Z",
     "since": "2026-11-04T06:47:48.488Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-11-04T06:47:48.488Z",
    "since": "2026-11-04T06:47:48.488Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 405,
   "checked": "2026-11-04T06:03:00.984Z",
   "last_answer_at": "2026-11-04T06:03:00.984Z",
   "last_ms": 154,
   "checked_at": "2026-11-04T06:03:00.984Z"
  }
 }
}