# stagenth · Excel 数据可视化 (remote · stagenth.com)

Excel analytics: inspect, query (JSON rows), charts, and JSON-to-xlsx workbook writing.

- Trust score: 64/100 (medium)
- Change this week: +6
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- remote · `stagenth.com`: 64/100 (this document), [markdown](https://verifymcp.io/servers/com-stagenth-excel-chart/mcp-excel-chart.md), [page](https://verifymcp.io/servers/com-stagenth-excel-chart/mcp-excel-chart)

## Channel facts

- Endpoint: `https://stagenth.com/mcp/excel-chart/`
- Transports: `streamable-http`
- Auth: `required`
- Version: `1.1.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 4 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 47/100
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1402 tokens (~350/item across 4 items; 4 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http com-stagenth-excel-chart https://stagenth.com/mcp/excel-chart/
```

### Codex

```toml
[mcp_servers.com-stagenth-excel-chart]
url = "https://stagenth.com/mcp/excel-chart/"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-stagenth-excel-chart": {
      "type": "remote",
      "url": "https://stagenth.com/mcp/excel-chart/",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-stagenth-excel-chart --url https://stagenth.com/mcp/excel-chart/ --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-stagenth-excel-chart:
    url: "https://stagenth.com/mcp/excel-chart/"
```

### Other

```json
{
  "mcpServers": {
    "com-stagenth-excel-chart": {
      "type": "http",
      "url": "https://stagenth.com/mcp/excel-chart/"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 64, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-08-01 (score 63, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-31 (score 62, +2)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-30 (score 60, +44)

- [security improvement] Transport: fail → pass
- [security] Authorization: Authorisation not fully verified: no authorisation is required to call this server, and 4 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
- [functional improvement] Endpoint reachability: not serving MCP → reachable
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] Stability: unverified → 0.13
- [functional improvement] MCP protocol: unverified → pass

### 2026-07-29 (score 16, −43)

- [security regression] Endpoint reachability: reachable → not serving MCP
- [security regression] Stability: 0.07 → unverified
- [security regression] Transport: pass → fail
- [security] Authorization: Authorisation not fully verified: no authorisation is required to connect, but we couldn't read the tool list to see what that exposes.
- [functional regression] Capabilities: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional] First check of Schema quality: unverified

### 2026-07-28 (score 59, +1)

No change was recorded against any check on this day. Stability & Change Management went from 3 to 7. That category is still filling its 30-day observation window: 1 days of observed history at the previous scan, 2 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-07-27 (score 58, 0)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-26 (score 58)

First indexed and scored.

## MCP tools (4)

### `excel_inspect` (~140 tokens)

查看 Excel 结构：各 sheet 的列名/类型/行数 + 前 N 行预览。免费(0 credit)。

        出图前先调它看清有哪些 sheet、列、哪些列是数值，再据此选 chart_type 与 x/y。

Input parameters:

- `data_base64`: Excel(.xlsx) 内容的 base64（与 file_id 二选一，适合未上传的临时数据）
- `file_id`: 已上传到文件中转站的 Excel 文件 ID（与 data_base64 二选一）
- `preview_rows` (integer): 每个 sheet 预览的前 N 行

### `excel_to_chart` (~485 tokens)

把 Excel 数据渲染成图表，产物存进你的文件中转站并返回下载 URL。

        计费(生成类)：基础 3；高级图型 +2；矢量 SVG +1；大数据(>5000 行) +2。
        调用失败自动退款。建议先 excel_inspect 看清列结构再出图。
        返回: {ok, file_id, filename, format, credit_charged, download_url(15分钟有效),
              chart_type, sheet, rows}

Input parameters:

- `agg`: 聚合方式 count/sum/avg；缺省智能默认（分布类 饼/环→count 数每类多少条，其余→sum）。看「分布/各类别占比」用 count，无需 y（如性别男女各几人）；看「某数值在各类别的合计/平均」用 sum/avg 并给 y（如各地区销售额）。
- `chart_type` (string, required): 图表类型。标准型(基础3 credit): bar/column/line/pie/scatter/area/barh; 高级型(+2): stacked_bar/grouped_bar/radar/heatmap/histogram/box/donut。
- `data_base64`: Excel(.xlsx) 内容 base64（与 file_id 二选一）
- `file_id`: 已上传的 Excel 文件 ID（与 data_base64 二选一）
- `fmt` (string): 输出格式: png(默认) / svg(矢量, +1 credit)
- `options`: 可选渲染项, 如 {"stacked":true,"bins":30,"cmap":"viridis","dpi":144}
- `series`: 可选分组列：按它把 y 透视成多系列（分组/堆叠/多线）
- `sheet`: 目标工作表名；缺省取第一个 sheet。先用 excel_inspect 查名字
- `title`: 图表标题
- `x`: X 轴/类别列名（饼图=标签列）；缺省取第一列
- `y`: Y 轴数值列名，可单个或多个(数组)；缺省取所有数值列

### `excel_query` (~502 tokens)

查询 / 过滤 / 分组聚合 Excel，返回**实际数据行（JSON）**供 AI 直接分析（1 credit/次）。

        取数工具，区别于 excel_to_chart（出图）和 excel_inspect（只看结构）。典型用法：
          · 各地区销售额合计：group_by=["地区"], measures=["销售额"], agg="sum"
          · 销量 Top5 商品：group_by=["商品"], measures=["销量"], agg="sum", sort_by="销量", descending=true, limit=5
          · 每类别多少行：group_by=["类别"], agg="count"
          · 筛失败订单明细：filters=[{"column":"状态","op":"eq","value":"失败"}]
        返回 {ok, sheet, mode, columns, total_rows, matched_rows, returned_rows, truncated, rows[]}。
        失败自动退款。

Input parameters:

- `agg`: 聚合方式 sum/avg/count/min/max/median（默认 sum；count=数每组行数、无需 measures）
- `columns`: 明细模式：只返回这些列；缺省返回全部列
- `data_base64`: Excel(.xlsx) 内容 base64（与 file_id 二选一）
- `descending` (boolean): 降序排序（取 Top-N 常用 true）
- `file_id`: 已上传的 Excel 文件 ID（与 data_base64 二选一）
- `filters`: 行过滤条件（AND 组合），每项 {column, op, value}。op 可选：eq/ne/gt/ge/lt/le/contains/in/notnull/isnull。例：[{"column":"地区","op":"eq","value":"华东"},{"column":"金额","op":"ge","value":1000}]
- `group_by`: 分组维度列。给了就进聚合模式：按这些列分组，对 measures 求 agg
- `limit`: 最多返回多少行（取前 N / Top-N）；硬上限 1000
- `measures`: 聚合模式：要统计的数值列；缺省=所有数值列
- `sheet`: 目标工作表名；缺省第一个 sheet。先用 excel_inspect 看列名
- `sort_by`: 按哪一列排序（可为分组后的 measure 或 count 列）

### `excel_write` (~158 tokens)

把 JSON 数据写成 Excel 工作簿（.xlsx），落文件中转站返下载 URL（上限 20 万单元格）。

        补上「只能读不能写」的缺口：AI 算完的结果一步落成正式 Excel 交付。失败自动退款。

Input parameters:

- `columns`: 列名（rows 为行数组时必填；对象列表时忽略）
- `filename` (string): 输出文件名（可选，自动补 .xlsx）
- `rows` (array, required): 数据行：对象列表 [{列:值},...]，或行数组 [[v1,v2],...]（需配 columns）
- `sheet_name` (string): 工作表名

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-stagenth-excel-chart/mcp-excel-chart#diagnostics

## Score history

- 2026-08-03: 64
- 2026-08-02: 63
- 2026-08-01: 63
- 2026-07-31: 62
- 2026-07-30: 60
- 2026-07-29: 16
- 2026-07-28: 59
- 2026-07-27: 58
- 2026-07-26: 58

## Links

- Remote endpoint: https://stagenth.com/mcp/excel-chart/
- Authorisation metadata: https://stagenth.com/.well-known/oauth-protected-resource/mcp/excel-chart
- Changelog RSS feed: https://verifymcp.io/servers/com-stagenth-excel-chart/mcp-excel-chart/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-stagenth-excel-chart/mcp-excel-chart/changelog.json
- HTML version of this page: https://verifymcp.io/servers/com-stagenth-excel-chart/mcp-excel-chart
