项目简介
Open IMI 是一个开源的AI聊天界面,旨在为开发者、工程师和技术团队提供一个可定制的平台,用于连接多种大型语言模型(LLM)并深度集成外部工具和服务,通过 Model Context Protocol (MCP) 标准实现。它不仅是一个功能丰富的聊天客户端,还包含一个可供开发者修改和扩展的MCP服务器示例,方便本地开发和实验。
主要功能点
- 支持连接OpenAI, Google, Anthropic, Ollama等多种主流LLM。
- 通过 Model Context Protocol (MCP) 标准与外部服务集成工具、资源和Prompt。
- 提供直观的用户界面管理已配置的MCP服务器连接状态和信息。
- 支持文件系统(SQLite)或PostgreSQL数据库存储聊天记录。
- 内置一个基于Node.js的可定制MCP服务器示例,开箱即用并易于扩展。
- 提供文件上传和搜索功能(开发中)。
安装步骤
- 确保您的系统已安装 Node.js 和 pnpm 包管理器。
- 克隆项目仓库到本地。
git clone https://github.com/ProjectAI00/open-imi.git cd open-imi - 打开终端,进入项目根目录。
- 运行以下命令安装项目依赖:
pnpm i - 运行以下命令初始化项目(会复制 '.env.example' 文件为 '.env' 并根据配置设置数据库):
pnpm initial - 编辑新生成的 '.env' 文件,根据需要添加您希望使用的LLM提供商的API Keys,例如:
GOOGLE_GENERATIVE_AI_API_KEY=YOUR_GOOGLE_API_KEY OPENAI_API_KEY=YOUR_OPENAI_API_KEY # 如果使用PostgreSQL,还需要配置 POSTGRES_URL 并移除 USE_FILE_SYSTEM_DB=true - 运行以下命令启动开发服务器:
pnpm dev - 开发服务器启动后,您可以在浏览器中访问 'http://localhost:3000' 来使用应用程序。
服务器配置
Open IMI 的核心功能是作为 MCP 客户端管理器运行,它可以连接到各种 MCP 服务器(无论是远程服务还是本地进程)。Open IMI 使用根目录下的 '.mcp-config.json' 文件来定义和管理这些服务器连接。
默认情况下,运行 'pnpm initial' 后会自动生成 '.mcp-config.json' 文件,并包含一个指向项目内置示例服务器 ('custom-mcp-server') 的配置。
一个典型的 '.mcp-config.json' 文件结构如下:
{ "server-name-1": { // 配置MCP服务器连接方式。常见的类型包括: // 1. Stdio (标准输入输出,通常用于本地进程) "command": "服务器启动命令", // 必需,例如启动一个Node.js脚本: "tsx" "args": ["参数1", "参数2", ...], // 可选,传递给启动命令的参数,例如脚本路径: ["path/to/your/mcp-server.ts"] "env": { "ENV_VAR": "value" }, // 可选,为服务器进程设置环境变量 // 2. SSE (Server-Sent Events,基于HTTP/S) "url": "SSE服务器的完整URL", // 必需,例如: "https://api.example.com/mcp/sse" "headers": { "Authorization": "Bearer token", ... }, // 可选,发送到服务器的HTTP头部 // 3. API Key (API代理,将Tool Call转换为HTTP请求) "apiKey": "认证API的密钥", // 必需 "baseURL": "API的基础URL", // 可选,例如 "https://api.github.com" // 4. URL (简化的SSE配置,不包含headers) "url": "服务器URL", // 必需,例如: "https://simple.example.com/mcp" }, "server-name-2": { // 添加另一个服务器配置... } }
对于内置的 'custom-mcp-server' 示例,默认配置通常是使用 Stdio 传输,'command' 可能设置为 'tsx' 或 'node',而 'args' 则指向示例服务器的脚本文件路径(例如 '["custom-mcp-server"]' 或 '["custom-mcp-server/index.ts"]'),这样 Open IMI 客户端启动时就会通过标准I/O启动并连接到这个示例服务器。
您可以通过修改此文件或使用应用程序的用户界面来添加、修改或删除MCP服务器配置。
基本使用方法
- 按照安装步骤启动应用程序。
- 访问 'http://localhost:3000' 打开聊天界面。
- 根据需要,在设置页面配置您想要使用的LLM提供商的API密钥。
- Open IMI 将自动读取 '.mcp-config.json' 文件中的配置,并尝试连接到列出的MCP服务器(包括内置示例服务器)。服务器连接状态可以在UI中查看和管理。
- 在聊天界面选择一个LLM模型。
- 您现在可以开始与AI模型互动。AI模型将能够发现并调用所有已成功连接的MCP服务器提供的工具、访问资源等,从而扩展其功能。例如,您可以尝试触发内置示例服务器提供的天气查询工具。
信息
分类
AI与计算