Softwiro Excel templates and calculators

com.softwiroPublished by softwiro.comOfficial publisherv1.3.0Updated Nov 6, 2026

Arabic Excel templates and 23 calculators (VAT, BMI, gold zakat...). No key, nothing stored.

VerifiedStreamable HTTPWeb executableProductivity & WorkflowData & Analytics

Overview

AI-generated overview

Runs calculations inside about 70 free Arabic Excel templates and 23 quick calculators (VAT, BMI, gold zakat) so an assistant returns formula-based results…

What you can do
  • Search the template catalog and inspect one template's sheets, input and formula columns, settings and result cells
  • Fill a template with records and settings, recalculate it with its own formulas and return the summary and per-row results
  • Get download links for a template's xlsx file and its online page
  • List the 23 quick calculators and run one, returning its result as JSON
When to use it
Useful when a user needs a business tracking sheet (payroll, clinic, shop, rent, installments) or a standard calculation such as VAT, BMI, due date or gold zakat, and you want the numbers to come from the template's formulas rather than the model's own arithmetic.
Requirements
Remote Streamable HTTP endpoint at softwiro.com; no API key, account or headers. The README also documents self-hosting with Node 18+ and optional environment variables such as PORT, HOST, TRUST_PROXY, USAGE_FILE and SITE_BASE. The gold calculators need network access to qintar.app for live prices.
Before you install
The server states it stores nothing, but keeps aggregate daily counters (tool, template or calculator, errors, connecting app name) and sits behind web server access logs. The zakat calculator sends the amounts entered to Qintar's service. Results are indicative: zakat and gold calculators are not a fatwa and health calculators are not medical advice. Limits apply (500 rows, 30 calculations per minute).

Installation

In SourceWeft

  1. Open Softwiro Excel templates and calculators in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/com.softwiro%2Ftemplates/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "softwiro-excel-templates-and-calculators": {
      "type": "http",
      "url": "https://softwiro.com/api/mcp"
    }
  }
}

README

Softwiro MCP

An MCP server that lets an AI assistant calculate inside 67 free Arabic Excel templates and run 23 quick calculators (VAT, BMI, due date, gold zakat and more), instead of guessing the numbers. Results come from the templates' own formulas and the calculators' own code. Stateless, no API key, nothing stored.

Ask your assistant to use it explicitly ("use the softwiro MCP and do not calculate yourself"). Without that, an assistant may calculate in its head and never call the tool.

Connect

These steps follow each app's own documentation; menus can differ by plan and version.

Claude Code

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

Claude (web / desktop): Customize → Connectors → + Add → Add custom connector, name softwiro, URL above.

ChatGPT: Plugins → + → Add custom MCP server, name softwiro, URL above, authentication: No authentication. Custom MCP servers may need a plan or workspace setting that allows them.

Cursor (.cursor/mcp.json):

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

Check it from a terminal:

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"}'

Tools

ToolWhat it does
list_templatesSearch the catalog of free Excel templates (Arabic or English text).
get_schemaTables, columns (input vs formula), settings and result cells of one template. Call before calculate.
calculateFills a template with your records and settings, recalculates with its own formulas, returns the results. Nothing is saved.
get_downloadLinks to the .xlsx file and the online version of a template.
list_calculatorsLists the 23 calculators and their input names.
run_calculatorRuns one calculator.

All six are read-only and idempotent (templates that use TODAY() follow the server's date).

Calculators

13 from Softwiro: VAT, BMI, calories, due date, ovulation, break-even, garment costing, fabric requirements, piece-rate pay, pharmacy margin, reorder point, no-show cost, study timetable.

10 gold calculators from Qintar: zakat on gold, silver and cash, nisab, making charge, bar and pound prices, fair-price check, sell-now, unit conversion, budget, gold vs certificates vs dollar, swapping old gold for new. They fetch live prices from qintar.app and return an error if prices are unavailable. Results are indicative: the zakat and gold calculators are not a fatwa, and the health calculators are not medical advice.

Example

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.

Returns net 2,250, tax 315, total 2,565 (VAT 14%).

Run it yourself

Node 18+.

npm installnpm start            # http://127.0.0.1:3000/api/mcpnpm test             # offline smoke test

Environment variables: PORT, HOST, TRUST_PROXY (set to 1 behind a reverse proxy so rate limits see the real client address), USAGE_FILE (JSON file for aggregate counters; omit to keep them in memory), SITE_BASE (base URL used in catalog links, default https://softwiro.com).

As a library

js
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);

Layout

src/index.js          HTTP handlers, MCP JSON-RPC, limits, aggregate usage counterssrc/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 calculatorssrc/tools-gold.js     the 10 Qintar gold calculatorsdata/catalog.json     template catalog      data/templates/   the .xlsx filesdata/schemas/         one JSON schema per template      data/tool-text.json   Arabic page text of the calculators

Limits

Request body 200 KB, at most 500 rows and 500 cells, 30 calculations and 120 reads per minute per client, 15 seconds per calculation, 2 calculations at once.

Privacy

Request content is not stored or logged by this server. It keeps aggregate daily counters only (calls per tool, template or calculator, errors, and the connecting app's name such as claude-code): no IP addresses and no request bodies. The hosted service sits behind the softwiro.com web server, which keeps ordinary access logs for a short period (see https://softwiro.com/privacy). The zakat calculator sends the amounts you enter to Qintar's calculator service.

Tests

npm test is an offline smoke test. test/parity/gold.test.mjs compares the gold calculators with the live Qintar pages in a headless browser (dev-only: needs playwright-core and a Chromium, or CHROME_PATH).

License

Code: MIT, see LICENSE. The files in data/templates/ are the same free Excel templates published at https://softwiro.com/templates: use, edit and share them freely.


Softwiro MCP (بالعربي)

خادم MCP يخلّي مساعد الذكاء الاصطناعي يحسب داخل 67 قالب إكسل عربي مجاني ويشغّل 23 حاسبة (ضريبة القيمة المضافة، كتلة الجسم، موعد الولادة، زكاة الذهب وغيرها) بدل ما يخمّن الأرقام. النتائج من معادلات القوالب نفسها ومن كود الحاسبات. بلا مفتاح ولا حساب، ولا يخزّن شيئًا.

  • الرابط المستضاف (مجاني): https://softwiro.com/api/mcp
  • الشرح والأمثلة والشروط والخصوصية: https://softwiro.com/ar/mcp
  • في Claude Code: claude mcp add --transport http softwiro https://softwiro.com/api/mcp
  • ابدأ طلبك بـ «استخدم الـ MCP بتاع softwiro وماتحسبش بنفسك» عشان المساعد ينادي الأداة بدل ما يحسب في دماغه.

الأدوات الست: list_templates (بحث في القوالب)، get_schema (هيكل القالب)، calculate (الحساب في قالب)، get_download (روابط التحميل)، list_calculators وrun_calculator (الحاسبات). النتائج استرشادية: حاسبات الزكاة والذهب ليست فتوى، والحاسبات الصحية ليست نصيحة طبية.

التشغيل محليًا: npm install ثم npm start.

Source: README.md at commit af08f41

Tools

6

list_templates

List Excel templates

Search the catalog of about 70 free Arabic Excel templates (students, clinics, shops, farms, rent, installments, payroll, recipe costing, gym...). Returns id, Arabic title, description, sector, page URL and download URL for each match. Use it first whenever the user needs a tracking sheet or a multi-row calculation a business spreadsheet could do. For a single quick calculation (VAT, BMI, gold zakat) use list_calculators instead. Read-only, nothing is stored. An empty query returns the whole catalog.

Parametersquery

get_schema

Get template structure

Returns the structure of one template: its sheets, the record tables (header row, first and last row, capacity) with each column marked as input or formula, example values, dropdown values, the settings cells (label, cell address, sample value) and the result cells. Call it after list_templates and before calculate, so the data you send uses the exact sheet and column names and only fills input columns. Read-only. Fails with "unknown template id" if the id did not come from list_templates.

Parametersidrequired

calculate

Calculate in a template

Fills a template with the records and settings you send, recalculates it with the template's own formulas, and returns the results: the summary cells listed in get_schema plus the calculated columns of every row you sent. Nothing is saved on the server: the workbook exists only for this request, so calling it again with the same input gives the same output (templates that use TODAY() follow the server's date). Call get_schema first. Sends your records into the template and returns what its own formulas calculate. records: [{sheet, table (index in schema, default 0), rows: [{"<column header or letter>": value}]}] fills a record table (only typed/input columns; calculated columns are returned in rows[].calculated). mode: "replace" (default, clears the sample rows first) or "append". cells: {"Sheet name!B3": value} sets settings cells. read: ["Sheet name!B5"] limits which cells come back (default: the sheet results listed in the schema). Dates: send "YYYY-MM-DD". Nothing is stored. Limits: 500 rows, 500 cells, 15 seconds. Fails with a message naming the bad sheet, column or cell, or "unknown template id".

Parametersidrequiredmodereadcellsrecords

get_download

Get template download links

Returns two links for one template: xlsx (the free Excel file to download, no sign-in) and online (the template page on softwiro.com, where the sheet can also be filled in the browser). Use it when the user wants the file itself to keep and edit, because calculate saves nothing. Read-only. Fails with "unknown template id" if the id did not come from list_templates.

Parametersidrequired

list_calculators

List calculators

Lists the 23 quick calculators with their input names: 13 from Softwiro (VAT, BMI, calories, due date, ovulation, break-even, garment costing, fabric requirements, piece-rate pay, pharmacy margin, reorder point, no-show cost, study timetable) and 10 gold calculators from Qintar (zakat, nisab, making charge, bar and pound prices, fair-price check, sell-now, unit conversion, budget, gold vs certificates vs dollar, swapping old gold for new). Use it for a one-off calculation that does not need a spreadsheet, then call run_calculator. For multi-row tracking sheets use list_templates instead. Read-only, nothing is stored.

Parametersquery

run_calculator

Run a calculator

Runs one calculator from list_calculators and returns its result as JSON, with the same numbers as the calculator's page on the website. Nothing is stored. The gold calculators fetch live prices from qintar.app and include the price date; if prices are unavailable they return an error instead of guessing. Invalid or missing inputs fail with a message naming the field. Results are indicative: the zakat and gold calculators are not a fatwa, and the health calculators are not medical advice.

Parametersidrequiredinputs

Version history

2
  1. v1.3.0LatestNov 6, 2026
  2. v1.2.0Nov 6, 2026

Score

100% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts