一个提供代理访问标准和规则的模型上下文协议(MCP)服务器。它使代理能够列出可用的标准并以编程方式检索其内容。
不同的情况需要不同的规则。有些用于编码(且不同语言有不同的规则),其他用于数据库操作,还有一些用于API操作等。如果一次性将所有规则加载到上下文中(例如放在AGENTS.md中),这会导致:
每个人解决这个问题的方式不同。例如:
此MCP服务器解决了这些问题:
该服务器提供了两个工具:
多个平台的预编译二进制包已提供:
agent-standards-mcp-v*-linux-amd64.tar.gzagent-standards-mcp-v*-darwin-amd64.tar.gzagent-standards-mcp-v*-darwin-arm64.tar.gzagent-standards-mcp-v*-windows-amd64.zip从GitHub Releases下载最新版本。
go build -o agent-standards-mcp ./cmd/agent-standards-mcp
或者使用Task:
task build
macOS可能由于安全设置默认阻止执行下载的二进制文件。要允许可执行文件运行:
首次尝试执行:从终端运行可执行文件
./agent-standards-mcp --version
这将显示一个安全警告。点击完成。
通过系统设置允许执行:
第二次执行:再次运行可执行文件
./agent-standards-mcp --version
确认执行:将出现一个对话框要求确认
完成以上步骤后,可执行文件将在您的系统上永久允许运行。
使用CLI添加MCP服务器:
claude mcp add -s user --transport stdio agent-standards /path/to/agent-standards-mcp
添加到您的Cursor设置:
{
"mcpServers": {
"agent-standards": {
"command": "/path/to/agent-standards-mcp"
}
}
}
选项1:手动包含(推荐)
在工作流(子代理、命令等)中添加以下指令,强制使用标准检索工作流:
OpenCode示例:
必须使用`agent-standards_list_standards` -> `agent-standards_get_standards`工具来获取项目相关的标准
工具名称可以根据您使用的代理有所不同。如果您不确定,请询问您的代理正确的工具名称。
选项2:自动包含(可以被LLM绕过)
在您的AGENTS.md/CLAUDE.md/其他代理规则文件中添加以下强制性规则,以强制使用标准检索工作流:
🚨🚨🚨 **在任何工作空间探索之前的第一项强制行动:** 🚨🚨🚨
1. 遵循STANDARDS_RETRIEVAL_WORKFLOW
2. 即使您100%确定不需要,也必须遵循STANDARDS_RETRIEVAL_WORKFLOW:
* 对于最小的任务,无论感知的简单性或显而易见性如何
**分层规则强制执行**
🚨🚨🚨 关键规则违反 🚨🚨🚨
- 第一项强制行动:STANDARDS_RETRIEVAL_WORKFLOW
- 后果:任务失败,直到完成工作流之前不允许响应
- 验证:必须明确声明每个已完成的步骤才能继续
**强制性的STANDARDS_RETRIEVAL_WORKFLOW:**
1. 必须宣布“🧠 使用标准检索工作流”
2. 快速浏览工作空间以了解项目类型
3. 确定任务类型和范围
4. 确定相关标准类别(编码、工作流程、业务分析、测试、架构等)
5. 获取可用标准列表
6. 选择最相关的标准以应对您的任务
7. 必须以以下格式宣布:
```
相关标准对于{任务类型}:
- {标准1}:{为什么它相关。例如,“涵盖X的最佳实践”}
...
```
8. 获取选定标准的内容
9. 将检索到的标准应用于您的任务执行
10. 使用标准作为指导继续您的主要任务工作流
list_standards和get_standards不是像MCP工具那样,而是作为常规系统工具,这导致了工具调用错误。AGENT_STANDARDS_MCP_LOG_LEVEL:日志级别(NONE/DEBUG/INFO/WARN/ERROR,默认:"ERROR")AGENT_STANDARDS_MCP_FOLDER:标准文件夹路径(默认:"~/agent-standards")AGENT_STANDARDS_MCP_MAX_STANDARDS:加载的最大标准数量(默认:100)AGENT_STANDARDS_M_最大标准大小:标准文件的最大大小(字节,默认:10240)将您的标准Markdown文件放置在指定的标准文件夹中(默认:~/agent-standards/standards)
使用以下格式:
---
description: {标准的简要描述}
---
## {标准标题。从##开始}
{标准的全部内容放在这里。按照##标题进行章节划分。}
LLM代理可以通过MCP服务器访问这些标准:
list_standards工具获取可用标准名称及其描述的列表。get_standards工具根据名称检索特定标准的全部内容。某些LLM可能需要额外规则才能正确利用标准。您可能希望在您的AGENTS.md/CLAUDE.md等中添加额外规则。 注意防止提示注入,因为某些LLM(如GPT-5)如果认为规则不安全可能会停止响应。
默认情况下,服务器仅记录错误。您可以使用AGENT_STANDARDS_MCP_LOG_LEVEL环境变量调整日志级别。可用级别有:NONE、DEBUG、INFO、WARN、ERROR。默认位置:~/agent-standards/logs/
go install github.com/go-task/task/v3/cmd/task@latest安装)# 构建应用程序
task build
# 运行测试
task test
# 运行带有覆盖率的测试
task test-coverage
# 运行linter
task lint
# 格式化代码
task format
# 清理构建工件
task clean
# 运行应用程序
task run
# 使用DEBUG日志级别运行
task run-debug
# 更新依赖
task deps
# 生成代码
task generate
# 安装开发工具
task install-tools
# 运行完整的CI流水线
task ci
该项目使用GitHub Actions进行自动化发布:
v1.0.0)# 1. 使用常规提交消息进行更改
git commit -m "feat: 添加新功能"
# 2. 创建并推送版本标签
git tag v1.0.0
git push origin v1.0.0
# 3. GitHub Actions将自动创建发布
git checkout -b feature/amazing-feature)git push origin feature/amazing-feature)详细变更日志请参阅GitHub Releases页面。