# Zovo JSON to Spreadsheet

> Turn a JSON file or pasted JSON into an Excel workbook and a CSV, right in the chat.

- name: io.github.theluckystrike/json-to-excel
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 80/100 flags: no-repository
- quality: 94/100 (new)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.theluckystrike%2Fjson-to-excel
- tools: https://api.protogrid.dev/v1/servers/io.github.theluckystrike%2Fjson-to-excel/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "json-to-excel": {
      "type": "http",
      "url": "https://json-to-excel.zovo.one/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 100
- freshness: 100
- provenance: 45
- drivers: +website +reachable +uptime-100% +updated-6d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 94/100 (new)

### protocol: 88 (weight 25)

- pass `protocol.modern`: supports 2026-07-28 (server/discover)
- pass `protocol.stateless`: answers without a session
- pass `protocol.transport`: streamable HTTP
- warn `protocol.list_ttl`: tools/list declares ttlMs 0, so clients re-fetch it on every use

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 100 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 2 of 2 tools declare readOnlyHint or destructiveHint
- pass `tools.directory_hints`: every tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
- pass `tools.token_cost`: about 1,303 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump
- pass `tools.hidden_text`: no hidden text in tool names, descriptions, schemas or annotations

### stability: n/a (weight 15)

- n/a `stability.changes`, `stability.rug_pull`, `stability.new_links`: tool history recorded for 6 of the 7 days needed

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 2, about 1,303 tokens to load them all
- tool set hash: 4187448ea1cb39734401da5b6e63481e
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.theluckystrike/json-to-excel.svg)](https://protogrid.dev/servers/io.github.theluckystrike/json-to-excel)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://json-to-excel.zovo.one/mcp (streamable-http, auth none, reachable true, uptime30d 1)

## Packages

_none_

## Tools (2)

- `inspect_json`: Use this when the user asks what a JSON file contains, which keys or nesting it has, how many records it holds, or why it does not parse, before converting it. Takes the same file or json_text, records_path and orient as json_to_excel and returns the record count, the key paths with their types and fill rate, nesting depth, the lists inside the records, duplicate keys, an estimate of sheets, columns and cells, and suggestions (for example a records_path). Invalid JSON is reported with its line and column. Does not make a file and does not change the JSON.
- `json_to_excel`: Use this when the user wants to convert JSON to Excel or CSV, turn an API response or a JSON export into a spreadsheet, or flatten nested JSON into columns. Takes one attached .json file or pasted json_text, an optional records_path (e.g. data.items) and orient (records, columns, index), and how to handle lists (scalar_arrays join or rows, object_arrays sheet or json). Returns an .xlsx and a .csv download (a ZIP of CSVs when there are linked sheets), the rows, columns and cells written, the numbers kept as text, formula-like text, and a check that each cell was read back from both files. Does not accept JSON with comments, trailing commas or JSON Lines, and does not turn date text into Excel dates. Do not use for Excel to JSON or for editing a JSON file.
