关于 Md5 Calculator
MD5-MCP 是一个 MCP 提供程序,可为文本、JSON 数据和 Base64 编码的二进制数据计算 MD5。适合需要在兼容 MCP 的客户端中执行可配置哈希检查的用户。
主要功能
- 01计算纯文本哈希
- 02计算 JSON 数据哈希
- 03计算 Base64 二进制哈希
- 04控制空白与格式处理
适用场景
- 01检查文本数据完整性
- 02比较 JSON 记录的哈希
- 03计算二进制内容的哈希
MCP 相关
该提供程序通过 stdio 向 MCP 客户端提供 3 种 MD5 计算工具,分别处理文本、JSON 和 Base64 数据。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
3收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| input | string | 是 | 要计算 MD5 哈希的字符串 |
| trimWhitespace | boolean | 否 | 是否在计算哈希前去除输入中的空白字符 |
详细介绍
MD5-MCP:MD5 哈希计算器 MCP 提供程序
一个用于从各种数据类型计算 MD5 哈希值的模型上下文协议(MCP)提供程序。此提供程序提供了用于从字符串、JSON 数据和 Base64 编码二进制数据计算 MD5 哈希值的工具。
功能
- 从纯文本字符串计算 MD5 哈希值,并可选择去除空白字符
- 从各种 JSON 数据类型(字符串、数字、布尔值、对象、数组)计算 MD5 哈希值
- 从 Base64 编码二进制数据计算 MD5 哈希值
- 控制格式选项(例如保留空白字符或 JSON 格式)
- 轻松集成 Claude 和其他兼容 MCP 的客户端
安装
NPM 全局安装(推荐)
# Install globally
npm install -g md5-mcp
# Run the provider directly
md5-mcp
本地安装
# Install locally in your project
npm install md5-mcp
# Add to your package.json scripts
# "scripts": {
# "start-md5": "md5-mcp"
# }
手动安装
# Clone the repository
git clone https://github.com/tanker327/md5-mcp.git
cd md5-mcp
# Install dependencies
npm install
# Build the project
npm run build
# Start the provider
npm start
使用方法
启动提供程序
如果已全局安装:
md5-mcp
如果已在本地安装:
npx md5-mcp
这将使用 stdio 传输启动 MCP 提供程序,使其可与 Claude for Desktop 等 MCP 客户端配合使用。
配置 Claude for Desktop
将以下内容添加到 Claude for Desktop 配置中:
{
"mcpServers": {
"md5-calculator": {
"command": "npx",
"args": ["md5-mcp"]
}
}
}
如果已全局安装,可以简化为:
{
"mcpServers": {
"md5-calculator": {
"command": "md5-mcp"
}
}
}
可用工具
1. calculateMD5
根据字符串输入计算 MD5 哈希值。
参数:
input(字符串):要计算 MD5 哈希值的字符串trimWhitespace(布尔值,可选):计算哈希值前是否去除输入中的空白字符(默认值:false)
示例:
@md5-calculator calculateMD5 --input="Hello, World!" --trimWhitespace=false
2. calculateJSONMD5
根据 JSON 数据计算 MD5 哈希值。
参数:
jsonData(任意 JSON 类型):要计算哈希值的 JSON 数据(字符串、数字、布尔值、对象或数组)preserveFormatting(布尔值,可选):是否保留 JSON 格式,或在计算哈希值前将其压缩(默认值:true)
示例:
@md5-calculator calculateJSONMD5 --jsonData={"name": "John", "age": 30} --preserveFormatting=true
3. calculateBase64MD5
根据 Base64 编码二进制数据计算 MD5 哈希值。
参数:
base64Data(字符串):要计算 MD5 哈希值的 Base64 编码二进制数据
示例:
@md5-calculator calculateBase64MD5 --base64Data="SGVsbG8sIFdvcmxkIQ=="
MD5 哈希的重要说明
- MD5 对每个字符都很敏感,包括空白字符。带有尾随空格和不带尾随空格的字符串会生成不同的哈希值。
- 对 JSON 对象计算哈希值时,格式(缩进、换行等)会影响哈希值。使用
preserveFormatting选项可控制此行为。 - MD5 已不再被视为适用于敏感应用的密码学安全算法。它适用于数据完整性检查,但不适用于安全关键型应用。
程序化 API
你也可以在 Node.js 应用中以编程方式使用此软件包:
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";
// Create a transport that starts the provider as a child process
const transport = new StdioClientTransport({
command: "npx",
args: ["md5-mcp"],
});
// Create a client
const client = new Client(
{ name: "my-app", version: "1.0.0" },
{ capabilities: { resources: {}, prompts: {}, tools: {} } }
);
// Connect to the provider
await client.connect(transport);
// Calculate MD5 hash
const result = await client.callTool({
name: "calculateMD5",
arguments: {
input: "Hello, World!",
trimWhitespace: false,
},
});
console.log(result.content[0].text);
// Don't forget to disconnect when done
await client.disconnect();
开发
在开发模式下运行
npm run dev
这会以监视模式启动 TypeScript,并在文件更改时自动重新编译。
运行测试
npm test
发布到 npm
要发布新版本:
# Update version in package.json
npm version patch # or minor, or major
# Publish to npm
npm publish
prepublishOnly 脚本会在发布前自动运行测试并构建项目。
许可证
MIT
贡献
欢迎贡献!欢迎提交 Pull Request。
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。