数学计算协议服务

为大型语言模型提供基础数学、统计和三角函数的计算服务,通过简单API实现精确数值计算。

  • by EthanHenrickson
  • TypeScript
  • 本地部署
  • 190 星标
  • 更新于
在 GitHub 查看 EthanHenrickson/math-mcp

使用说明

数学MCP

一种模型上下文协议(MCP)服务器,为大型语言模型(LLM)提供基本的数学、统计和三角函数。该服务器使LLM能够通过简单的API进行精确的数值计算。

特性

  • 基本算术运算(加、减、乘、除、和、模)
  • 统计函数(平均值、中位数、众数、最小值、最大值)
  • 圆形功能(地板、天花板、圆形)
  • 三角函数(sin、cos、tan及其逆;度/弧度转换)

安装

注: 确保你有 Node.js 安装在您的计算机上。

只需克隆此存储库并将其保存在计算机上的某个本地位置。

然后将此服务器添加到MCP配置文件中:

"math": {
  "command": "node",
  "args": ["PATH\\TO\\PROJECT\\math-mcp\\build\\index.js"]
}

这里有一个OpenCode的例子

{
  "mcp": {
    "math-mcp": {
      "type": "local",
      "command": [
        "node",
        "PATH\\TO\\PROJECT\\math-mcp\\build\\index.js"
      ]
    }
  }
}

替换 PATH\\TO\\PROJECT 带有克隆存储库的实际路径。

注: 此项目是预构建的,因此安装很容易,但如果您更改了代码中的任何内容,请使用以下命令重建项目 npm run build.

可用功能

Math MCP服务器提供以下数学运算:

算术运算

功能 说明 参数
add 将两个数字相加 firstNumber:第一个加数
secondNumber:第二个加数
subtract 从第一个数字中减去第二个数字 minuend:要减去的数字(减号)
subtrahend:被减去的数字(减数)
multiply 将两个数字相乘 firstNumber:第一个数字
secondNumber:第二个数字
division 将第一个数字除以第二个数字 numerator:被除的数字(分子)
denominator:除以(分母)的数字
sum 将任意数量的数字相加 numbers:要求和的数字数组
modulo 将两个数字相除并返回余数 numerator:被除的数字(分子)
denominator:除以(分母)的数字
floor 将数字四舍五入到最接近的整数 number:四舍五入的数字
ceiling 将数字四舍五入到最接近的整数 number:四舍五入的数字
round 将数字四舍五入到最接近的整数 number:要四舍五入的数字

统计操作

功能 说明 参数
mean 计算一系列数字的算术平均值 numbers:用于求平均值的数字数组
median 计算数字列表的中值 numbers:用于查找中值的数字数组
mode 在数字列表中查找最常见的数字 numbers:查找模式的数字数组
min 从数字列表中查找最小值 numbers:用于查找以下值的最小值的数字数组
max 从数字列表中查找最大值 numbers:用于查找最大值的数字数组

三角运算

功能 说明 参数
sin 计算以弧度为单位的数字的正弦值 number:求正弦的弧度数
arcsin 计算一个数字的反正弦(以弧度为单位) number:求以下项的反正数值
cos 计算以弧度为单位的数字的余弦值 number:求余弦的弧度数
arccos 计算一个数字的反余弦(以弧度为单位) number:求以下项的反余弦值的数字
tan 计算以弧度为单位的数字的切线 number:求切线的弧度数
arctan 计算一个数字的反正切(以弧度为单位) number:求反正切的数字
radiansToDegrees 将弧度值转换为以度为单位的等效值 number:要转换为度数的弧度数
degreesToRadians 将度数值转换为以弧度为单位的等效值 number:要转换为弧度的度数