代理标准MCP服务器
一种模型上下文协议(MCP)服务器,为代理提供对标准和规则的访问。它使代理能够列出可用的标准并以编程方式检索其内容。
为什么使用此MCP服务器?
不同的情况需要不同的规则。一些用于编码(不同语言有不同的编码),另一些用于处理数据库,第三个用于处理API等。如果所有规则同时加载到上下文中(例如,放置在AGENTS.md中),这将导致:
- LLM请求的成本增加(更多的代币-更高的价格)
- 响应速度较慢(令牌更多-请求处理时间更长)
- LLM焦点丧失(信息太多——LLM可能会混淆什么是重要的,什么不是)
每个人都以不同的方式解决这个问题。例如:
- Claude Code提供了一种技能机制,但不幸的是,它无法控制,因为Claude自己决定使用哪种技能。无法通过CLAUDE.md手动设置何时使用一种或另一种技能的规则
- 在Github Copilot中,您可以创建不同的规则集,并指定它们应该应用于哪些文件扩展名。但这仅在调用更改此类文件内容的工具时有效。也就是说,在规划和决策阶段,法学硕士将无法访问这些规则,并且很可能会做出错误的决定。
此MCP服务器解决了以下问题:
- 您可以在规则或命令中明确指定代理何时加载标准
- 规则目录是集中式的。与特定代理/IDE的实现没有绑定-可以与支持MCP的任何LLM代理一起使用
一些有用的标准
- 编码规则 -用于一致、高质量软件开发的通用编码标准,包括SOLID原则和软件架构指南
- Golang指南 -Golang特定的编码指南和最佳实践,包括关键的接口使用规则
- gRPC API标准 -消息命名、服务定义和API设计的gRPC标准和最佳实践
- REST API标准 -用于端点命名、HTTP方法和API设计的REST API标准和最佳实践
- TDD规则 -应用测试驱动开发(TDD)的标准,包括适用性算法和最佳实践
可用工具
服务器提供两个工具:
- 列表_标准:列出所有可用标准及其说明
- get_standards:按名称检索特定标准的全部内容
安装
二进制版本
预编译的二进制文件可用于多种平台:
- Linux(AMD64):
agent-standards-mcp-v*-linux-amd64.tar.gz - macOS(英特尔):
agent-standards-mcp-v*-darwin-amd64.tar.gz - macOS(苹果硅):
agent-standards-mcp-v*-darwin-arm64.tar.gz - 窗户(AMD64):
agent-standards-mcp-v*-windows-amd64.zip
从下载最新版本 .
从源代码构建
go build -o agent-standards-mcp ./cmd/agent-standards-mcp或使用任务:
task buildmacOS安装说明
由于安全设置,macOS可能会默认阻止下载的二进制文件的执行。要允许可执行文件运行,请执行以下操作:
- 首次执行尝试:从终端运行可执行文件
./agent-standards-mcp --version这将显示安全警告。按 完成.
- 允许通过系统设置执行:
- 打开 系统设置 → 隐私和安全 → 安全 - 查找有关被阻止的可执行文件的消息 - 点击 “无论如何都允许”
- 第二次处决:再次运行可执行文件
./agent-standards-mcp --version- 确认执行:将出现一个对话框,要求确认
- 点击 “无论如何打开” 并在系统提示时输入密码 - 现在将允许可执行文件运行
完成这些步骤后,可执行文件将被永久允许在您的系统上运行。
IDE集成
克劳德代码
使用CLI添加MCP服务器:
claude mcp add -s user --transport stdio standards /path/to/agent-standards-mcp光标IDE、房间代码、千码等。
添加到光标设置中:
{
"mcpServers": {
"standards": {
"command": "/path/to/agent-standards-mcp"
}
}
}使用环境变量配置服务器(可选)
AGENT_STANDARDS_MCP_LOG_LEVEL:日志级别(无/调试/信息/警告/错误,默认值:“错误”)AGENT_STANDARDS_MCP_FOLDER:标准文件夹路径(默认:“~/agent Standards”)AGENT_STANDARDS_MCP_MAX_STANDARDS:要加载的最大标准数(默认值:100)AGENT_STANDARDS_MCP_MAX_STANDARD_SIZE:标准文件的最大大小(以字节为单位)(默认值:10240)
用法
标准管理
将标准标记文件放置在指定的标准文件夹中(默认: ~/agent-standards/standards)
使用以下格式:
---
description: {A brief description of the standard}
---
## {Standard Title. Start with ##}
{Full content of the standard goes here. Follow ## headings for sections.}LLM代理将能够通过MCP服务器访问这些标准:
- 列出标准:使用
list_standards该工具用于获取可用标准名称及其描述的列表。 - 获取标准内容:使用
get_standards工具,按名称检索特定标准的全部内容。
附加规则
一些LLM可能需要额外的规则来正确使用这些标准。您可能希望在AGENTS.md/CLAUDE.md等文件中添加额外的规则。 注意提示注射预防,因为如果一些LLM(如GPT-5)认为这些规则不安全,它们可能会停止响应。
日志
默认情况下,服务器只记录错误。您可以使用以下命令调整日志级别 AGENT_STANDARDS_MCP_LOG_LEVEL 环境变量。可用级别有:无、调试、信息、警告、错误。默认位置: ~/agent-standards/logs/
发展
先决条件
- 转到1.25.1或更高版本
- 任务(安装时
go install github.com/go-task/task/v3/cmd/task@latest)
构建命令
# Build the application
task build
# Run tests
task test
# Run tests with coverage
task test-coverage
# Run linter
task lint
# Format code
task format
# Clean build artifacts
task clean
# Run the application
task run
# Run with DEBUG log level
task run-debug
# Update dependencies
task deps
# Generate code
task generate
# Install development tools
task install-tools
# Run full CI pipeline
task ci发布过程
此项目使用GitHub Actions的自动发布:
- 提交消息:使用 常规承诺 格式
- 版本标签:创建语义版本标签(例如。,
v1.0.0) - 自动释放:按下标签会触发发布工作流
- 已生成资产:适用于所有平台的二进制文件,校验和
发布步骤
# 1. Make your changes with conventional commit messages
git commit -m "feat: add new feature"
# 2. Create and push a version tag
git tag v1.0.0
git push origin v1.0.0
# 3. GitHub Actions will automatically create the release贡献
- 分叉存储库
- 创建要素分支(
git checkout -b feature/amazing-feature) - 使用常规提交消息进行更改
- 推到分支(
git push origin feature/amazing-feature) - 打开拉取请求
更新日志
看 页面查看详细的变更日志。
