一个模型上下文协议(MCP)中心,无缝连接AI客户端与智能代理,实现跨多个AI生态系统强大的跨平台通信。
MCP Agent Server 在 MCP 兼容客户端(如 Claude Desktop、VS Code、Cursor 等)和专用AI代理之间建立桥梁。它使您能够:
该项目利用了 mcp-ai-agent 框架来简化代理的创建和管理。
您可以直接使用npx运行MCP Agent Server,无需安装:
# 使用默认配置启动服务器
npx mcp-agent-server
# 使用自定义配置启动
npx mcp-agent-server --config my-config.json
# 测试代理
npx mcp-agent-server test-agent --name "顺序思考者" --prompt "2+2等于多少?"
全局安装以便在任何地方使用mcp-agent-server命令:
npm install -g mcp-agent-server
# 然后使用它
mcp-agent-server --config my-config.json
克隆仓库:
git clone <repository-url>
cd mcp-agent-server
安装依赖项:
npm install
构建项目:
npm run build
MCP Agent Server现在使用基于JSON的配置进行更简单的管理和部署。您可以在项目根目录中创建一个名为my-agents-config.json的个性化代理配置文件。如果存在,服务器会自动检测并使用此文件。
要创建自定义配置:
my-agents-config.json的新文件这是一个自定义代理配置的例子:
{
"version": "1.0.0",
"agents": [
{
"name": "代码上下文代理",
"description": "使用此代理分析和理解项目中的代码",
"model": {
"provider": "anthropic",
"model": "claude-3-5-haiku-20241022"
},
"toolsConfigs": [
{
"prebuilt": "sequentialThinking"
},
{
"mcpServers": {
"codeContext": {
"command": "node",
"args": ["/path/to/code-context-mcp/dist/index.js"]
}
}
}
]
},
{
"name": "网络搜索代理",
"description": "使用此代理搜索网络",
"systemPrompt": "优先使用勇敢搜索来搜索网络信息。",
"model": {
"provider": "anthropic",
"model": "claude-3-5-haiku-20241022"
},
"toolsConfigs": [
{
"prebuilt": "sequentialThinking"
},
{
"prebuilt": "braveSearch"
}
]
},
{
"name": "主代理",
"description": "可以管理其他代理的代理",
"model": {
"provider": "openai",
"model": "gpt-4o-mini"
},
"toolsConfigs": [
{
"agentRef": "代码上下文代理"
},
{
"agentRef": "网络搜索代理"
}
]
}
]
}
"openai" - OpenAI模型(GPT-4、GPT-4o等)"anthropic" - Anthropic Claude模型"google" - Google生成式AI(Gemini模型)"vertex" - Google Vertex AI"bedrock" - Amazon Bedrock"azure" - Azure OpenAI服务"cohere" - Cohere模型"mistral" - Mistral AI模型"fireworks" - Fireworks AI"groq" - Groq(超快速推理)"perplexity" - Perplexity AI"togetherai" - Together AI"xai" - xAI(Grok模型)"deepseek" - DeepSeek模型"cerebras" - Cerebras推理"deepinfra" - DeepInfra"replicate" - Replicate(开源模型)"gpt-4o-mini","claude-3-5-haiku-20241022","gemini-2.0-flash-exp")预构建服务器(推荐):
{
"prebuilt": "sequentialThinking"
}
可用的预构建服务器:sequentialThinking,memory,braveSearch,firecrawlMcp,fetch,awsKbRetrieval,everart,fileSystem,sqlite
自定义MCP服务器:
{
"mcpServers": {
"serverName": {
"command": "node",
"args": ["/path/to/server.js"],
"env": {
"API_KEY": "your-api-key"
}
}
}
}
代理引用(用于主代理):
{
"agentRef": "其他代理名称"
}
导入代理(用于使用外部代理文件):
{
"type": "import",
"importPath": "/path/to/your/agent-file.js",
"exportName": "createResearchAgent",
"factoryArgs": {
"modelProvider": "anthropic",
"modelName": "claude-3-5-haiku-20241022",
"includeMemory": true
}
}
这允许您从使用mcp-ai-agent库创建的TypeScript/JavaScript文件中导入代理。导入的文件可以导出:
您可以控制哪些代理暴露给MCP客户端,使用每个代理上的expose布尔字段。这在您想要有仅内部使用的辅助代理时非常有用:
{
"version": "1.0.0",
"agents": [
{
"name": "网络搜索助手",
"description": "内部网络搜索能力",
"model": { "provider": "openai", "model": "gpt-4o-mini" },
"toolsConfigs": [{ "prebuilt": "braveSearch" }],
"expose": false
},
{
"name": "主助理",
"description": "带有网络搜索功能的面向公众的助理",
"model": {
"provider": "anthropic",
"model": "claude-3-5-haiku-20241022"
},
"toolsConfigs": [
{ "prebuilt": "sequentialThinking" },
{ "agentRef": "网络搜索助手" }
],
"expose": true
}
]
}
expose: true(默认):代理作为工具在MCP客户端可用expose: false:代理仅对其他代理内部可用您可以使用--config参数指定自定义配置文件:
# 使用CLI
npm run test-agent -- --config="path/to/config.json" --name="代理名称" --prompt="测试提示"
# 启动服务器时(支持多种格式)
node dist/index.js --config=path/to/config.json
node dist/index.js -c path/to/config.json
node dist/index.js --config path/to/config.json
您可以根据需要添加尽可能多的专用代理,例如:
重要:在创建或更新自定义配置后,请记住:
- 运行
npm run build以重新构建项目- 重启您的MCP客户端以应用更改
服务器自带默认的agents-config.json,其中包括:
重要:在更改代理配置后,请记住:
- 运行
npm run build以重新构建项目- 重启您的Claude客户端以应用更改
- 在Windows上,您可能需要使用任务管理器(Ctrl+Alt+Del)完全关闭Claude,因为它可能会在后台继续运行
{
"version": "1.0.0",
"agents": [
{
"name": "顺序思考者",
"description": "使用此代理进行顺序思考并解决复杂问题",
"model": {
"provider": "openai",
"model": "gpt-4o-mini"
},
"toolsConfigs": [
{
"mcpServers": {
"sequentialThinking": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
}
}
}
]
},
{
"name": "Claude助手",
"description": "使用Claude功能的强大AI助手",
"model": {
"provider": "anthropic",
"model": "claude-3-5-sonnet-20241022"
},
"toolsConfigs": [
{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}
]
},
{
"name": "主代理",
"description": "可以管理其他代理的代理",
"model": {
"provider": "openai",
"model": "gpt-4o-mini"
},
"toolsConfigs": [
{
"agentRef": "顺序思考者"
},
{
"agentRef": "记忆代理"
},
{
"agentRef": "勇敢搜索代理"
}
]
}
]
}
注意:mcp-ai-agent框架通过AI SDK支持各种AI模型。您可以使用来自OpenAI、Anthropic、Google生成式AI、Mistral、Groq等提供商的模型。查看AI SDK提供商文档以获取完整的支持模型及其功能列表。
将MCP Agent Server添加到您的MCP客户端配置中:
编辑您的claude_desktop_config.json:
{
"mcpServers": {
"mcp-agent-server": {
"command": "npx",
"args": ["mcp-agent-server", "--config", "/path/to/your/config.json"]
}
}
}
{
"mcpServers": {
"mcp-agent-server": {
"command": "mcp-agent-server",
"args": ["--config", "/path/to/your/config.json"],
"env": {
"OPENAI_API_KEY": "your-openai-api-key",
"BRAVE_API_KEY": "your-brave-api-key",
"ANTHROPIC_API_KEY": "your-anthropic-api-key"
}
}
}
}
{
"mcpServers": {
"mcp-agent-server": {
"command": "node",
"args": [
"/full/path/to/mcp-agent-server/dist/index.js",
"--config",
"/path/to/your/config.json"
],
"env": {
"OPENAI_API_KEY": "your-openai-api-key",
"BRAVE_API_KEY": "your-brave-api-key",
"ANTHROPIC_API_KEY": "your-anthropic-api-key"
}
}
}
}
重要:在更改
claude_desktop_config.json后,请记住:
- 重启您的Claude客户端以应用更改
- 在Windows上,您可能需要使用任务管理器(Ctrl+Alt+Del)完全关闭Claude,因为它可能会在后台继续运行
按照特定客户端的说明添加MCP服务器,使用:
node["/full/path/to/mcp-agent-server/dist/index.js"]一旦配置完成,您的代理将在MCP客户端中显示为工具。例如,在Claude Desktop中,您可以这样使用它们:
/以查看可用工具对于自定义功能,您有几个选项:
使用预构建服务器(推荐):从可用的预构建服务器中选择,如sequentialThinking,memory,braveSearch,fetch等。
创建自定义MCP服务器:构建自己的MCP服务器并集成:
{
"name": "计算器代理",
"description": "具有自定义数学运算的计算器代理",
"model": {
"provider": "openai",
"model": "gpt-4o-mini"
},
"toolsConfigs": [
{
"mcpServers": {
"calculator": {
"command": "node",
"args": ["/path/to/your/calculator-mcp-server.js"]
}
}
}
]
}
{
"name": "多功能代理",
"description": "具有多种功能的代理",
"model": {
"provider": "anthropic",
"model": "claude-3-5-haiku-20241022"
},
"toolsConfigs": [
{
"prebuilt": "sequentialThinking"
},
{
"prebuilt": "memory"
},
{
"prebuilt": "fetch"
}
]
}
您可以从外部文件导入代理。参见示例:@fkesheh/mcp-ai-agent-example/exportable-agent.ts
// my-agent.ts
import { AIAgent, Servers } from "mcp-ai-agent";
import { openai } from "@ai-sdk/openai";
export const myAgent = new AIAgent({
name: "我的自定义代理",
description: "一个自定义代理",
model: openai("gpt-4o-mini"),
toolsConfigs: [Servers.sequentialThinking],
});
npx tsc # 在dist/文件夹中创建my-agent.js
{
"type": "import",
"importPath": "/full/path/to/dist/my-agent.js",
"exportName": "myAgent"
}
重要:始终使用编译后的.js文件的绝对路径。
mcp-ai-agent框架支持各种MCP服务器:
npm run build重新构建