Model Salt

com.modelsalt由 modelsalt.com 發布官方發布者v1.0.4更新於 Nov 5, 2026

Randomness from outside the model, so one prompt gives different answers that still fit the ask.

已驗證Streamable HTTP可網頁執行開發者工具AI 與機器學習

概覽

AI 產生的概覽

Model Salt 為創作類請求引入模型之外的隨機性,讓助理對同一提示給出不同但仍符合要求的回答。

可以做什麼
  • 用 model_salt 工具原樣傳入請求,取回這次需要決定的開放選項
  • 帶上回傳的 id 和助理對探索步驟的回覆再次呼叫,完成該步驟
  • 用 0 到 2 的強度設定(預設 1)調整結果偏離模型慣常選擇的程度
  • 透過 keep 欄位保留已決定的答案,只重新抽取其餘開放選項
  • 對只有一個正確答案的問題(如計算、事實、修 bug)跳過此工具
適用情境
適合希望同一開放式提示多次執行得到真正不同結果的情境,例如圖片、SVG、命名、故事、計畫或設計。不適合事實性或單一答案的任務,此時模型會被告知跳過此工具。
執行需求
需要 Node 18 或更新版本以執行 npx 套件,或使用遠端端點。安裝指令會把伺服器加入 Claude Code、Codex、Gemini CLI 或 Kimi Code。選用:已登入的 Claude Code 或 Codex,會在你自己的方案上執行一次簡短的額外請求;若沒有,模型會在自己的對話中完成該步驟並消耗更多 token。存取公開隨機來源需要網路,離線時改用本機隨機數。
安裝前請注意
安裝會修改客戶端的 MCP 設定,並為 Codex 和 Kimi Code 在 ~/.agents/skills/ 下加入技能檔案;解除安裝會移除它們。加鹽後的回覆較慢且更耗 token(範例中每則回覆多約 3,300 個輸出 token)。提示詞不會傳送給隨機來源,伺服器端也不儲存內容,但此工具確實會改變助理的回答方式。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Model Salt,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/com.modelsalt%2Fmodel-salt/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "model-salt": {
      "type": "http",
      "url": "https://modelsalt.com/mcp"
    }
  }
}

README

Model Salt

Ask a language model for the same thing ten times and you get the same answer ten times. Model Salt is an MCP server that gives your model randomness from outside it, so one prompt gives ten different answers that still do exactly what you asked.

[npm] [MIT licence]

modelsalt.com · works in Claude Code, Codex, Gemini CLI and Kimi Code

[Ten runs of "Generate an SVG of a pelican riding a bicycle" on Claude Opus 5.5: the plain prompt draws the same pelican ten times, with Model Salt nine of the ten pictures are different]

Install

One command adds it to your client. Run it once.

ClientCommand
Claude Codenpx -y @modelsalt/model-salt setup claude
Codexnpx -y @modelsalt/model-salt setup codex
Gemini CLInpx -y @modelsalt/model-salt setup gemini
Kimi Codenpx -y @modelsalt/model-salt setup kimi

Start a new session in your client after it, and the model_salt tool is there.

  • What it adds: the model-salt server in your client's MCP list. For Codex and Kimi Code it also adds a short skill at ~/.agents/skills/model-salt/ that tells the model when to call the tool, and for Codex one setting on that server so the model sees the tool from the start.
  • Gemini CLI runs local servers only in folders you trust.
  • See first: add --dry-run to print what it would change and change nothing.
  • Run it twice: nothing changes the second time.

Undo

sh
npx -y @modelsalt/model-salt uninstall claude    # or codex, gemini, kimi

It takes out everything setup added. The skill stays while another client of yours still uses it. --dry-run works here too.

Use it

Ask for anything with room for choices: a picture, an SVG, a page, a name, a story, a plan. The model calls model_salt with your request, gets back what to settle this time, and then does your request as you asked it.

Want more or less of it? Say so in your prompt ("make it really different", "keep it close to the usual"). The tool takes a setting from 0 to 2. Left out, it is 1.

SettingHow often each choice keeps the model's usual pick (target)
0always
0.570% of the time
1 (default)45% of the time
1.525% of the time
2no more often than any other fitting pick

The model skips the tool for questions with one right answer (a sum, a fact, a bug fix).

Keep what you like. Like part of a result? Say what to keep in plain words ("keep the palette and layout, give me new illustrations"). Your model copies those decided answers from the earlier Model Salt reply into the tool's keep field and calls it again. Only the open choices are rolled again, and the reply starts with one line, e.g. Kept: palette = burnt orange on cream; layout = split screen, text left. That holds on later runs until you say start fresh, and "give me something new" leaves it out. In a new chat, paste the Kept: line or say it in your own words. A kept answer that no longer fits a new request is dropped, and the reply says so. Nothing is stored on our side.

What it changes

Same prompt, 10 runs each, from the examples on modelsalt.com.

"Generate an SVG of a pelican riding a bicycle." Different pictures in 10 runs:

ModelPlain promptWith Model Salt
Claude Opus 5.519
Claude Fable 5.139
GPT-6.1 Sol210
GPT-6 Astra18
Gemini 4 Argon210
Kimi K319

"Suggest a name for a neighbourhood coffee shop." Claude Opus 5.5, the first five runs:

Plain promptWith Model Salt
The Common GrindThe Footbridge
Common GroundBrew Espresso Bar
The Common GrindSnugwick Corner
The Daily Grind & GatherOld Oak's
The Common CupHilltop Coffee

"Write the first line of a short story about a lighthouse keeper." Claude Opus 5.5:

  • Plain, 5 of 5 runs: "For thirty-one years, Elias Marrow had kept the light burning for ships that never..." (Marrow, Maren or Marsh, thirty-one or forty-one years)
  • With Model Salt: "The sea has gone perfectly still, and I have never been more afraid." / "The beam swept the black water again, lighting nothing Tomas had ever loved." / "Halfway up the iron stair with a can of whale oil knocking against her knee, Agnes Merrow..."

Every run, plain and salted, is in examples/, with the prompt, the model and the answer.

What it needs

  • Node 18 or later. npx fetches the package the first time.
  • Claude Code or Codex, signed in, or neither. With one of them on the machine, each call runs one short extra request on your machine, on your own plan, with no API key: through Codex when you use Codex, and through Claude Code (Claude Opus 5.5) when you use Claude Code, Gemini CLI or Kimi Code. If that request can't run (signed out), the tool says so and your model carries on with the request as asked. With neither on the machine (a Docker container, Cursor or Copilot alone), your own model does that step in its own chat: it calls the tool twice, first with the request, then with its reply to the exploring step, and uses more of its own tokens for it.
  • Time and tokens. A salted answer takes longer and uses more tokens than a plain one. On the pelican prompt, Claude Opus 5.5 used about 3,300 more output tokens per answer.
  • Network. The server fetches random bytes from public randomness sources (quantum noise from the LfD quantum random number service, and the public drand and NIST beacons). Your prompt is not sent to them. Offline, it uses your computer's own random generator.

Other ways to run it

  • Short name: npx -y model-salt <args> runs the same package as npx -y @modelsalt/model-salt <args>.
  • As a plugin: plugin/ holds a Codex plugin, a Claude Code plugin and a Gemini CLI extension, and this repo is a plugin marketplace. From a clone:
    • Codex: codex plugin marketplace add /path/to/model-salt, then codex plugin add model-salt@model-salt
    • Claude Code: claude plugin marketplace add /path/to/model-salt, then claude plugin install model-salt@model-salt
    • Gemini CLI: gemini extensions install /path/to/model-salt/plugin
  • By hand: add a stdio MCP server that runs npx -y @modelsalt/model-salt anthropic (Claude, Gemini and Kimi models) or npx -y @modelsalt/model-salt openai (GPT models).
  • From a clone: node src/stdio.mjs anthropic in place of the npx command.

How it works

In a separate short run (with no Claude Code or Codex on the machine, in your own model's chat, over two tool calls), the model names the biggest open decisions in your request (the questions an expert would ask) and a range of answers to each, its usual one included. Randomness from outside the model picks one answer per question. Your model then does the request with those answers settled. More, and why simpler ways failed: docs/how-it-works.md.

Contributing

Found a prompt that still gives the same answer every time with Model Salt? Open an issue with the prompt, the model and a few runs. How to test a change to a family's steps: CONTRIBUTING.md.

Privacy

Model Salt runs on your machine and never sends your prompts anywhere. It only asks public random sources for random bytes. Details: Privacy policy.

Licence

  • Code: MIT, see LICENSE.
  • Example runs and pictures (examples/, the images in docs/): CC BY 4.0, credit "Model Salt", see examples/LICENSE.
  • Word list (src/words.mjs, Webster's 2nd, 1934): public domain.

Model Salt is a project by Chris Benjaminsen.

來源:README.md,提交 61b3712

工具

1

model_salt

Model Salt

Call this before any creative or open-ended request (an image, a picture prompt, a story, a poem, a name, an idea, a design, a plan), so the result is varied instead of your usual answer and still exactly what was asked. First call: send the user's request word for word in `request` (and `randomness` only if the user asked for more or less variety). It returns an exploring step and an `id`. Do that step silently, without showing it to the user, and call this tool again with the `id` and your whole reply to the step in `explored`. The second call returns what was decided. Then make the result itself in the same reply: for a request for an image, generate the image with your image generation tool and show it (a written prompt is not the result); for writing, write it. The result shows every decided answer.

輸入參數idkeeprequestexploredrandomness

版本歷史

3
  1. v1.0.4最新Nov 5, 2026
  2. v1.0.2Nov 3, 2026
  3. v1.0.1Oct 29, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分