项目简介

llmcp 是一个轻量级的命令行工具,旨在快速搭建和使用符合 Model Context Protocol (MCP) 协议的服务器。它基于 LiteLLM 库,能够支持多种主流的大语言模型(LLM),并以标准化的 MCP 接口对外提供服务。通过 llmcp,用户可以轻松地将各种 LLM 模型转化为可被 MCP 客户端调用的上下文服务,从而简化 LLM 应用的开发流程。

主要功能点

  • MCP 服务器: 实现最小化的 MCP 服务器功能,遵循 MCP 协议标准。
  • 资源托管: 通过 MCP 协议提供对大语言模型(LLM)的访问能力。
  • 工具注册与执行: 默认注册并提供 'ask' 工具,允许客户端通过 MCP 协议调用 LLM 模型进行对话。
  • Prompt 模板: 虽然仓库描述中未明确提及 Prompt 模板,但 'ask' 工具的 prompt 参数可以视为简单的动态 Prompt 输入。
  • 多模型支持: 基于 LiteLLM,理论上支持 LiteLLM 所支持的各种 LLM 模型,如 OpenAI, Anthropic, Gemini, Mistral 等 (需配置相应的 API Key)。
  • 简单的命令行界面: 提供易用的命令行工具,用于搜索模型、启动 MCP 服务器和进行简单的测试。

安装步骤

  1. 确保你的 Python 环境已安装,推荐使用 'uv' 或 'pip' 进行包管理。
  2. 使用以下命令安装 'llmcp':
    uv pip install llmcp
    或者
    pip install llmcp

服务器配置

MCP 客户端需要配置以下 JSON 信息以连接到 llmcp 服务器。请注意,你需要将 '<model_name>' 替换为你想要使用的具体模型名称 (例如 'gpt-3.5-turbo', 'gemini-2.5-pro-exp-03-25' 等)。模型名称需要是 LiteLLM 支持的模型。

{
  "serverName": "llmcp",
  "command": "llmcp",
  "args": ["serve", "<model_name>"]
}

参数说明:

  • serverName: MCP 服务器的名称,这里固定为 'llmcp'。
  • command: 启动 MCP 服务器的命令,这里为 'llmcp' (假设 'llmcp' 命令已添加到系统 PATH 环境变量中,或者使用 Python 模块方式 'python -m llmcp.cli')。
  • args: 传递给 'llmcp serve' 命令的参数,'serve' 是子命令,'<model_name>' 是要使用的模型名称。

API Key 配置:

llmcp 依赖于 LiteLLM 来访问不同的 LLM 提供商。你需要根据你使用的模型,配置相应的 API Key 环境变量。例如,如果你使用 OpenAI 的模型,你需要设置 'OPENAI_API_KEY' 环境变量。 详细的 API Key 环境变量名称请参考仓库的 README 文档或 LiteLLM 文档。

export OPENAI_API_KEY="sk-..." # OpenAI API Key 示例
export GEMINI_API_KEY="..."    # Gemini API Key 示例

基本使用方法

  1. 启动 MCP 服务器: 在命令行中使用 'llmcp serve <model_name>' 命令启动 MCP 服务器,将 '<model_name>' 替换为你想要使用的模型。例如:

    llmcp serve gpt-3.5-turbo
  2. 使用 MCP 客户端连接: 配置你的 MCP 客户端,使用上面提供的服务器配置 JSON 连接到 llmcp 服务器。

  3. 调用 'ask' 工具: 通过 MCP 客户端调用 'ask' 工具,并提供 'prompt' 参数来向 LLM 模型提问。例如,使用 MCP 客户端发送以下 JSON-RPC 请求:

    {
      "jsonrpc": "2.0",
      "method": "call_tool",
      "params": {
        "tool_name": "ask",
        "arguments": {
          "prompt": "你的问题是什么?"
        }
      },
      "id": 1
    }
  4. 测试模型: 可以使用 'llmcp test <model_name> "<prompt>"' 命令快速测试模型是否工作正常。例如:

    llmcp test gpt-3.5-turbo "你好"

注意事项

  • llmcp 提供的 'ask' 工具是一个非常基础的工具,仅用于简单的文本对话。
  • 要使用不同的 LLM 模型,请确保已安装 LiteLLM 并配置了相应的 API Key。
  • 此项目为最小化实现,可能不包含完整的 MCP 协议功能,具体功能请参考项目代码。

信息

分类

AI与计算