关于 cache
cache 是面向 AI Agent 的 MCP 服务,用于分析和测试 HTTP、CDN 与浏览器层的缓存策略。它提供响应头分析、确定性缓存键生成,以及常见淘汰策略模拟。
主要功能
- 01HTTP 缓存响应头评级与建议
- 02确定性缓存键生成
- 03LRU、LFU、FIFO 和 TTL 模拟
- 04根据响应头识别 CDN
- 05浏览器资源缓存分析
适用场景
- 01检查 HTTP 响应的缓存指令
- 02生成 Redis 或 Memcached 缓存键
- 03比较缓存淘汰策略
- 04估算重复访问时的浏览器缓存效果
MCP 相关
向 MCP 客户端提供缓存分析、键生成、模拟、CDN 识别和浏览器缓存工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
5收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| etag | string | 否 | ETag 标头值,例如 '"abc123"' 或 'W/"weak-tag"' |
| vary | string | 否 | Vary 标头值,例如 'Accept-Encoding, Accept-Language' |
| context | enum | 否 | 用于提供上下文感知建议的资源类型static-asset | api-response | html-page | media | general |
| expires | string | 否 | Expires 标头值,例如 'Thu, 01 Dec 2025 16:00:00 GMT' |
| cacheControl | string | 否 | Cache-Control 标头值,例如 'public, max-age=3600, stale-while-revalidate=60' |
| lastModified | string | 否 | Last-Modified 标头值,例如 'Wed, 21 Oct 2024 07:28:00 GMT' |
详细介绍
@rog0x/mcp-cache-tools
MCP 服务 #30 — 面向 AI Agent 的缓存和记忆化工具。
分析、生成、模拟和优化 HTTP、CDN 及浏览器层的缓存策略。
工具
1. analyze_cache_headers
分析 HTTP 缓存标头(Cache-Control、ETag、Last-Modified、Expires、Vary)。对整体缓存策略进行 A+ 至 F 等级评分,并提供可操作的改进建议,针对静态资源、API 响应、HTML 页面和媒体提供结合上下文的指导。
2. generate_cache_key
根据各种输入生成确定性缓存键:
- URL 模式 — 规范化 URL、对查询参数排序、筛选包含/排除的参数
- Body 模式 — 对请求体进行哈希处理,并对 JSON 键排序以确保一致性
- 组合模式 — 将多个键组成部分合并为一个确定性哈希
支持命名空间、版本控制和 TTL,并输出可直接使用的 Redis/Memcached 命令。
3. simulate_cache
模拟一系列请求的缓存行为,并排对比不同的淘汰策略:
- LRU — 最近最少使用
- LFU — 最不常用
- FIFO — 先进先出
- TTL — 基于存活时间的过期机制
输出命中率、未命中率、淘汰次数和逐步时间线。
4. check_cdn_headers
根据响应标头检测为资源提供服务的 CDN。可识别 Cloudflare、Fastly、Akamai、CloudFront、Vercel、Netlify、Google Cloud CDN、Azure CDN、KeyCDN 和 Bunny CDN。报告缓存状态(HIT/MISS/STALE/BYPASS)、边缘服务器和 POP 位置。
5. analyze_browser_cache
分析页面中哪些资源会缓存在浏览器中。确定缓存类型(强缓存、启发式缓存、条件缓存或不缓存)、缓存时长、重新验证策略,并估算再次访问时可节省的带宽和时间。按资源类型分组显示结果,并提供优化建议。
设置
npm install
npm run build
MCP 配置
{
"mcpServers": {
"mcp-cache-tools": {
"command": "node",
"args": ["D:/products/mcp-servers/mcp-cache-tools/dist/index.js"]
}
}
}
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。