关于 agentguard
agentguard 是根据声明式网络出口策略检查 URL 的 MCP 服务,不会发起请求。它供 MCP 客户端审核单个或批量 URL,并发现策略配置中的常见错误。
主要功能
- 01按策略检查单个 URL
- 02批量检查 URL 并汇总结果
- 03验证策略配置
- 04标记过宽通配符和格式错误的主机
适用场景
- 01在 Agent 获取 URL 前进行审核
- 02批量检查候选 URL
- 03查找网络出口策略中的错误
MCP 相关
向 MCP 客户端提供 URL 检查和策略验证工具。它只返回判定结果,不会拦截请求或执行网络访问。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
3收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| url | string | 是 | 要检查的 URL。 |
| method | string | 否 | HTTP 方法(既定値:GET)。 |
| policy | object | 是 | 简化的网络策略。使用 { allow: ["api.openai.com", "*.example.com"] }。可选项:deny: string[]、methods: string[]。 |
| policy.deny | array | 否 | 要拒绝的主机模式。优先于 allow。 |
| policy.allow | array | 否 | 要允许的主机模式。支持精确匹配和 *.suffix 通配符。 |
| policy.methods | array | 否 | 允许使用的 HTTP 方法(例如 ["GET", "POST"])。默认允许任意方法。 |
详细介绍
agentguard-mcp
@mukundakatta/agentguard 的 MCP 服务。 让 Claude Desktop、Cursor、Cline、Windsurf、Zed 或任何其他 MCP 客户端能够在发起任何抓取请求前,检查某个 URL 是否符合网络出口策略。
npx -y @mukundakatta/agentguard-mcp
提供三个工具:
check_url— 检查单个 URL:返回{ allowed, reason },不会发出任何实际请求。check_urls_batch— 批量检查:返回每个 URL 的判定结果以及汇总信息。validate_policy— 检查策略规范是否合理,包括允许列表为空、*通配符范围过宽以及主机模式格式错误等问题。
添加到客户端
Claude Desktop
编辑 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):
{
"mcpServers": {
"agentguard": {
"command": "npx",
"args": ["-y", "@mukundakatta/agentguard-mcp"]
}
}
}
Cursor(~/.cursor/mcp.json)、Cline、Windsurf 和 Zed 的配置格式相同。
工具示例
check_url:
{
"url": "https://api.openai.com/v1/chat",
"policy": { "allow": ["api.openai.com", "*.anthropic.com"] }
}
返回:
{ "allowed": true, "reason": "matched_allowlist", "detail": null }
check_urls_batch:
{
"urls": [
"https://api.openai.com/v1/chat",
"https://evil.example.com/leak"
],
"policy": { "allow": ["api.openai.com"] }
}
返回:
{
"results": [
{ "url": "https://api.openai.com/v1/chat", "allowed": true, ... },
{ "url": "https://evil.example.com/leak", "allowed": false, "reason": "not_in_allowlist", ... }
],
"summary": { "total": 2, "allowed_count": 1, "denied_count": 1 }
}
validate_policy:
{ "policy": { "allow": ["*", "https://api.example.com", "api.example.com/v1"] } }
返回的问题包括 * 通配符、协议前缀和路径后缀,都是初次编写策略时常见的错误。
为什么要单独提供 MCP 服务
@mukundakatta/agentguard 是一个零依赖 JavaScript 库。这个 MCP 服务让任何支持 MCP 的 AI 助手都能使用它的判定引擎:你可以询问 Claude“我的 Agent 工具列表能通过这个防火墙吗?”或“这 50 个 URL 中,哪些会被我的策略拦截?”,助手会直接调用这些工具。
注意:这个 MCP 服务只会检查 URL,不会实际封装 fetch 或拦截真实请求。如需在运行时强制执行,请在你的 Node 进程中直接使用 @mukundakatta/agentguard。
同系列 MCP 服务
属于 agent-stack 系列:
@mukundakatta/agentfit-mcp— 评估它。@mukundakatta/agentguard-mcp— 隔离它。(本项目)@mukundakatta/agentsnap-mcp— 测试它。@mukundakatta/agentvet-mcp— 审查它。@mukundakatta/agentcast-mcp— 验证它。
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。