这是一个采用模型上下文协议(MCP)的先进加密安全随机数生成器服务器。该服务器为人工智能应用、大语言模型(LLMs)以及其他需要高质量随机数的系统提供高级随机数生成功能。
本服务器是一个采用模型上下文协议(MCP)的先进加密安全随机数生成器服务器,可用于人工智能应用、大语言模型(LLMs)以及其他需要高质量随机数的系统。以下将为你介绍它的主要特性、安装方式、使用方法等内容。
crypto
模块进行加密安全的伪随机数生成(CSPRNG)。对于Claude桌面版用户,可将此服务器作为一键式桌面扩展进行安装:
.dxt
文件。.dxt
文件。npm install -g pluggedin-random-number-generator-mcp
或者在你的项目中进行本地安装:
npm install pluggedin-random-number-generator-mcp
使用Smithery将此MCP服务器部署到云端:
smithery.yaml
配置文件,便于部署。git clone https://github.com/VeriTeknik/pluggedin-random-number-generator-mcp.git
cd pluggedin-random-number-generator-mcp
npm install
npm run build
# 可选:构建DXT包
npm run build:dxt
服务器通过标准输入/输出(stdio)按照MCP协议进行通信:
# 使用构建版本
node dist/index.js
# 使用开发模式
npm run dev
将其添加到你的MCP客户端配置中。对于Claude桌面版,将其添加到claude_desktop_config.json
文件中:
{
"mcpServers": {
"random-generator": {
"command": "npx",
"args": ["-y", "pluggedin-random-number-generator-mcp@latest"]
}
}
}
这将始终使用npm上的最新版本,无需进行全局安装。
{
"mcpServers": {
"random-generator": {
"command": "node",
"args": ["node_modules/pluggedin-random-number-generator-mcp/dist/index.js"]
}
}
}
生成指定范围内的加密安全随机整数。 参数:
min
(整数,可选):最小值(包含),默认值:0max
(整数,可选):最大值(包含),默认值:100count
(整数,可选):要生成的整数数量,默认值:1,最大值:1000示例:
{
"name": "generate_random_integer",
"arguments": {
"min": 1,
"max": 100,
"count": 5
}
}
生成加密安全的随机浮点数。 参数:
min
(数字,可选):最小值(包含),默认值:0.0max
(数字,可选):最大值(不包含),默认值:1.0count
(整数,可选):要生成的浮点数数量,默认值:1,最大值:1000precision
(整数,可选):要保留的小数位数,默认值:6,最大值:15示例:
{
"name": "generate_random_float",
"arguments": {
"min": 0.0,
"max": 1.0,
"count": 3,
"precision": 4
}
}
生成各种编码格式的加密安全随机字节。 参数:
length
(整数,可选):要生成的字节数,默认值:32,最大值:1024encoding
(字符串,可选):输出编码("hex"、"base64"、"binary"),默认值:"hex"示例:
{
"name": "generate_random_bytes",
"arguments": {
"length": 32,
"encoding": "hex"
}
}
生成加密安全的版本4通用唯一识别码。 参数:
count
(整数,可选):要生成的UUID数量,默认值:1,最大值:100format
(字符串,可选):UUID格式("standard"、"compact"),默认值:"standard"示例:
{
"name": "generate_uuid",
"arguments": {
"count": 3,
"format": "standard"
}
}
生成具有可定制字符集的加密安全随机字符串。 参数:
length
(整数,可选):字符串长度,默认值:16,最大值:256charset
(字符串,可选):字符集("alphanumeric"、"alphabetic"、"numeric"、"hex"、"base64"、"ascii_printable"),默认值:"alphanumeric"count
(整数,可选):要生成的字符串数量,默认值:1,最大值:100示例:
{
"name": "generate_random_string",
"arguments": {
"length": 12,
"charset": "alphanumeric",
"count": 2
}
}
使用加密安全的随机性从提供的列表中随机选择项目。 参数:
choices
(数组,必需):可供选择的字符串项目数组count
(整数,可选):要选择的项目数量,默认值:1allow_duplicates
(布尔值,可选):是否允许重复选择,默认值:true示例:
{
"name": "generate_random_choice",
"arguments": {
"choices": ["apple", "banana", "cherry", "date"],
"count": 2,
"allow_duplicates": false
}
}
生成具有可配置概率的加密安全随机布尔值。 参数:
count
(整数,可选):要生成的布尔值数量,默认值:1,最大值:1000probability
(数字,可选):为真的概率(0.0到1.0),默认值:0.5示例:
{
"name": "generate_random_boolean",
"arguments": {
"count": 10,
"probability": 0.7
}
}
服务器包含一个内置提示,帮助大语言模型理解应使用本服务器进行随机数生成,而不是尝试自行生成随机值。
generate_random
此提示会告知AI在生成随机数方面的局限性,并指导其使用可用的加密安全工具。 参数:
type
(字符串,可选):所需随机值的类型(整数、浮点数、UUID、字符串、字节、选择、布尔值)requirements
(字符串,可选):随机生成的特定要求示例用法: 当大语言模型收到诸如“生成一个随机密码”或“选择一个随机数”的请求时,该提示将:
本服务器实施了多项安全最佳实践:
crypto
模块函数(randomBytes
、randomInt
、randomUUID
),这些函数提供适用于安全敏感应用的加密安全伪随机数。服务器包含一个全面的测试套件,用于验证所有功能:
# 运行测试套件
node test.js
测试套件涵盖:
服务器在保持安全性的同时进行了性能优化:
pluggedin-random-number-generator-mcp/
├── src/
│ └── index.ts # 主服务器实现
├── dist/ # 编译后的JavaScript输出
├── test.js # 全面的测试套件
├── package.json # 项目配置
├── tsconfig.json # TypeScript配置
└── README.md # 本文档
npm run build
npm run dev
你可以使用MCP检查器工具测试服务器:
npm run inspector
这将启动MCP检查器Web界面,你可以在其中:
欢迎贡献代码!请随时提交拉取请求。对于重大更改,请先打开一个问题讨论你想要更改的内容。
本项目采用MIT许可证 - 详情请参阅LICENSE文件。
如需支持、提问或提出功能请求: