mcpField
J
Just Prompt - A lightweight MCP server for LLM providers

Just Prompt - A lightweight MCP server for LLM providers

本地服务
github.com/dislerAI 与智能体73963 周前更新

关于 Just Prompt - A lightweight MCP server for LLM providers

just-prompt 是一个轻量级 MCP 服务,为 OpenAI、Anthropic、Google Gemini、Groq、DeepSeek 和 Ollama 提供统一接口。它可以将同一提示词并行发送给多个模型,并支持将结果保存为文件。

主要功能

  1. 01统一接口访问六个 LLM 提供方
  2. 02并行向多个模型发送提示词
  3. 03从字符串或文件读取提示词
  4. 04将响应保存为 Markdown 文件
  5. 05推理强度与思考 token 后缀设置

适用场景

  1. 01对比多个模型对同一问题的回答
  2. 02使用 CEO 模型汇总多个模型的意见并作出决定
  3. 03将文件中的提示词批量发送给多个模型

MCP 相关

该项目是 MCP 服务,向 MCP 客户端暴露 prompt、prompt_from_file、ceo_and_board、list_models 等工具。模型通过 provider 前缀指定。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

Just Prompt - 面向大模型提供商的轻量级 MCP 服务

just-prompt 是一款模型控制协议(MCP)服务,为 OpenAI、Anthropic、Google Gemini、Groq、DeepSeek 和 Ollama 等多种大语言模型(LLM)提供统一接口。了解我们如何使用 ceo_and_board 工具,通过 o3 轻松做出艰难决策。

Just Prompt 标志 Just Prompt 标志

工具

此服务提供以下 MCP 工具:

  • prompt:向多个大模型发送提示词

    • 参数:
      • text:提示词文本
      • models_prefixed_by_provider(可选):带提供商前缀的模型列表。若未提供,则使用默认模型。
  • prompt_from_file:从文件读取提示词并发送给多个大模型

    • 参数:
      • abs_file_path:包含提示词的文件的绝对路径(必须是绝对路径,不能是相对路径)
      • models_prefixed_by_provider(可选):带提供商前缀的模型列表。若未提供,则使用默认模型。
  • prompt_from_file_to_file:从文件读取提示词并发送给多个大模型,然后将回复保存为 Markdown 文件

    • 参数:
      • abs_file_path:包含提示词的文件的绝对路径(必须是绝对路径,不能是相对路径)
      • models_prefixed_by_provider(可选):带提供商前缀的模型列表。若未提供,则使用默认模型。
      • abs_output_dir(默认值:"."):用于保存回复 Markdown 文件的绝对目录路径(必须是绝对路径,不能是相对路径)
  • ceo_and_board:向多个“董事会成员”模型发送提示词,并让“CEO”模型根据他们的回复做出决策

    • 参数:
      • abs_file_path:包含提示词的文件的绝对路径(必须是绝对路径,不能是相对路径)
      • models_prefixed_by_provider(可选):用作董事会成员的带提供商前缀的模型列表。若未提供,则使用默认模型。
      • abs_output_dir(默认值:"."):用于保存回复文件和 CEO 决策的绝对目录路径(必须是绝对路径,不能是相对路径)
      • ceo_model(默认值:"openai:o3"):用于 CEO 决策的模型,格式为 "provider:model"
  • list_providers:列出所有可用的大模型提供商

    • 参数:无
  • list_models:列出指定大模型提供商的所有可用模型

    • 参数:
      • provider:要列出模型的提供商(例如,'openai' 或 'o')

提供商前缀

每个模型都必须带有提供商名称前缀

使用短名称可更快地引用

  • o 或 openai:OpenAI
    • o:gpt-4o-mini
    • openai:gpt-4o-mini
  • a 或 anthropic:Anthropic
    • a:claude-3-5-haiku
    • anthropic:claude-3-5-haiku
  • g 或 gemini:Google Gemini
    • g:gemini-2.5-pro-exp-03-25
    • gemini:gemini-2.5-pro-exp-03-25
  • q 或 groq:Groq
    • q:llama-3.1-70b-versatile
    • groq:llama-3.1-70b-versatile
  • d 或 deepseek:DeepSeek
    • d:deepseek-coder
    • deepseek:deepseek-coder
  • l 或 ollama:Ollama
    • l:llama3.1
    • ollama:llama3.1

功能

  • 为多个大模型提供商提供统一 API
  • 支持通过字符串或文件提供文本提示词
  • 并行运行多个模型
  • 使用 --default-models 列表中的第一个模型自动修正模型名称
  • 可将回复保存到文件
  • 轻松列出可用的提供商和模型

安装

# Clone the repository
git clone https://github.com/yourusername/just-prompt.git
cd just-prompt

# Install with pip
uv sync
环境变量

创建包含 API 密钥的 .env 文件(可复制 .env.sample 文件):

cp .env.sample .env

然后编辑 .env 文件以添加 API 密钥(或在 shell 中导出这些密钥):

OPENAI_API_KEY=your_openai_api_key_here
ANTHROPIC_API_KEY=your_anthropic_api_key_here
GEMINI_API_KEY=your_gemini_api_key_here
GROQ_API_KEY=your_groq_api_key_here
DEEPSEEK_API_KEY=your_deepseek_api_key_here
OLLAMA_HOST=http://localhost:11434

Claude Code 安装

在以下所有示例中,请将目录替换为 just-prompt 目录的路径。

默认模型设置为 openai:o3:high、openai:o4-mini:high、anthropic:claude-opus-4-20250514、anthropic:claude-sonnet-4-20250514、gemini:gemini-2.5-pro-preview-03-25 和 gemini:gemini-2.5-flash-preview-04-17。

如果直接从代码仓库运行 Claude Code,可以在 .mcp.json 文件中看到我们将默认模型设置为……

{
  "mcpServers": {
    "just-prompt": {
      "type": "stdio",
      "command": "uv",
      "args": [
        "--directory",
        ".",
        "run",
        "just-prompt",
        "--default-models",
        "openai:o3:high,openai:o4-mini:high,anthropic:claude-opus-4-20250514,anthropic:claude-sonnet-4-20250514,gemini:gemini-2.5-pro-preview-03-25,gemini:gemini-2.5-flash-preview-04-17"
      ],
      "env": {}
    }
  }
}

--default-models 参数用于设置在未向 API 端点显式提供模型时要使用的模型。列表中的第一个模型也会在需要时用于修正模型名称。模型列表可以用逗号分隔。

启动服务时,它会自动检查你的环境中有哪些 API 密钥,并告知你可以使用哪些提供商。如果缺少某个密钥,该提供商会被列为不可用,但服务仍会启动,并可与可用的提供商配合使用。

使用 mcp add-json

复制以下内容并粘贴到 claude code 中,但先不要运行,直到你复制 JSON

claude mcp add just-prompt "$(pbpaste)"

要复制的 JSON

{
    "command": "uv",
    "args": ["--directory", ".", "run", "just-prompt"]
}

将默认模型自定义设置为 openai:gpt-4o。

{
    "command": "uv",
    "args": ["--directory", ".", "run", "just-prompt", "--default-models", "openai:gpt-4o"]
}

设置多个默认模型:

{
    "command": "uv",
    "args": ["--directory", ".", "run", "just-prompt", "--default-models", "openai:o3:high,openai:o4-mini:high,anthropic:claude-opus-4-20250514,anthropic:claude-sonnet-4-20250514,gemini:gemini-2.5-pro-preview-03-25,gemini:gemini-2.5-flash-preview-04-17"]
}
使用带有项目范围的 mcp add
# With default models
claude mcp add just-prompt -s project \
  -- \
    uv --directory . \
    run just-prompt

# With custom default model
claude mcp add just-prompt -s project \
  -- \
  uv --directory . \
  run just-prompt --default-models "openai:gpt-4o"

# With multiple default models
claude mcp add just-prompt -s user \
  -- \
  uv --directory . \
  run just-prompt --default-models "openai:o3:high,openai:o4-mini:high,anthropic:claude-opus-4-20250514,anthropic:claude-sonnet-4-20250514,gemini:gemini-2.5-pro-preview-03-25,gemini:gemini-2.5-flash-preview-04-17"

mcp remove

claude mcp remove just-prompt

运行测试

uv run pytest

代码库结构

.
├── ai_docs/                   # Documentation for AI model details
│   ├── extending_thinking_sonny.md
│   ├── llm_providers_details.xml
│   ├── openai-reasoning-effort.md
│   └── pocket-pick-mcp-server-example.xml
├── example_outputs/           # Example outputs from different models
├── list_models.py             # Script to list available LLM models
├── prompts/                   # Example prompt files
├── pyproject.toml             # Python project configuration
├── specs/                     # Project specifications
│   ├── init-just-prompt.md
│   ├── new-tool-llm-as-a-ceo.md
│   └── oai-reasoning-levels.md
├── src/                       # Source code directory
│   └── just_prompt/
│       ├── __init__.py
│       ├── __main__.py
│       ├── atoms/             # Core components
│       │   ├── llm_providers/ # Individual provider implementations
│       │   │   ├── anthropic.py
│       │   │   ├── deepseek.py
│       │   │   ├── gemini.py
│       │   │   ├── groq.py
│       │   │   ├── ollama.py
│       │   │   └── openai.py
│       │   └── shared/        # Shared utilities and data types
│       │       ├── data_types.py
│       │       ├── model_router.py
│       │       ├── utils.py
│       │       └── validator.py
│       ├── molecules/         # Higher-level functionality
│       │   ├── ceo_and_board_prompt.py
│       │   ├── list_models.py
│       │   ├── list_providers.py
│       │   ├── prompt.py
│       │   ├── prompt_from_file.py
│       │   └── prompt_from_file_to_file.py
│       ├── server.py          # MCP server implementation
│       └── tests/             # Test directory
│           ├── atoms/         # Tests for atoms
│           │   ├── llm_providers/
│           │   └── shared/
│           └── molecules/     # Tests for molecules
│               ├── test_ceo_and_board_prompt.py
│               ├── test_list_models.py
│               ├── test_list_providers.py
│               ├── test_prompt.py
│               ├── test_prompt_from_file.py
│               └── test_prompt_from_file_to_file.py
└── ultra_diff_review/         # Diff review outputs

上下文预热

阅读 README.md、pyproject.toml,然后运行 git ls-files 和 'eza --git-ignore --tree',以了解项目的上下文。

OpenAI o 系列的推理力度

对于 OpenAI o 系列推理模型(o4-mini、o3-mini、o3),你可以 控制模型在生成可见答案前进行多少内部推理。

在模型名称后(即提供商前缀之后)追加以下后缀之一:

  • :low   – 最少的内部推理(更快、更便宜)
  • :medium – 均衡(省略时的默认值)
  • :high  – 深入推理(更慢、消耗更多令牌)

示例:

  • openai:o4-mini:low
  • o:o4-mini:high

如果存在推理后缀,just‑prompt 会自动切换到 OpenAI Responses API(如果可用),并设置相应的 reasoning.effort 参数。如果安装的 OpenAI SDK 版本较旧,它会平稳回退到 Chat Completions 端点,并嵌入一条内部 系统指令,以近似达到所请求的推理力度。

Claude 的思考令牌

Anthropic Claude 模型 claude-opus-4-20250514 和 claude-sonnet-4-20250514 支持使用思考令牌进行扩展思考。这使 Claude 能够在回答前进行更深入的思考。

你可以通过按以下格式为模型名称添加后缀来启用思考令牌:

  • anthropic:claude-opus-4-20250514:1k - 为 Opus 4 使用 1024 个思考令牌
  • anthropic:claude-sonnet-4-20250514:4k - 为 Sonnet 4 使用 4096 个思考令牌
  • anthropic:claude-opus-4-20250514:8000 - 为 Opus 4 使用 8000 个思考令牌

注意:

  • 思考令牌适用于 claude-opus-4-20250514、claude-sonnet-4-20250514 和 claude-3-7-sonnet-20250219 模型
  • 有效的思考令牌预算范围为 1024 到 16000
  • 超出此范围的值会自动调整至有效范围内
  • 预算可以使用 k 表示法(1k、4k 等)或精确数字(1024、4096 等)指定

使用 Gemini 的思考预算

Google Gemini 模型 gemini-2.5-flash-preview-04-17 支持通过思考预算实现扩展思考能力。这样 Gemini 就能在给出回复前进行更全面的推理。

在模型名称后添加后缀即可启用思考预算,格式如下:

  • gemini:gemini-2.5-flash-preview-04-17:1k - 使用 1024 的思考预算
  • gemini:gemini-2.5-flash-preview-04-17:4k - 使用 4096 的思考预算
  • gemini:gemini-2.5-flash-preview-04-17:8000 - 使用 8000 的思考预算

注意:

  • 思考预算仅支持 gemini-2.5-flash-preview-04-17 模型
  • 思考预算的有效范围为 0 到 24576
  • 超出此范围的值会自动调整到范围内
  • 预算可以使用 k 表示法(1k、4k 等)或精确数字(1024、4096 等)

资源

掌握 AI 编码

通过 AI 编码基础原则学习编程。

关注 IndyDevDan 的 YouTube 频道,了解更多 AI 编码技巧和窍门。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。