详细介绍
Nexus 是一个智能路由平台,能够将多个 Model Context Protocol (MCP) 服务器和大型语言模型 (LLM) 提供商连接到一个统一的端点。它让 AI 助手能够同时访问各种工具和服务,而无需分别配置每个连接。Nexus 支持多种协议,包括 STDIO、SSE 和 HTTP,并提供智能工具搜索、企业级安全、多级速率限制等功能,适用于需要集中管理多个 AI 工具和模型的组织和开发团队。
核心功能
Nexus 提供了以下核心功能,帮助用户高效管理 AI 工具和模型:
- MCP 服务器聚合:支持 STDIO、SSE 和 HTTP 三种协议的 MCP 服务器,通过单一端点统一访问。
- LLM 提供商路由:统一接口支持 OpenAI、Anthropic、Google 和 AWS Bedrock 等多种 LLM 提供商。
- 智能工具搜索:基于自然语言查询的模糊搜索,快速找到相关工具。
- 企业级安全:内置 CORS、CSRF 保护、OAuth2 认证和 TLS 支持。
- 多级速率限制:支持全局、IP、服务器和工具级别的速率控制。
- 容器化支持:提供 Docker 镜像,简化部署和管理。
安装方法
Nexus 提供了多种安装方式,包括通过命令行快速安装、Docker 安装和从源代码构建。
curl -fsSL https://nexusrouter.com/install | bashdocker pull ghcr.io/grafbase/nexus:latestgit clone https://github.com/grafbase/nexus
cd nexus
cargo build --release使用方法
Nexus 的使用主要分为以下几个步骤:创建配置文件、启动服务、配置 AI 助手。
[mcp.servers.github]
url = "https://api.githubcopilot.com/mcp/"
auth.token = "{{ env.GITHUB_TOKEN }}"nexusclaude mcp add --transport http nexus http://localhost:8000/mcp使用示例
以下是 Nexus 的几个典型使用场景和示例:
- 代码开发助手:同时使用 GitHub 代码搜索、文件系统操作和 AI 代码生成。
- 多模型对话:根据不同任务选择合适的 LLM 模型。
- 企业知识管理:结合内部知识库工具和外部 AI 模型。
curl -X POST http://localhost:8000/llm/chat/completions
-H "Content-Type: application/json"
-d '{
"model": "openai_primary/gpt-4-turbo",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello, how are you?"}
],
"temperature": 0.7,
"max_tokens": 150
}'curl -X POST http://localhost:8000/llm/chat/completions
-H "Content-Type: application/json"
-d '{
"model": "anthropic/claude-3-5-sonnet-20241022",
"messages": [
{"role": "user", "content": "Write a short poem"}
],
"stream": true,
"max_tokens": 100
}'配置说明
Nexus 的配置主要通过 TOML 文件进行,支持环境变量替换,可以灵活配置 LLM 提供商、MCP 服务器、安全认证和速率限制等。
[llm.providers.openai]
type = "openai"
api_key = "{{ env.OPENAI_API_KEY }}"
[mcp.servers.github]
url = "https://api.githubcopilot.com/mcp/"
auth.token = "{{ env.GITHUB_TOKEN }}"安全与认证
Nexus 提供了多种安全机制,包括 OAuth2 认证、TLS 加密、CORS 和 CSRF 保护,确保服务的安全性。
[server.oauth]
url = "https://your-oauth-provider.com/.well-known/jwks.json"
poll_interval = "5m"
expected_issuer = "https://your-oauth-provider.com"
expected_audience = "your-service-audience"速率限制
Nexus 支持多级速率限制,可以配置全局、IP、服务器和工具级别的限制,防止滥用并确保公平使用资源。
[server.rate_limits]
enabled = true
[server.rate_limits.global]
limit = 1000
interval = "60s"适用场景
Nexus 适用于以下场景:
- 需要集中管理多个 AI 工具和模型的组织。
- 开发团队希望简化 AI 助手配置。
- 需要统一控制 AI 资源访问权限的场景。
Nexus 通过统一的端点和灵活的配置,为 AI 工具和模型的管理提供了高效、安全的解决方案。