calculator-mcp-server
Публичный сервер: https://calculator.caseyjhand.com/mcp
Инструменты
Один инструмент для всех математических операций:
Имя инструмента | Описание |
| Вычисляет математические выражения, упрощает алгебраические выражения или вычисляет символьные производные. |
calculate
Один инструмент, покрывающий 100% назначения сервера. Параметр operation по умолчанию равен evaluate, поэтому обычный случай — просто { expression: "..." }.
Evaluate — арифметика, тригонометрия, логарифмы, статистика, матрицы, комплексные числа, преобразование единиц, комбинаторика
Simplify — символьное упрощение алгебраических выражений (например,
2x + 3x->5 * x). Поддерживает алгебраические и тригонометрические тождестваDerivative — вычисление символьных производных (например,
3x^2 + 2x + 1->6 * x + 2)Область переменных через параметр
scope:{ "x": 5, "y": 3 }Настраиваемая точность числовых результатов
Пустые необязательные значения
variableиprecisionиз клиентов MCP на основе форм считаются опущенными
Related MCP server: math-mcp
Ресурсы
Шаблон URI | Описание |
| Доступные функции, операторы, константы и справочник по синтаксису. |
Возможности
Построен на @cyanheads/mcp-ts-core:
Декларативные определения инструментов — один файл на инструмент, фреймворк обрабатывает регистрацию и валидацию
Единая обработка ошибок для всех инструментов
Структурированное логирование с опциональной трассировкой OpenTelemetry
Работает локально (stdio/HTTP) или в Docker
Специфично для калькулятора:
Усиленный экземпляр math.js v15 — опасные функции отключены, выполнение изолировано через
vm.runInNewContext()с таймаутомАутентификация не требуется — все операции только для чтения и без сохранения состояния
Проверка ввода: ограничение длины выражения, отклонение разделителей выражений (точки с запятой и переводы строк), только числовые значения области
Проверка результата: заблокированные типы результатов (функции, парсеры, наборы результатов), настраиваемый максимальный размер результата
Очистка области: только числовые значения, предотвращение загрязнения прототипа (заблокированы
__proto__,constructorи т.д.)
Начало работы
Публичный размещённый экземпляр
Публичный экземпляр доступен по адресу https://calculator.caseyjhand.com/mcp — установка не требуется. Подключите любой MCP-клиент к нему через Streamable HTTP:
{
"mcpServers": {
"calculator-mcp-server": {
"type": "streamable-http",
"url": "https://calculator.caseyjhand.com/mcp"
}
}
}Самостоятельное размещение / Локально
Добавьте одну из следующих строк в файл конфигурации вашего MCP-клиента:
{
"mcpServers": {
"calculator-mcp-server": {
"type": "stdio",
"command": "bunx",
"args": ["@cyanheads/calculator-mcp-server@latest"]
}
}
}Или с помощью npx (Bun не требуется):
{
"mcpServers": {
"calculator-mcp-server": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@cyanheads/calculator-mcp-server@latest"]
}
}
}Или с помощью Docker:
{
"mcpServers": {
"calculator-mcp-server": {
"type": "stdio",
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "MCP_TRANSPORT_TYPE=stdio",
"ghcr.io/cyanheads/calculator-mcp-server:latest"
]
}
}
}Предварительные требования
Bun v1.3.0 или выше
Установка
Клонируйте репозиторий:
git clone https://github.com/cyanheads/calculator-mcp-server.gitПерейдите в каталог:
cd calculator-mcp-serverУстановите зависимости:
bun installКонфигурация
Переменная | Описание | По умолчанию |
| Максимально допустимая длина строки выражения (10–10 000). |
|
| Максимальное время вычисления в миллисекундах (100–30 000). |
|
| Максимальная длина строки результата в символах (1 000–1 000 000). |
|
| Транспорт: |
|
| Имя хоста для HTTP-сервера. |
|
| Порт для HTTP-сервера. |
|
| Путь для HTTP MCP-эндпоинта. |
|
| Максимальный размер входящего HTTP-запроса; |
|
| Режим аутентификации: |
|
| Уровень логирования (RFC 5424). |
|
См. .env.example для дополнительных настроек сеанса, возобновляемости, логирования и телеметрии.
Запуск сервера
Локальная разработка
Соберите и запустите производственную версию:
bun run build bun run start:http # or start:stdioЗапустите проверки и тесты:
bun run devcheck # Lints, formats, type-checks bun run test # Runs test suite
Docker
docker build -t calculator-mcp-server .
docker run -p 3010:3010 calculator-mcp-serverОбраз по умолчанию использует Streamable HTTP на порту 3010, сеансы без сохранения состояния и журналы в /var/log/calculator-mcp-server.
Структура проекта
Каталог | Назначение |
| Определения инструментов ( |
| Определения ресурсов ( |
| Интеграции доменных сервисов (MathService). |
| Разбор и валидация переменных окружения с помощью Zod. |
| Сгенерированное дерево каталогов. |
Руководство по разработке
См. AGENTS.md или CLAUDE.md для руководства по разработке и архитектурных правил. Краткая версия:
Обработчики выбрасывают исключения, фреймворк перехватывает — никаких
try/catchв логике инструментовИспользуйте
ctx.logдля логированияРегистрируйте новые инструменты и ресурсы в
src/index.ts
Вклад
Приветствуются issues и pull request'ы. Запустите проверки перед отправкой:
bun run devcheck
bun run testЛицензия
Apache-2.0 — см. LICENSE для подробностей.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
No tool schema history has been recorded yet.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Math.js MCP — wraps the mathjs.org API (free, no auth)
Safe scientific calculator MCP for numeric expressions
1Newton MCP — wraps the Newton math solver API (free, no auth)
Find and call the right MCP server for any task - pay per use, no install.
Related MCP Servers
- AlicenseBqualityAmaintenanceProvides secure mathematical computation capabilities including expression evaluation, symbolic math (derivatives, simplification), matrix operations, statistics, and unit conversion, with multi-tier acceleration through WebAssembly and WebWorkers for high-performance calculations.7178ISC
- AlicenseAqualityCmaintenanceA secure MCP server for evaluating mathematical expressions with grammar validation, function whitelisting, and sandboxed execution. It provides tools for expression evaluation, variable management, and resources for grammar and function documentation.637MIT
- AlicenseBqualityCmaintenanceHigh-precision mathematics server for MCP clients, providing exact integer arithmetic, symbolic derivatives, and numerical calculus via LaTeX-style input.6172MIT
- AlicenseNot gradedqualityAmaintenanceProvides a token-efficient exact math engine for AI agents, enabling computation of derivatives, integrals, equations, and optimized Python/NumPy code via a single MCP tool.4MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/cyanheads/calculator-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server