Cat Facts MCP服务器
一个模型上下文协议(MCP)服务器,提供对猫事实的访问 印度猫 API使用TypeScript构建并遵循现代服务器架构模式。
特性
- 获取一个随机的猫事实
- 获取多个随机的猫事实
- 事实的可选长度限制
- 使用官方MCP SDK构建
- 完全类型安全的TypeScript支持
- 具有独立关注点的模块化架构
- 多种传输选项(STDIO和HTTP)
- 全面的配置管理
- 带参数解析的命令行界面
安装
- 安装依赖项:
npm install- 构建TypeScript代码:
npm run build用法
运行服务器
启动MCP服务器:
npm start或者用于自动重启的开发:
npm run dev命令行选项
node dist/index.js [options]
Options:
--transport, -t Transport type: stdio or http (default: stdio)
--port, -p Port for HTTP transport (default: 3000)
--host, -h Host for HTTP transport (default: localhost)
--help Show help message可用工具
服务器提供两个工具:
1. get_cat_fact
检索一个随机的猫事实。
参数:
max_length(可选):猫事实的最大长度(1-500个字符)
例子:
{
"name": "get_cat_fact",
"arguments": {
"max_length": 100
}
}2. get_cat_facts
检索多个随机的猫事实。
参数:
limit(可选):要检索的猫事实数(1-100,默认值:5)max_length(可选):每个猫事实的最大长度(1-500个字符)
例子:
{
"name": "get_cat_facts",
"arguments": {
"limit": 3,
"max_length": 150
}
}MCP客户端配置
要将此服务器与MCP客户端一起使用,请将其添加到您的客户端配置中:
{
"mcpServers": {
"cat-facts": {
"command": "node",
"args": ["/path/to/this/directory/dist/index.js"]
}
}
}环境变量
服务器支持各种环境变量进行配置:
MCP_TRANSPORT:传输类型(stdio|http)MCP_PORT:HTTP传输端口MCP_HOST:HTTP传输主机MCP_SERVER_NAME:服务器名称MCP_SERVER_VERSION:服务器版本CAT_FACTS_API_URL:Cat事实API基础URLDEFAULT_LIMIT:多个事实的默认限制MAX_LIMIT:多个事实的最大限制MIN_LENGTH:最小事实长度MAX_LENGTH:最大事实长度
api参考
此服务器使用 印度猫 API
- 单一事实:
GET https://catfact.ninja/fact - 多个事实:
GET https://catfact.ninja/facts?limit={number} - 长度限制:添加
?max_length={number}到任一端点
错误处理
该服务器包括全面的错误处理功能,用于:
- 网络连接问题
- API速率限制
- 无效参数
- 服务器错误
许可证
麻省理工学院
