基于提供的信息,这个工具可以命名为 **FortunaMCP 随机值生成器**。 其中 "FortunaMCP" 保留英文专有名词,后面加上中文描述,简洁明了地体现了工具的核心功能。

@siliconsociety/FortunaMCP
0 Stars 33 次浏览 siliconsociety 更新于 2026-08-23

FortunaMCP 是一个先进的 MCP 服务器,专注于生成高质量的随机值。它利用了 Fortuna C 扩展,该扩展直接由 Storm 提供支持——Storm 是一个强大且线程安全的 C++ 随机数生成引擎,经过优化以实现高速、基于硬件的熵。

该服务暂未提供标准配置,请参考 README 手动接入

服务介绍

FortunaMCP 服务器

FortunaMCP 是一个先进的 MCP 服务器,专门用于生成高质量的随机值。它利用了 Fortuna C 扩展,该扩展直接由 Storm 提供支持——Storm 是一个强大的、线程安全的 C++ 随机数生成引擎,针对高速、基于硬件的熵进行了优化。FortunaMCP 为各种 AI 应用程序提供了可靠的随机性。

大型语言模型在自然语言处理方面表现出色,但依赖于确定性算法,在真正需要不可预测性时显得不足。相比之下,FortunaMCP 提供了真正的随机性。这种能力使其在需要无偏见、不可预测结果的关键场景中不可或缺,而 LLM 近似(幻觉)在这种情况下是不够的。

FortunaMCP 非常适合用于蒙特卡洛模拟、复杂系统建模和分析以及交互式游戏机制。它不适用于区块链、安全或加密相关任务。

致谢

  • 开发者: Robert Sharp – Fortuna、Storm 和 FortunaMCP 服务器的创建者和维护者。
  • 托管方: Silicon Society – 自豪地托管 FortunaMCP 服务器并支持其为 AI 代理提供世界级随机值生成的使命。Silicon Society 正在构建大规模的学习未来。AI 支持的工作跟随学习,将学习带到工作发生的地方。跟随专业人士的实际操作,并获得适应您目标的个性化指导。加入 等待名单

参考部署

工具概述

骰子

  • 描述: 模拟掷出指定数量的骰子并返回它们的总和。支持标准 RPG 风格的骰子,面数为 {2, 4, 6, 8, 10, 12, 20, 30, 100}。
  • 使用场景: 适用于角色扮演游戏、棋盘游戏或需要骰子机制的模拟。
  • 示例:
    • 触发: "掷三个六面骰子" 或 "Roll 3d6"
    • 调用: Fortuna.dice(rolls=3, sides=6)

随机范围

  • 描述: 从自定义范围内选择一个随机整数并返回。参数受整数限制 (-9223372036854775807 到 9223372036854775807) 的约束,步长必须非零。
  • 使用场景: 适用于需要非标准步长或区间的模拟和抽样。
  • 示例:
    • 触发: "从 10 到 100 中以 5 为步长选择一个数字"
    • 调用: Fortuna.random_range(start=10, stop=100, step=5)

伯努利变量

  • 描述: 根据提供的成功概率执行伯努利试验,返回布尔结果。
  • 使用场景: 适用于二元决策,如模拟抛硬币、开/关事件或成功/失败结果。
  • 示例:
    • 触发语: "模拟一个有70%正面概率的硬币抛掷"
    • 调用: Fortuna.bernoulli_variate(ratio_of_truth=0.7)

二项分布变量

  • 描述: 在固定数量的伯努利试验中返回成功的次数,建模二项分布。
  • 使用场景: 对统计模拟、质量控制过程和需要确定成功率的实验非常有价值。
  • 示例:
    • 触发语: "在20次硬币抛掷中,每次50%的概率,确定正面出现的次数"
    • 调用: Fortuna.binomial_variate(number_of_trials=20, probability=0.5)

负二项分布变量

  • 描述: 计算在一系列伯努利试验中达到目标成功次数之前的失败次数。
  • 使用场景: 应用于可靠性工程、风险评估以及跟踪成功前失败次数至关重要的场景。
  • 示例:
    • 触发语: "在每次试验40%的成功率下,计算达到5次成功之前的失败次数"
    • 调用: Fortuna.negative_binomial_variate(number_of_trials=5, probability=0.4)

几何分布变量

  • 描述: 确定首次成功前的失败次数,遵循几何分布。
  • 使用场景: 适用于建模等待时间和首次发生事件的过程,例如客户获取或质量测试。
  • 示例:
    • 触发语: "在25%的成功率下,首次成功前有多少次失败?"
    • 调用: Fortuna.geometric_variate(probability=0.25)

泊松分布变量

  • 描述: 从泊松分布生成一个随机整数,特征是预期发生的次数(λ)。
  • 使用场景: 对于随时间发生的罕见事件建模至关重要,例如系统故障、网络流量或客户到达。
  • 示例:
    • 触发语: "模拟平均4次事件的时间间隔内的事件数量"
    • 调用: Fortuna.poisson_variate(mean=4.0)

随机浮点数

  • 描述: 在半开区间 [lower_limit, upper_bound) 内生成一个均匀分布的随机浮点数。两个边界都在-1.7976931348623157e+308到1.7976931348623157e+308的浮点数范围内。
  • 使用场景: 用于模拟、蒙特卡罗方法或任何需要连续均匀随机性的场景。
  • 示例:
    • 触发语: "生成一个0.0到1.0之间的随机浮点数"
    • 调用: Fortuna.random_float(lower_limit=0.0, upper_bound=1.0)

三角分布变量

  • 描述: 从由下限、上限和众数定义的三角分布中抽取一个随机浮点数。
  • 用例: 非常适合项目管理估算、风险分析或任何结果最可能围绕中心值的情况。
  • 示例:
    • 触发器: "模拟一个最可能值为50,范围从10到100的结果"
    • 调用: Fortuna.triangular(lower_limit=10.0, upper_limit=100.0, mode=50.0)

Beta 分布变量

  • 描述: 使用两个正形状参数从 [0, 1] 区间上的贝塔分布中抽取一个随机浮点数。
  • 用例: 广泛应用于贝叶斯统计、比例建模以及需要模拟概率的任何场景。
  • 示例:
    • 触发器: "生成具有形状参数2和5的随机概率"
    • 调用: Fortuna.beta_variate(alpha=2.0, beta=5.0)

帕累托分布变量

  • 描述: 从帕累托分布中返回一个随机浮点数,非常适合用于建模重尾现象。输出总是大于或等于1。
  • 用例: 在经济学、保险业和风险管理中非常有用,特别是在观察到幂律行为的情况下。
  • 示例:
    • 触发器: "生成具有形状参数1.5的帕累托分布值"
    • 调用: Fortuna.pareto_variate(alpha=1.5)

冯·米塞斯分布变量

  • 描述: 产生一个来自冯·米塞斯分布的随机角度,适用于圆形或方向数据。
  • 用例: 在气象学、导航以及涉及角度或周期性现象的应用中很常见。
  • 示例:
    • 触发器: "生成均值为0弧度且集中度为1.0的随机角度"
    • 调用: Fortuna.vonmises_variate(mu=0.0, kappa=1.0)

指数分布变量

  • 描述: 从由速率参数定义的指数分布中生成一个随机浮点数,用于建模独立事件之间的时间。
  • 用例: 对于模拟寿命、系统故障以及排队模型中的到达间隔时间至关重要。
  • 示例:
    • 触发器: "以0.5的速率模拟直到下一个事件发生的时间"
    • 调用: Fortuna.exponential_variate(lambda_rate=0.5)

伽玛分布变量

  • 描述: 从由形状和尺度参数确定的伽玛分布中返回一个随机浮点数。
  • 用例: 用于建模等待时间、可靠性分析以及各种连续过程。
  • 示例:
    • 触发器: "生成形状为2.0和尺度为3.0的伽玛变量"
    • 调用: Fortuna.gamma_variate(shape=2.0, scale=3.0)

威布尔分布变量

  • 描述: 从威布尔分布中抽取一个随机浮点数,该分布用于建模直到失败或事件发生的时间。
  • 用例: 广泛应用于生存分析、可靠性工程和故障率估计。
  • 示例:
    • 触发器: "使用形状参数1.5和尺度参数100.0模拟直到失败的时间"
    • 调用: Fortuna.weibull_variate(shape=1.5, scale=100.0)

正态变量

  • 描述: 从由均值和标准差定义的正态(高斯)分布中生成一个随机浮点数。
  • 使用场景: 统计建模、质量控制以及需要钟形曲线行为的模拟的基础。
  • 示例:
    • 触发条件: "生成均值为0,标准差为1的正态分布值"
    • 调用: Fortuna.normal_variate(mean=0.0, std_dev=1.0)

对数正态变量

  • 描述: 从基于底层正态分布的对数正态分布中抽取一个随机浮点数。
  • 使用场景: 用于金融建模、股票价格模拟以及结果是乘法性质的情景。
  • 示例:
    • 触发条件: "生成对数均值为0,对数标准差为1的对数正态变量"
    • 调用: Fortuna.log_normal_variate(log_mean=0.0, log_deviation=1.0)

极值变量

  • 描述: 从极值(Gumbel)分布中抽取一个随机浮点数,用于建模最大值或最小值。
  • 使用场景: 适用于风险评估、极端天气预测及工程中的压力测试。
  • 示例:
    • 触发条件: "模拟位置为0,尺度为1.0的极端事件"
    • 调用: Fortuna.extreme_value_variate(location=0.0, scale=1.0)

卡方变量

  • 描述: 根据自由度从卡方分布中生成一个随机浮点数。
  • 使用场景: 假设检验、方差估计和拟合优度检验必不可少。
  • 示例:
    • 触发条件: "生成具有5个自由度的卡方变量"
    • 调用: Fortuna.chi_squared_variate(degrees_of_freedom=5.0)

柯西变量

  • 描述: 返回来自柯西分布的一个随机浮点数,该分布以重尾为特征。
  • 使用场景: 在鲁棒统计分析、信号处理以及预期存在异常值的情况下有用。
  • 示例:
    • 触发条件: "生成位置为0,尺度为1.0的柯西变量"
    • 调用: Fortuna.cauchy_variate(location=0.0, scale=1.0)

Fisher F 变量

  • 描述: 从由两组自由度定义的Fisher F分布中抽取一个随机浮点数。
  • 使用场景: 应用于ANOVA检验、方差分析以及比较统计模型。
  • 示例:
    • 触发条件: "生成自由度分别为5和10的F变量"
    • 调用: Fortuna.fisher_f_variate(degrees_of_freedom_1=5.0, degrees_of_freedom_2=10.0)

学生t变量

  • 描述: 根据指定的自由度从学生t分布中产生一个随机浮点数。
  • 使用场景: 小样本统计分析、置信区间估计和假设检验的核心部分。
  • 示例:
    • 触发条件: "生成具有10个自由度的学生t变量"
    • 调用: Fortuna.student_t_variate(degrees_of_freedom=10.0)

相关 MCP 服务