
Unified MCP Client Library

2025.04.20
1
TypeScript开发工具自动化代理开发效率
Unified MCP Client Library 是一个开源的 TypeScript/Node.js 库,旨在帮助开发者轻松连接任何大型语言模型(LLM)到任何 MCP 服务器,从而构建具有工具访问能力的自定义代理。该库支持多种功能,包括动态服务器选择、多服务器支持、工具访问控制等,适用于需要自动化工具访问的开发场景。
View on GitHub
Overview
基本能力
产品定位
Unified MCP Client Library 是一个开源的 TypeScript/Node.js 库,旨在帮助开发者轻松连接任何大型语言模型(LLM)到任何 MCP 服务器,从而构建具有工具访问能力的自定义代理。
核心功能
- 易用性:只需几行 TypeScript 代码即可创建支持 MCP 的代理。
- LLM 灵活性:支持任何 LangChain.js 兼容的 LLM。
- HTTP 支持:直接通过 SSE/HTTP 连接到 MCP 服务器。
- 动态服务器选择:代理可以动态从服务器池中选择合适的 MCP 服务器。
- 多服务器支持:在一个代理中使用多个 MCP 服务器。
- 工具限制:可以限制不安全工具(如文件系统或网络)的使用。
- 自定义代理:可以使用 LangChain.js 适配器或实现新的适配器来构建自定义代理。
适用场景
- 构建自动化代理,用于网页浏览、文件操作、3D 建模等工具访问。
- 开发需要动态选择 MCP 服务器的应用。
- 构建多服务器支持的自定义代理。
工具列表
- playwright:用于浏览器自动化的工具。
- airbnb:用于 Airbnb 相关操作的 MCP 服务器。
常见问题解答
- 如何安装? 使用 npm 安装
mcp-use
和 LangChain.js 及相关 LLM 提供者。 - 如何配置 MCP 服务器? 可以通过 JSON 配置文件或直接在代码中配置。
- 如何限制工具访问? 使用
disallowedTools
参数限制不安全工具的使用。
使用教程
使用依赖
- Node.js 22.0.0 或更高版本。
- npm、yarn 或 pnpm(示例中使用 pnpm)。
安装教程
# 从 npm 安装
npm install mcp-use
# 安装 LangChain.js 和 LLM 提供者(如 OpenAI)
npm install langchain @langchain/openai dotenv
创建 .env
文件:
OPENAI_API_KEY=your_api_key
调试方式
import { ChatOpenAI } from '@langchain/openai'
import { MCPAgent, MCPClient } from 'mcp-use'
import 'dotenv/config'
async function main() {
// 1. 配置 MCP 服务器
const config = {
mcpServers: {
playwright: { command: 'npx', args: ['@playwright/mcp@latest'] }
}
}
const client = MCPClient.fromDict(config)
// 2. 创建 LLM
const llm = new ChatOpenAI({ modelName: 'gpt-4o' })
// 3. 实例化代理
const agent = new MCPAgent({ llm, client, maxSteps: 20 })
// 4. 运行查询
const result = await agent.run('Find the best restaurant in Tokyo using Google Search')
console.log('Result:', result)
}
main().catch(console.error)