关于 MCP Expr-Lang
MCP Expr-Lang 将 Claude Desktop 连接到 expr-lang 求值引擎,可用表达式处理计算及数字、字符串、数组和对象转换。
主要功能
- 01求值算术和布尔表达式
- 02处理字符串
- 03映射、筛选、归约和排序数组
- 04访问和转换对象属性
- 05使用条件逻辑和内置函数
适用场景
- 01在 Claude 对话中计算数值
- 02筛选或排序结构化数据
- 03转换字符串和对象属性
MCP 相关
通过 MCP 提供 `eval` 工具,让 Claude Desktop 执行 expr-lang 表达式。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
MCP Expr-Lang
一款强大的表达式求值工具,可通过模型上下文协议(MCP)供 Claude Desktop 使用。
概述
MCP Expr-Lang 可将 Claude AI 与强大的 expr-lang 表达式求值引擎无缝集成。借助此工具,你可以直接在 Claude 对话中执行复杂的数据处理、计算和转换。
使用 MCP Expr-Lang,你可以:
- 求值数学表达式
- 转换和筛选数组及对象
- 对复杂数据结构排序
- 执行字符串操作
- 使用条件逻辑
- 以及更多!
安装
通过 Smithery 安装
通过 Smithery 为 Claude Desktop 自动安装 MCP Expr-Lang:
npx -y @smithery/cli install @ivan-saorin/mcp-expr-lang --client claude
前置条件
- Go 1.18 或更高版本
- Claude Desktop 应用
- Git
第 1 步:克隆仓库
git clone https://github.com/ivan-saorin/mcp-expr-lang.git
cd mcp-expr-lang
第 2 步:安装依赖项
go mod download
第 3 步:构建应用
Windows
go build -o bin/server.exe
macOS/Linux
go build -o bin/server
chmod +x bin/server
第 4 步:配置 Claude Desktop
- 打开 Claude Desktop
- 前往设置
- 导航到“高级”部分
- 将以下配置添加到你的
config.json中:
Windows
{
"mcpServers": {
"eval": {
"command": "C:\\path\\to\\mcp-expr-lang\\bin\\server.exe"
}
}
}
macOS/Linux
{
"mcpServers": {
"eval": {
"command": "/path/to/mcp-expr-lang/bin/server"
}
}
}
- 保存配置并重启 Claude Desktop
使用方法
安装完成后,你可以在与 Claude 的对话中直接使用 eval 工具。只需让 Claude 使用该工具求值表达式即可。
基本示例
User: Use eval to calculate "10 + 5 * 3"
Claude: [Uses eval tool]
Result: 10 + 5 * 3 = 25
复杂示例
User: We have users = [{"Name": "John", "Age": 30},{"Name": "Ivan", "Age": 51},{"Name": "Eve", "Age": 15}]
Use eval to calculate "sortBy(users, .Age, "desc")"
Claude: [Uses eval tool]
Result: The expression returns the users sorted by age in descending order:
[
{"Age": 51, "Name": "Ivan"},
{"Age": 30, "Name": "John"},
{"Age": 15, "Name": "Eve"}
]
更多示例请参阅 EXAMPLES
功能
MCP Expr-Lang 支持 expr-lang 引擎的所有功能,包括:
- 算术运算:加法、减法、乘法、除法、取模、乘方
- 字符串操作:拼接、长度计算、转换为大写/小写
- 布尔运算:AND、OR、NOT、比较运算符
- 数组操作:映射、筛选、归约、排序
- 对象处理:属性访问、转换
- 条件逻辑:三元运算符、if-else 表达式
- 内置函数:数学、字符串、数组和日期函数
有关表达式语言语法和功能的完整指南,请参阅 expr-lang 文档。
故障排除
常见问题
-
Claude 中未显示工具:确保
config.json中的路径正确,并且已重启 Claude Desktop。 -
执行错误:根据 expr-lang 文档检查表达式语法是否正确。
-
权限问题(macOS/Linux):确保服务二进制文件具有执行权限(
chmod +x bin/server)。
获取帮助
如果遇到问题或有疑问:
- 查看 GitHub 上的 Issues 部分
- 如果尚未有人报告你的问题,请新建一个 issue
贡献
欢迎贡献!如果你想改进 MCP Expr-Lang:
- Fork 此仓库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交更改(
git commit -m 'Add some amazing feature') - 将分支推送到远程仓库(
git push origin feature/amazing-feature) - 发起 Pull Request
许可证
本项目采用 MIT 许可证,详情请参阅 LICENSE 文件。
致谢
- 感谢 expr-lang 提供强大的表达式求值引擎
- 感谢 mcp-golang 提供模型上下文协议实现
- 感谢 Claude AI 提供 AI 助手平台
由 Ivan Saorin 倾心打造 ❤️
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。