Just Prompt

Just Prompt

一个轻量级的 MCP 服务器,为各种 LLM 提供商(包括 OpenAI、Anthropic、Google Gemini、Groq、DeepSeek 和 Ollama)提供统一的接口。

Category
访问服务器

README

Just Prompt - 面向 LLM 提供商的轻量级 MCP 服务器

just-prompt 是一个模型控制协议 (MCP) 服务器,它为各种大型语言模型 (LLM) 提供商(包括 OpenAI、Anthropic、Google Gemini、Groq、DeepSeek 和 Ollama)提供统一的接口。

工具

服务器中提供以下 MCP 工具:

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

    • 参数:
      • text: 提示文本
      • models_prefixed_by_provider (可选): 带有提供商前缀的模型列表。如果未提供,则使用默认模型。
  • prompt_from_file: 从文件向多个 LLM 模型发送提示

    • 参数:
      • file: 包含提示的文件的路径
      • models_prefixed_by_provider (可选): 带有提供商前缀的模型列表。如果未提供,则使用默认模型。
  • prompt_from_file_to_file: 从文件向多个 LLM 模型发送提示,并将响应保存为 markdown 文件

    • 参数:
      • file: 包含提示的文件的路径
      • models_prefixed_by_provider (可选): 带有提供商前缀的模型列表。如果未提供,则使用默认模型。
      • output_dir (默认: "."): 用于保存响应 markdown 文件的目录
  • list_providers: 列出所有可用的 LLM 提供商

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

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

提供商前缀

每个模型都必须以提供商名称作为前缀

使用短名称可以更快地引用

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

特性

  • 适用于多个 LLM 提供商的统一 API
  • 支持来自字符串或文件的文本提示
  • 并行运行多个模型
  • 使用 --default-models 列表中的第一个模型自动进行模型名称校正
  • 能够将响应保存到文件
  • 轻松列出可用的提供商和模型

安装

# 克隆存储库
git clone https://github.com/yourusername/just-prompt.git
cd just-prompt

# 使用 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 安装

默认模型设置为 anthropic:claude-3-7-sonnet-20250219

如果您直接从存储库中使用 Claude Code,您可以在 .mcp.json 文件中看到我们将默认模型设置为...

{
  "mcpServers": {
    "just-prompt": {
      "type": "stdio",
      "command": "uv",
      "args": [
        "--directory",
        ".",
        "run",
        "just-prompt",
        "--default-models",
        "anthropic:claude-3-7-sonnet-20250219,openai:o3-mini,gemini:gemini-2.5-pro-exp-03-25"
      ],
      "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", "anthropic:claude-3-7-sonnet-20250219,openai:gpt-4o,gemini:gemini-2.5-pro-exp-03-25"]
}

使用 mcp add 与项目范围

# 使用默认模型 (anthropic:claude-3-7-sonnet-20250219)
claude mcp add just-prompt -s project \
  -- \
    uv --directory . \
    run just-prompt

# 使用自定义默认模型
claude mcp add just-prompt -s project \
  -- \
  uv --directory . \
  run just-prompt --default-models "openai:gpt-4o"

# 使用多个默认模型
claude mcp add just-prompt -s user \
  -- \
  uv --directory . \
  run just-prompt --default-models "anthropic:claude-3-7-sonnet-20250219:4k,openai:o3-mini,gemini:gemini-2.0-flash,openai:gpt-4.5-preview,gemini:gemini-2.5-pro-exp-03-25"

mcp remove

claude mcp remove just-prompt

运行测试

uv run pytest

代码库结构

.
├── ai_docs/                   # AI 模型详细信息的文档
│   ├── llm_providers_details.xml
│   └── pocket-pick-mcp-server-example.xml
├── list_models.py             # 列出可用 LLM 模型的脚本
├── pyproject.toml             # Python 项目配置
├── specs/                     # 项目规范
│   └── init-just-prompt.md
├── src/                       # 源代码目录
│   └── just_prompt/
│       ├── __init__.py
│       ├── __main__.py
│       ├── atoms/             # 核心组件
│       │   ├── llm_providers/ # 单个提供商实现
│       │   │   ├── anthropic.py
│       │   │   ├── deepseek.py
│       │   │   ├── gemini.py
│       │   │   ├── groq.py
│       │   │   ├── ollama.py
│       │   │   └── openai.py
│       │   └── shared/        # 共享实用程序和数据类型
│       │       ├── data_types.py
│       │       ├── model_router.py
│       │       ├── utils.py
│       │       └── validator.py
│       ├── molecules/         # 更高级别的功能
│       │   ├── list_models.py
│       │   ├── list_providers.py
│       │   ├── prompt.py
│       │   ├── prompt_from_file.py
│       │   └── prompt_from_file_to_file.py
│       ├── server.py          # MCP 服务器实现
│       └── tests/             # 测试目录
│           ├── atoms/         # atoms 的测试
│           │   ├── llm_providers/
│           │   └── shared/
│           └── molecules/     # molecules 的测试

上下文启动

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

使用 Claude 的思考令牌

Anthropic Claude 模型 claude-3-7-sonnet-20250219 支持使用思考令牌的扩展思考能力。这允许 Claude 在回答之前进行更彻底的思考过程。

您可以通过在此格式的模型名称中添加后缀来启用思考令牌:

  • anthropic:claude-3-7-sonnet-20250219:1k - 使用 1024 个思考令牌
  • anthropic:claude-3-7-sonnet-20250219:4k - 使用 4096 个思考令牌
  • anthropic:claude-3-7-sonnet-20250219:8000 - 使用 8000 个思考令牌

用法示例:

# 将 4k 思考令牌与 Claude 一起使用
uv run just-prompt prompt "分析量子计算与经典计算的优缺点" \
  --models-prefixed-by-provider anthropic:claude-3-7-sonnet-20250219:4k

注意:

  • 思考令牌仅支持 claude-3-7-sonnet-20250219 模型
  • 有效的思考令牌预算范围为 1024 到 16000
  • 此范围之外的值将自动调整到范围内
  • 您可以使用 k 表示法(1k、4k 等)或使用确切的数字(1024、4096 等)来指定预算

资源

  • https://docs.anthropic.com/en/api/models-list?q=list+models
  • https://github.com/googleapis/python-genai
  • https://platform.openai.com/docs/api-reference/models/list
  • https://api-docs.deepseek.com/api/list-models
  • https://github.com/ollama/ollama-python
  • https://github.com/openai/openai-python

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选