README
🚀 OpenRouter MCP 服务器
一个提供与 OpenRouter.ai 多样化模型生态系统无缝集成的 Model Context Protocol (MCP) 服务器。通过统一、类型安全的接口访问多种人工智能模型,内置缓存、速率限制和错误处理。
🚀 快速开始
OpenRouter MCP 服务器能让你通过统一、类型安全的接口访问 OpenRouter.ai 的多种人工智能模型,下面为你介绍如何开启使用。
✨ 主要特性
模型访问
- 直接访问所有 OpenRouter.ai 模型。
- 自动进行模型验证和能力检查。
- 支持默认模型配置。
性能优化
- 智能的模型信息缓存(1 小时过期)。
- 自动管理速率限制。
- 失败请求的指数退避。
错误处理
- 统一的响应格式。
- 明确的错误分类和消息。
- 灵活的错误处理机制。
📦 安装指南
# 安装依赖
pnpm install
# 构建项目
pnpm run build
# 运行测试
pnpm test
📚 详细文档
配置指南
环境变量
设置以下环境变量以配置服务器行为:
| 变量名 | 说明 | 默认值 |
|-----------------------|-----------------------------------|--------------|
| PORT | 服务器运行的端口 | 3000 |
| DEBUG | 启用调试模式 | false |
| CACHE_ENABLED | 是否启用模型信息缓存 | true |
| RATE_LIMIT | 每分钟允许的最大请求次数 | 100 |
| ERROR_LOG_LEVEL | 错误日志记录级别 | warn |
示例配置
在项目根目录下创建一个 .env 文件:
PORT=3001
DEBUG=true
CACHE_ENABLED=false
RATE_LIMIT=200
功能详解
统一响应格式
所有 API 响应均采用以下统一格式:
{
"success": boolean,
"data": any,
"error": {
"code": string,
"message": string
}
}
success:表示操作是否成功。data:成功时返回的数据。error:失败时返回的错误信息。
错误处理
服务器定义了以下错误代码和消息:
| 错误码 | 消息描述 |
|------------------|----------------------------------------|
| INVALID_REQUEST| 请求格式无效 |
| AUTH_FAILED | 认证失败 |
| RATE_LIMITED | 请求速率超出限制 |
| INTERNAL_ERROR| 服务器内部错误 |
示例响应
成功示例:
{
"success": true,
"data": {
"message": "Hello, World!"
}
}
失败示例:
{
"success": false,
"error": {
"code": "RATE_LIMITED",
"message": "请求速率超出限制"
}
}
开发指南
贡献指南
请参考 CONTRIBUTING.md 获取详细的开发信息,包括:
- 开发环境搭建
- 项目结构说明
- 功能实现规范
- 错误处理准则
- 工具使用示例
代码规范
遵循以下代码规范以确保代码质量:
- 使用 TypeScript 实现所有接口。
- 遵循模块化编程原则,每个功能独立为一个模块。
- 在函数和类上添加详细的注释。
变更日志
请参考 CHANGELOG.md 查看最近更新,包括:
- 统一响应格式的实现
- 错误处理系统的增强
- 类型安全接口的改进
📄 许可证
本项目采用 Apache License 2.0 协议,具体内容请查看 LICENSE 文件以获取详细信息。
扫码联系在线客服