Token导航 LogoToken导航TokenDH.com
llmo (Doggybee) logo
AI代理未说明官方级别未说明来源级核验

llmo (Doggybee)

MCP Server

一个可配置的服务,用于编排LLM API和微能力协议(MCP)服务器之间的交互,具有动态工具发现和强大的流程管理功能。

工具数

0

提示词数

0

GitHub Stars

1

资源数

0
TypeScriptAI代理工作流自动化

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

doggybee

提供方

doggybee

最后核验

2026/5/17 20:23

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

轻量级LLM-MCP编排器(LLMO)

一种可配置的服务,协调LLM API和微能力协议(MCP)服务器之间的交互,具有动态工具发现和强大的流程管理功能。

概述

LLMO v1.4是一个后端服务,它:

  1. 管理本地MCP服务器进程(启动、停止、监视)
  2. 通过stdio JSON-RPC从MCP服务器动态发现工具
  3. 将请求路由到不同的LLM提供商
  4. 协调LLM和MCP之间的工具调用
  5. 支持流式响应,实现流畅的对话体验

主要特点

  • 动态工具发现:启动时自动从每个MCP中发现可用工具
  • 配置驱动:LLM提供者和MCP服务器的简单配置
  • 稳健的流程管理:可靠的MCP流程生命周期,优雅的关机
  • 弹性沟通:强大的stdio JSON-RPC通信,具有全面的错误处理功能
  • 工具调用编排:按顺序执行工具调用,并提供详细的错误报告
  • 流媒体支持:响应式用户体验的服务器发送事件(SSE)
  • 结构化日志记录:用于调试和监控的详细上下文丰富的日志记录

需求

  • Node.js 18+(LTS)
  • npm或纱线

安装

  1. 克隆存储库:
   git clone [repository-url]
   cd llmo
  1. 安装依赖项:
   npm install
  1. 复制示例环境文件并使用API密钥对其进行更新:
   cp .env.example .env
   # Edit .env with your API keys
  1. 审查和更新 config.yaml 配置LLM提供程序和MCP服务器的文件。

配置

LLMO v1.4使用YAML或JSON中的简化配置格式:

LLM提供商

配置一个或多个LLM提供程序及其API端点、身份验证和支持的模型。

MCP服务器

仅使用MCP服务器的启动参数进行配置-LLMO将在启动时动态发现其工具。

配置示例

# LLM Providers
llmProviders:
  - name: openai
    apiEndpoint: https://api.openai.com/v1/chat/completions
    authType: bearer
    authEnvVar: OPENAI_API_KEY
    models:
      - gpt-4
      - gpt-3.5-turbo

# MCP Servers (Local Processes)
mcpServers:
  - name: filesystem
    command: npx
    args:
      - -y
      - "@modelcontextprotocol/server-filesystem"
      - "/path/to/directory"
  
  - name: calculator
    command: node
    args: 
      - ./mcp-servers/calculator.js
    env:
      DEBUG: "true"

# Timeouts (in milliseconds)
timeouts:
  mcpResponse: 30000       # 30 seconds
  gracefulShutdown: 5000   # 5 seconds

运行服务

  1. 构建项目:
   npm run build
  1. 启动服务器:
   npm start

对于自动重新加载的开发:

npm run dev

运作原理

  1. 启动过程:

- LLMO加载配置并对其进行验证 - 启动所有已配置的MCP进程 - 发送 tools/list 请求每个MCP发现可用工具 - 在内存中缓存工具定义 - 启动HTTP服务器

  1. 工具发现:

- 启动时,LLMO发送 tools/list 向每个MCP发送JSON-RPC请求 - MCP使用其可用工具(名称、描述、参数模式)进行响应 - LLMO缓存这些定义,并将工具名称映射到其提供的MCP

  1. 聊天请求流:

- 客户端向发送请求 /chat 端点 - LLMO根据请求的模型路由到适当的LLM - LLMO在LLM请求中包含所有缓存的工具定义 - 当LLM返回tool_calls时,LLMO: - 将工具名称映射到其MCP - 发送a tools/call 向相应的MCP提出请求 - 将MCP的响应(或错误)返回给LLM - 流式响应实时转发给客户端

API终点

健康检查

GET /health

返回服务器状态信息。

聊天

POST /chat

主体:

{
  "model": "gpt-4",
  "messages": [
    {"role": "user", "content": "What's in my Documents folder?"}
  ],
  "stream": true
}

错误处理

LLMO实现了标准化的错误处理:

  • 对于非流式响应:带有代码和消息的JSON错误对象
  • 对于流式响应:SSE错误事件
  • 对于工具调用:具有详细消息的特定MCP\_\*错误类型:

- MCP_UNAVAILABLE:MCP流程不可用 - MCP_COMMUNICATION_ERROR:stdio通信错误 - MCP_TIMEOUT:MCP响应超时 - MCP_INVALID_RESPONSE:来自MCP的JSON-RPC响应无效

项目结构

该项目组织如下:

  • src/config:配置模式和加载
  • src/process-manager:MCP过程生命周期管理
  • src/mcp-client:标准JSON-RPC通信
  • src/llm-client:LLM API交互
  • src/routes:API端点
  • src/types:TypeScript接口和类型
  • src/utils:共享公用设施

许可证

麻省理工学院

目录标签

目录标签

TypeScriptAI代理工作流自动化LLM编排本地部署微能力协议动态工具发现流程管理JSON-RPC

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

token

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明token部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP