使用说明
DriftHound MCP服务器
MCP(模型上下文协议)服务器,使Claude能够发现和理解DriftHound的IaC漂移。
特性
- list_projects_with_drift -查找所有具有漂移环境的项目
- list_environment -使用状态筛选列出项目的环境
- get_drift_details -获取完整的地形图输出以进行漂移分析
- get_environment_info -获取用于修复的存储库、分支和目录
安装
GitHub软件包(推荐)
该包已发布到GitHub Packages。因为GitHub Packages需要身份验证,即使是公共包,你也需要一个GitHub个人访问令牌 read:packages 范围。
- 将以下内容添加到您的
~/.npmrc:
@drifthoundhq:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=YOUR_GITHUB_PAT
- 使用
npx直接在MCP客户端配置中——不需要全局安装(见下文)。
来源
npm install
npm run build
配置
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
DRIFTHOUND_API_URL |
是 | 您的DriftHound实例的基本URL |
DRIFTHOUND_API_TOKEN |
是 | 来自DriftHound管理员UI的API令牌 |
Claude代码配置
添加到您的克劳德代码设置(~/.claude/settings.json):
{
"mcpServers": {
"drifthound": {
"command": "npx",
"args": ["-y", "@drifthoundhq/mcp-server"],
"env": {
"DRIFTHOUND_API_URL": "https://drifthound.example.com",
"DRIFTHOUND_API_TOKEN": "your-api-token"
}
}
}
}
Claude桌面配置
添加到您的Claude桌面配置(claude_desktop_config.json):
{
"mcpServers": {
"drifthound": {
"command": "npx",
"args": ["-y", "@drifthoundhq/mcp-server"],
"env": {
"DRIFTHOUND_API_URL": "https://drifthound.example.com",
"DRIFTHOUND_API_TOKEN": "your-api-token"
}
}
}
}
用法
配置后,Claude可以使用这些工具来发现和理解漂移:
发现漂移
Claude, what projects have drift?
克劳德将使用 list_projects_with_drift 寻找需要关注的项目。
调查一个项目
Show me the drifting environments in the EKS project
克劳德将使用 list_environments 和 status=drift 过滤器。
分析漂移细节
What's causing drift in eks/production?
克劳德将使用 get_drift_details 以获得完整的Terraform计划输出。
获取补救信息
Where can I find the code to fix eks/production drift?
克劳德将使用 get_environment_info 以获取存储库URL和目录。
Kubernetes部署
Docker镜像发布到 ghcr.io/drifthoundhq/mcp-server 每次发布。当以下情况发生时,服务器以HTTP模式运行 PORT 设置环境变量,在以下位置公开MCP协议 /mcp.
在Kubernetes上部署的最快方法是通过发布到OCI注册表的Helm chart:
helm install drifthound oci://ghcr.io/drifthoundhq/charts/drifthound-mcp-server \
--namespace drifthound \
--create-namespace \
--set drifthoundApiUrl=https://your-drifthound.example.com \
--set drifthoundApiToken=your-api-token
运行后,将Claude Code指向集群内端点:
{
"mcpServers": {
"drifthound": {
"url": "http://drifthound-drifthound-mcp-server.drifthound.svc.cluster.local:3000/mcp"
}
}
}
看 Helm chart自述 有关完整的配置参考、外部秘密支持和本地访问的端口转发指令。
发展
# Run in development mode
npm run dev
# Build for production
npm run build
# Start production server
npm start
API要求
此MCP服务器要求DriftHound启用读取API终结点:
GET /api/v1/projects-列出项目GET /api/v1/projects/:key-获取项目详细信息GET /api/v1/projects/:key/environments-列出环境GET /api/v1/projects/:key/environments/:key-获取环境详细信息GET /api/v1/projects/:key/environments/:key/drift-获取最新漂移检查
许可证
麻省理工学院
