使用说明

项目简介

本项目 'llamacloud-mcp-server' 是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在为大型语言模型 (LLM) 客户端提供上下文信息和工具能力。它利用 LlamaCloud 平台构建索引,并提供一个 RAG (Retrieval-Augmented Generation) 工具,使 LLM 能够查询并利用索引中的数据进行回答。该服务器主要设计用于与 Claude Desktop 等 MCP 客户端协同工作,扩展 LLM 的知识范围和应用场景。

主要功能点

  • RAG 工具集成: 内置一个名为 'llama_index_documentation' 的工具,允许 LLM 通过检索 LlamaCloud 索引来回答用户提出的问题。
  • LlamaCloud 数据源: 使用 LlamaCloud 作为数据索引和管理平台,支持多种数据源接入和灵活的索引配置。
  • MCP 服务器: 遵循 MCP 协议,通过标准化的 JSON-RPC 接口与客户端通信,提供工具注册和执行能力。
  • 本地部署: 可以本地运行,方便用户在私有环境中使用,保护数据安全。
  • 易于配置: 通过简单的环境变量配置 LlamaCloud 和 OpenAI API 密钥即可快速启动服务。

安装步骤

  1. 克隆仓库

    git clone https://github.com/run-llama/llamacloud-mcp-server.git
    cd llamacloud-mcp-server
  2. 创建 '.env' 文件 在仓库根目录下创建 '.env' 文件,并添加以下环境变量:

    LLAMA_CLOUD_API_KEY=YOUR_LLAMA_CLOUD_API_KEY  # 你的 LlamaCloud API 密钥
    OPENAI_API_KEY=YOUR_OPENAI_API_KEY        # 你的 OpenAI API 密钥 (用于 RAG 查询,可替换为其他 LLM)

    请替换 'YOUR_LLAMA_CLOUD_API_KEY' 和 'YOUR_OPENAI_API_KEY' 为你实际的 API 密钥。

  3. 安装依赖 虽然 README 中没有明确指出,但根据配置 Claude Desktop 的命令 'poetry' 推测,项目可能使用 Poetry 进行包管理。请确保已安装 Poetry,然后在项目根目录下运行:

    poetry install

    如果 Poetry 安装失败或提示找不到 'poetry' 命令,请先安装 Poetry (参考 https://python-poetry.org/docs/basic-usage/)。如果项目未使用 Poetry,可能需要根据 'mcp-server.py' 中的依赖手动安装,例如 'pip install python-dotenv mcp-server llama-index-cloud'。

服务器配置

要让 MCP 客户端(例如 Claude Desktop)连接到此 MCP 服务器,需要在客户端的配置中指定服务器的启动命令和参数。以下是 Claude Desktop 的配置示例,你需要根据你的实际路径进行调整:

{
    "mcpServers": {
        "llama_index_docs_server": {  // 服务器名称,可以自定义
            "command": "poetry",      // 启动命令,这里假设使用 Poetry
            "args": [                // 启动参数列表
                "--directory",        // Poetry 工作目录参数
                "$YOURPATH/llamacloud-mcp-server", // 替换为你的仓库路径
                "run",                // Poetry run 命令
                "python",             // 执行 python
                "$YOURPATH/llamacloud-mcp-server/mcp-server.py" // 替换为你的 mcp-server.py 脚本路径
            ]
        }
    }
}

配置说明:

  • '"llama_index_docs_server"': 服务器的名称,在客户端中用于标识和调用。你可以自定义名称。
  • '"command": "poetry"': 指定启动服务器的命令为 'poetry'。如果你的环境可以直接运行 'python mcp-server.py',可以将 'command' 修改为 '"python"',并调整 'args'。
  • '"args"': 包含了启动服务器所需的参数列表。
    • '"--directory", "$YOURPATH/llamacloud-mcp-server"': 指定 Poetry 的工作目录为你的仓库路径。你需要将 '$YOURPATH/llamacloud-mcp-server' 替换为你的本地仓库的绝对路径。
    • '"run", "python", "$YOURPATH/llamacloud-mcp-server/mcp-server.py"': 使用 Poetry 运行 Python 脚本 'mcp-server.py'。同样需要替换路径。

确保将 '$YOURPATH/llamacloud-mcp-server' 替换为你实际的仓库路径。 配置完成后,重启 Claude Desktop 使配置生效。

基本使用方法

  1. 启动 MCP 服务器 在仓库根目录下,运行以下命令启动 MCP 服务器:

    poetry run python mcp-server.py

    或 (如果直接使用 python)

    python mcp-server.py

    服务器默认使用 'stdio' 传输协议。

  2. 在 Claude Desktop 中使用 启动 Claude Desktop,在配置正确的情况下,你应该能在 Claude Desktop 的查询输入框下方看到一个工具图标,名称可能类似于 "llama_index_docs_server" (取决于你在配置中设置的服务器名称)。

  3. 调用 RAG 工具 在 Claude Desktop 中提问时,可以直接输入问题。Claude 可能会自动判断是否需要调用 'llama_index_documentation' 工具来辅助回答。你也可以在提示词中明确指示 Claude 使用该工具,例如:

    请使用 llama_index_documentation 工具搜索关于 LlamaIndex 文档的内容,并回答我的问题:[你的问题]

    Claude 会将你的问题传递给 MCP 服务器,服务器会调用 'llama_index_documentation' 工具查询 LlamaCloud 索引,并将结果返回给 Claude,最终 Claude 会结合检索到的信息生成答案。

信息

分类

AI与计算