mcpField
S
Softwiro Excel templates and calculators

Softwiro Excel templates and calculators

远程服务
softwiro.com数据与分析01 天前更新

关于 Softwiro Excel templates and calculators

Softwiro MCP 是面向 AI 助手的托管计算服务,可按 67 个免费 Excel 模板公式计算,并运行 23 种计算器。服务无状态、无需 API 密钥,也不保存请求内容。

主要功能

  1. 01搜索 67 个 Excel 模板
  2. 02读取模板结构与输入项
  3. 03按模板公式执行计算
  4. 04运行 23 种计算器
  5. 05获取模板下载链接
  6. 06提供交互式结果界面

适用场景

  1. 01用 Excel 模板计算业务数据
  2. 02计算增值税或收支平衡点
  3. 03估算 BMI、热量或预产期
  4. 04查询黄金相关价格与估算

MCP 相关

通过托管的 Streamable HTTP MCP 端点公开六种工具,用于查找模板、读取结构、计算、获取下载链接和运行计算器。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://softwiro.com/api/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

Softwiro MCP

一个 MCP 服务,可让 AI 助手使用 67 个免费的阿拉伯语 Excel 模板进行计算,并运行 23 个快速计算器(增值税、BMI、预产期、黄金天课等),而不是猜测数字。结果来自模板自身的公式和计算器自身的代码。无状态、无需 API 密钥、不存储任何内容。

明确要求助手使用它(“使用 softwiro MCP,不要自行计算”)。否则,助手可能会在脑中计算,而不调用工具。

连接

以下步骤依据各应用自身的文档;菜单可能因套餐和版本而异。

Claude Code

claude mcp add --transport http softwiro https://softwiro.com/api/mcp

Claude(网页 / 桌面): Customize → Connectors → + Add → Add custom connector,名称填写 softwiro,URL 填写上方地址。

ChatGPT: Plugins → + → Add custom MCP server,名称填写 softwiro,URL 填写上方地址,身份验证选择 No authentication。自定义 MCP 服务可能需要相应套餐或允许使用这些服务的工作区设置。

Cursor(.cursor/mcp.json):

{ "mcpServers": { "softwiro": { "url": "https://softwiro.com/api/mcp" } } }

在终端中检查:

curl -s https://softwiro.com/api/mcp \
  -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

工具

工具功能
list_templates搜索免费 Excel 模板目录(阿拉伯语或英语文本)。
get_schema获取某个模板的表格、列(输入与公式)、设置和结果单元格。调用 calculate 前请先调用此工具。
calculate使用你的记录和设置填充模板,通过模板自身的公式重新计算,并返回结果。不会保存任何内容。
get_download获取模板的 .xlsx 文件和在线版本链接。
list_calculators列出 23 个计算器及其输入项名称。
run_calculator运行一个计算器。

这六个工具均为只读且具有幂等性(使用 TODAY() 的模板遵循服务端日期)。

计算器

Softwiro 提供的 13 个计算器:增值税、BMI、卡路里、预产期、排卵期、盈亏平衡、服装成本核算、面料需求、计件工资、药房利润率、再订货点、未到诊成本、学习时间表。

来自 Qintar 的 10 个黄金计算器:黄金、白银和现金天课、起征额、工费、金条和金币价格、公允价格检查、立即出售、单位换算、预算、黄金与存款凭证及美元对比、以旧换新。它们会从 qintar.app 获取实时价格;如果价格不可用,则会返回错误。结果仅供参考:天课和黄金计算器不构成教法裁决,健康计算器也不构成医疗建议。

示例

Use the softwiro MCP (run_calculator with vat-calculator) and do not calculate anything yourself.
Egypt, add VAT to two items of 1,000 each and one item of 250.

返回净额 2,250、税额 315、总额 2,565(增值税 14%)。

自行运行

Node 18+。

npm install
npm start            # http://127.0.0.1:3000/api/mcp
npm test             # offline smoke test

环境变量:PORT、HOST、TRUST_PROXY(位于反向代理后时设为 1,以便速率限制识别客户端的真实地址)、USAGE_FILE(用于汇总计数器的 JSON 文件;省略时计数器保存在内存中)、SITE_BASE(目录链接使用的基础 URL,默认为 https://softwiro.com)。

作为库使用
const express = require('express');
const { configure, mount } = require('./src/index');
configure({ dataDir: './data' });   // also: templatesDir, schemasDir, siteBase, usageFile, catalog()
const app = express(); mount(app, express);
目录结构
src/index.js          HTTP handlers, MCP JSON-RPC, limits, aggregate usage counters
src/worker.js         one calculation in an isolated worker thread (timeout kills it)
src/engine.js         the formula engine (fast-formula-parser with Excel-compatible tweaks)
src/tools-softwiro.js the 13 Softwiro calculators
src/tools-gold.js     the 10 Qintar gold calculators
data/catalog.json     template catalog      data/templates/   the .xlsx files
data/schemas/         one JSON schema per template      data/tool-text.json   Arabic page text of the calculators
限制

请求正文最大 200 KB,最多 500 行和 500 个单元格;每个客户端每分钟最多 30 次计算和 120 次读取;每次计算最多 15 秒;同时最多进行 2 次计算。

隐私

此服务不会存储或记录请求内容。它仅保留每日汇总计数器(按工具、模板或计算器统计调用次数和错误,以及连接应用的名称,如 claude-code):不记录 IP 地址,也不记录请求正文。托管服务位于 softwiro.com Web 服务器之后,该服务器会在短时间内保留常规访问日志(请参阅 https://softwiro.com/privacy)。天课计算器会将你输入的金额发送到 Qintar 的计算器服务。

测试

npm test 是离线冒烟测试。test/parity/gold.test.mjs 会在无头浏览器中将黄金计算器与实时 Qintar 页面进行比较(仅用于开发:需要 playwright-core 和 Chromium,或设置 CHROME_PATH)。

许可证

代码:MIT,详见 LICENSE。data/templates/ 中的文件与 https://softwiro.com/templates 发布的免费 Excel 模板相同:可自由使用、编辑和分享。


Softwiro MCP(阿拉伯语)

MCP 服务可让 AI 助手使用 67 个免费的阿拉伯语 Excel 模板进行计算,并运行 23 个计算器(增值税、身体质量指数、预产期、黄金天课等),而不是猜测数字。结果来自模板本身的公式和计算器代码。无需密钥或账户,也不会存储任何内容。

  • 托管链接(免费):https://softwiro.com/api/mcp
  • 说明、示例、条款和隐私政策:https://softwiro.com/ar/mcp
  • 在 Claude Code 中:claude mcp add --transport http softwiro https://softwiro.com/api/mcp
  • 以「使用 softwiro 的 MCP,别自己计算」开头提出请求,这样助手就会调用工具,而不是在脑中计算。

六种工具:list_templates(搜索模板)、get_schema(模板结构)、calculate(使用模板计算)、get_download(下载链接)、list_calculators 和 run_calculator(计算器)。结果仅供参考:天课和黄金计算器不构成教法裁决,健康计算器不构成医疗建议。

本地运行:npm install,然后运行 npm start。

交互式连接器(MCP Apps)

结果工具(list_templates、calculate、list_calculators、run_calculator)带有 _meta.ui.resourceUri = ui://softwiro/result。支持 MCP Apps 的主机(包括 Claude)会通过 resources/read(text/html;profile=mcp-app)获取该资源,并将其显示在对话旁边:每个计算器都会根据其输入架构生成一个表单,另有模板表格和易读的结果视图。不支持的主机会忽略此元数据,并使用未更改的文本结果。结果还带有 structuredContent(数组会包装为 {items})。

  • 视图是一个独立的 HTML 文件(src/app-ui.js),直接使用 MCP Apps 的 postMessage 协议:不会从任何地方加载脚本,默认 CSP(connect-src 'none')已足够。视图仅通过主机调用工具。
  • 打开下载链接或页面链接时,视图会先请求用户确认,然后请求主机打开链接(ui/open-link)。
  • 不会存储任何内容。视图只会收到工具已经返回给模型的内容。

A2UI 1.0(由 Agent 生成的界面)

除了 MCP,服务端还支持 A2UI 1.0:Agent 发送声明式 JSON(createSurface、updateDataModel、deleteSurface),客户端根据固定目录绘制界面,并将用户的点击发送回来。

端点内容
GET /api/a2ui/surface/calculator/:idSSE 流:一个计算器的表单,根据其输入架构构建,并绑定到数据模型
GET /api/a2ui/surface/templates?q=SSE 流:Excel 模板列表;每次下载前都会请求确认
POST /api/a2ui/events请求体 { "message": { "version": "1.0", "action": { name, surfaceId, context } } };以 A2UI 消息的 SSE 流作为响应(包含结果的 updateDataModel,或 error)
GET /api/a2ui/appReact 渲染器(演示页面,来自 web/dist)

MCP 工具 list_calculators、list_templates 和 run_calculator 也会在 structuredContent.a2ui 中返回相同的消息(这是附加内容;数据键不会改变)。

安全性:仅使用 basic-catalog 组件,不含代码或内联目录;ID 和输入均根据服务端自身的目录和架构进行检查;下载 URL 由服务端提供,绝不来自客户端;每条消息都会经过验证(version 必须为 "1.0",且只能有一个操作,并且操作名称必须是已知名称)。使用 sensitive: true 注册的操作(src/a2ui.js 中的 registerAction)不会在首次请求时执行:服务端会返回一个确认卡片,其中包含绑定到该操作和上下文的签名令牌(有效期为 5 分钟);只有用户点击 Confirm 并返回令牌后,操作才会执行。不会存储任何内容。

React 渲染器位于 web/(npm install && npm run build;src/processor.js 处理消息,src/A2uiRenderer.jsx 绘制目录子集:Text、Column、Row、List、Card、Divider、Image、Button、TextField、CheckBox、ChoicePicker、Modal)。官方的 @a2ui/react 包(0.15)尚未提供 v1.0 basic catalog,因此这个渲染器小巧且独立。

MCP App 中的 A2UI(各部分如何协作)

ui://softwiro/result 视图是 A2UI 渲染器捆绑包(web/dist/index.html)。在宿主中,它通过 MCP Apps 桥接通信;工具结果会将屏幕作为类型为 application/a2ui+json 的嵌入式资源传递(A2UI 1.0 消息的 JSON 数组)。用于打开屏幕的模型工具:open_calculator(表单)、list_templates(表格)、run_calculator / calculate (结果)。按钮按下事件会通过仅供 App 使用的工具 a2ui_action(_meta.ui.visibility: ["app"])返回,其结果 同样是 application/a2ui+json。在 MCP 之外,也可以通过 /api/a2ui/* 下的 SSE 接口和 /api/a2ui/app 使用相同的屏幕。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。