关于 AI Stupid Level
@aistupidlevel/mcp 让 MCP 客户端查询 AI Stupid Level 的模型排名、分数趋势、事件和提供商状态。配置路由密钥后,还可预览模型选择或通过 Smart Router 发送提示词。
主要功能
- 01查询模型排行榜和分数
- 02追踪模型历史与漂移
- 03查看事件和提供商状态
- 04获取模型推荐与全局指数
- 05预览或调用 Smart Router
适用场景
- 01比较模型的编码或推理表现
- 02检查模型分数是否发生变化
- 03查看近期提供商事件
- 04预览提示词对应的模型选择和成本
MCP 相关
作为 stdio MCP 服务运行,向 MCP 客户端提供数据和 Smart Router 工具,以及模型选择提示词。数据查询需数据密钥;路由功能需路由密钥。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y @aistupidlevel/mcpASL_DATA_KEY密钥Data API key (asl_live_...) for rankings, history, drift, incidents and provider status. Free key: https://aistupidlevel.info/account/data-keys (10 requests a day, 1 a minute).ASL_ROUTER_KEY密钥Smart Router key (aism_...) for preview_route, ask_router and usage. Create one at https://aistupidlevel.info/router/keys.ASL_SANDBOXtrue: every Smart Router call returns a mock answer from real routing, so nothing is spent or counted.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
11收录的工具列表 · 更新于 1 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | 显示的模型数量(默认值为 10)。 |
| period | enum | 否 | 得分时间范围:24 小时、7 天或 1 个月(30 天)的平均值,或 latest(最新一次运行)。省略时使用密钥的默认值:免费 Data API 密钥为 24 小时,付费密钥为 latest。latest 需要付费密钥。24h | 7d | 1m | latest |
| vendor | string | 否 | 仅显示此供应商的模型:openai、anthropic、google、deepseek、kimi 或 glm。 |
| sort_by | enum | 否 | 排名方式:combined(默认,所有测试套件)、coding、reasoning、tooling(工具使用/Agent 任务)或 price(每个标价美元对应的得分)。combined | coding | reasoning | tooling | price |
详细介绍
@aistupidlevel/mcp
一个适用于 AI Stupid Level(ASL)的 MCP 服务。 它让 Claude、Cursor、VS Code 或任何其他 MCP 客户端读取 ASL 的 LLM 排行榜、评分历史、 漂移状态、事件和提供商状态。使用路由器密钥后,它还可以询问 ASL Smart Router 会为某个提示词选择哪个模型,或 通过路由器发送提示词。
可以向助手询问:
- “根据 AI Stupid Level,目前哪个模型最适合编程?”
- “Claude Opus 5.5 这周表现变差了吗?”
- “过去几天有提供商事件吗?”
- “Smart Router 会为这个提示词选择哪个模型?为什么?”
它通过 stdio 在本地运行,需要 Node.js 18 或更高版本。
密钥
这些工具使用两种不同的密钥,你只需配置所需工具对应的密钥。
| 密钥 | 使用者 | 获取位置 |
|---|---|---|
ASL_DATA_KEY(asl_live_…) | leaderboard、model、history、drift、incidents、providers、recommendations、global index | https://aistupidlevel.info/account/data-keys(提供免费套餐) |
ASL_ROUTER_KEY(aism_…) | preview_route、ask_router、路由器用量 | https://aistupidlevel.info/router/keys,以及账户中至少一个提供商密钥 |
缺少密钥的工具不会导致服务失败。它会返回一条消息,说明所需密钥以及创建位置。
也接受 ASL_API_KEY:如果以 asl_ 开头,则用作数据密钥;如果以 aism_ 开头,则用作路由器密钥。
免费套餐限制
免费的 Data API 密钥每天允许 10 次请求,每分钟 1 次。付费套餐每天允许 10,000 次或更多 (定价)。免费套餐用于试用 API,因此服务会谨慎使用:
- 每个回答都会在内存中缓存 15 分钟(
ASL_CACHE_TTL)。再次询问相同问题, 或针对同一排行榜查询其他提供商或更短的列表,都不会产生请求;模型名称也会在缓存的排行榜中查询。 - 每次工具调用最多发出一次 Data API 请求。例外情况是:在获取任何排行榜之前按名称指定模型,这会额外发出一次请求来查询模型 ID。
- 每日配额用完后,服务会停止发送请求,直到 UTC 时间 00:00。因配额不足而被拒绝的请求仍会计入配额。
- 如果无法获取最新回答,服务会返回上次缓存的回答(最多可缓存 24 小时),并说明其缓存时长。
- 每个回答末尾都会显示当天剩余的请求次数。
使用免费密钥时,一分钟内调用多个不同的数据工具会触发每分钟限额。工具会提示何时可以重试。如果等待时间为 15 秒或更短(ASL_MAX_WAIT),服务会等待并自动重试一次。
最新运行视图(period: "latest")需要付费密钥。免费密钥可查询 24 小时、7 天和 30 天视图。
preview_route 和 get_usage 不计入 Smart Router 套餐用量。ask_router 是实际的路由请求:路由器会使用你自己的提供商密钥调用模型,因此费用由提供商向你收取,且请求会计入你的套餐用量。传入 sandbox: true,或设置 ASL_SANDBOX=true,即可免费获取模拟回答,不会实际进行路由。
安装
该软件包通过 npx 运行,因此无需预先安装。将占位符替换为你的密钥,并省略你没有的密钥。
Claude Code
claude mcp add aistupidlevel -e ASL_DATA_KEY=asl_live_... -e ASL_ROUTER_KEY=aism_... -- npx -y @aistupidlevel/mcp
添加 -s user,即可在每个项目中使用。
Claude Desktop
依次选择 Settings → Developer → Edit Config,然后将服务添加到 claude_desktop_config.json:
{
"mcpServers": {
"aistupidlevel": {
"command": "npx",
"args": ["-y", "@aistupidlevel/mcp"],
"env": {
"ASL_DATA_KEY": "asl_live_...",
"ASL_ROUTER_KEY": "aism_..."
}
}
}
}
之后重启 Claude Desktop。
Cursor
将以下内容添加到 ~/.cursor/mcp.json(适用于所有项目)或 .cursor/mcp.json(适用于单个项目):
{
"mcpServers": {
"aistupidlevel": {
"command": "npx",
"args": ["-y", "@aistupidlevel/mcp"],
"env": {
"ASL_DATA_KEY": "asl_live_...",
"ASL_ROUTER_KEY": "aism_..."
}
}
}
}
VS Code
将以下内容添加到 .vscode/mcp.json(或通过 MCP: Open User
Configuration 添加到用户配置中)。VS Code 会提示你输入密钥并安全地保存:
{
"inputs": [
{ "type": "promptString", "id": "asl-data-key", "description": "AI Stupid Level Data API key (asl_live_...)", "password": true },
{ "type": "promptString", "id": "asl-router-key", "description": "AI Stupid Level router key (aism_...)", "password": true }
],
"servers": {
"aistupidlevel": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@aistupidlevel/mcp"],
"env": {
"ASL_DATA_KEY": "${input:asl-data-key}",
"ASL_ROUTER_KEY": "${input:asl-router-key}"
}
}
}
}
其他客户端
任何可以启动 stdio 服务的客户端都能运行它:命令为 npx -y @aistupidlevel/mcp,
密钥需设置为配置中列出的环境变量。
Docker
该镜像会从源代码构建服务。在仓库根目录下:
docker build -f packages/mcp/Dockerfile -t aistupidlevel-mcp .
docker run -i --rm -e ASL_DATA_KEY=asl_live_... -e ASL_ROUTER_KEY=aism_... aistupidlevel-mcp
工具
除 ask_router 外,所有工具均为只读。
| 工具 | 密钥 | 返回内容 |
|---|---|---|
get_leaderboard | data | 按综合、编码、推理或工具使用得分排名的受追踪模型,或按每美元标价得分排名的模型。每行包含得分、趋势、状态和稳定性,以及其他工具所需的模型 ID。可按供应商筛选;选择视图(24h、7d、1m,或使用付费密钥时的最新数据)。 |
get_model | data | 单个模型的详细信息:供应商、版本、备注、工具调用支持情况和受追踪天数。 |
get_model_history | data | 单个模型在时间窗口内每次运行的得分,以及摘要和最新一次运行的各项指标结果。 |
get_drift_status | data | 单个模型的漂移特征:状态、当前得分与基线的对比、每个测试套件的变点检测结果、最近一次显著变化,以及发生变化的指标。 |
get_incidents | data | 最近发生的事件(涵盖供应商和单个模型),包括严重程度、受影响的模型、检测时间和解决时间。 |
get_provider_status | data | 各供应商 API 的状态,来自 ASL 的健康探测,包括探测响应时间和最近一次错误。 |
get_recommendations | data | ASL 当前的推荐(编码最佳、最可靠、最快、性价比最高、性价比低、目前应避免),以及每项推荐的理由和依据。 |
get_global_index | data | ASL 在受追踪模型范围内的全局指数,显示当前数据和过去 24 小时的数据。 |
preview_route | router | Smart Router 会为提示词选择的模型、得分和预估成本、选择理由以及回退链。不会实际调用,也不会计入用量。 |
ask_router | router | 通过 Smart Router 发送提示词并返回答案、作答的模型和供应商、选择理由、延迟及所用 Token。设置 sandbox: true 可免费获取模拟答案。 |
get_usage | either | 本月的路由用量和预算,以及今天剩余的 Data API 请求数。 |
模型可以用数字 ID、名称(claude-opus-5-5)或显示名称(Claude Opus 5.5)指定。
preview_route 和 ask_router 接受路由 mode(auto、auto-best、auto-coding、
auto-reasoning、auto-tooling、auto-task、auto-value、auto-value-coding、
auto-value-reasoning、auto-value-tooling、auto-fastest-quality、auto-consistent、
auto-fastest、auto-cheapest),也可以使用 pin_model 直接指定模型。
路由器文档介绍了各模式。
该服务还提供一个提示词 choose_model,可引导助手为你描述的任务选择模型。
Data API 返回的答案末尾带有来源行。数据采用需注明出处的许可协议: 重新发布时请注明来源为 aistupidlevel.info。
配置
| 变量 | 默认值 | 含义 |
|---|---|---|
ASL_DATA_KEY | 无 | Data API 密钥(asl_live_…) |
ASL_ROUTER_KEY | 无 | Smart Router 密钥(aism_…) |
ASL_SANDBOX | false | 设置为 true 可将所有 Smart Router 调用置于沙盒模式:执行真实路由,返回模拟答案,不会产生费用或计入用量 |
ASL_CACHE_TTL | 900 | Data API 答案的缓存复用时长,单位为秒 |
ASL_MAX_WAIT | 15 | 每分钟限制要求等待时,若等待时间不超过此值(秒),则等待后重试一次。设为 0 可关闭此功能 |
ASL_TIMEOUT_MS | 300000 | Smart Router 请求的超时时间 |
密钥绝不会被记录。服务会将诊断信息写入 stderr,因为 stdout 用于 MCP 协议。
作为库使用
import { createServer } from '@aistupidlevel/mcp';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
const server = createServer({ dataKey: process.env.ASL_DATA_KEY, cacheTtlSeconds: 600 });
await server.connect(new StdioServerTransport());
createServer 接受与环境变量相同的设置,此外还支持自定义 fetch。
开发
npm ci && npm run build && npm test
单元测试会在进程内启动服务,通过内存传输连接 MCP 客户端,并重放 test/fixtures 中的真实 API 响应。只有在设置密钥后,实时测试才会运行:
ASL_ROUTER_KEY=aism_... npm test # Smart Router, sandbox only: nothing is spent or counted
ASL_DATA_KEY=asl_live_... npm test # Data API: one request
链接
MIT 许可证。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。