使用说明
蒸汽管道模型上下文协议(MCP)服务器
通过以下方式释放人工智能驱动的基础设施分析的力量 蒸汽管!此模型上下文协议服务器将Claude等人工智能助手无缝连接到您的云基础设施数据,实现对整个云资产的自然语言探索和分析。
Steampipe MCP连接AI助手和您的基础设施数据,允许自然语言:
- 跨AWS、Azure、GCP和100多种云服务的查询
- 安全性和合规性分析
- 成本和资源优化
- 查询开发协助
与当地人合作 蒸汽管 安装和 涡轮管 工作空间,提供对所有云和SaaS数据的安全、只读访问。
安装
先决条件
配置
将Steampipe MCP添加到AI助手的配置文件中:
{
"mcpServers": {
"steampipe": {
"command": "npx",
"args": [
"-y",
"@turbot/steampipe-mcp"
]
}
}
}
默认情况下,这将连接到您的本地Steampipe安装 postgresql://steampipe@localhost:9193/steampipe。一定要跑 steampipe service start 第一。
要连接到 涡轮管 请将您的连接字符串添加到args中:
{
"mcpServers": {
"steampipe": {
"command": "npx",
"args": [
"-y",
"@turbot/steampipe-mcp",
"postgresql://my_name:my_pw@workspace-name.usea1.db.pipes.turbot.com:9193/abc123"
]
}
}
}
AI助手设置
| 助手 | 配置文件位置 | 安装指南 |
|---|---|---|
| 克劳德桌面 | claude_desktop_config.json |
克劳德桌面MCP指南→ |
| 光标 | ~/.cursor/mcp.json |
光标MCP指南→ |
保存配置文件并重新启动AI助手以使更改生效。
提示指南
首先,运行 best_practices MCP服务器中包含的提示,教您的LLM如何最好地使用Steampipe。那么,随便问什么!
探索您的云基础设施:
What AWS accounts can you see?
简单、具体的问题效果很好:
Show me all S3 buckets that were created in the last week
生成基础设施报告:
List my EC2 instances with their attached EBS volumes
深入安全分析:
Find any IAM users with access keys that haven't been rotated in the last 90 days
获取合规见解:
Show me all EC2 instances that don't comply with our tagging standards
探索潜在风险:
Analyze my S3 buckets for security risks including public access, logging, and encryption
记住:
- 具体说明要分析哪些云资源(EC2、S3、IAM等)
- 如果你对特定地区或客户感兴趣,请提及这些地区或客户
- 在添加复杂条件之前,先从简单的查询开始
- 使用自然语言-LLM将处理SQL翻译
- 大胆探索-法学硕士可以帮助您发现整个基础设施的见解!
能力
工具
-
steampipe_query
- 使用SQL查询云和安全日志。
- 为了获得最佳性能:使用CTE而不是连接,限制所请求的列。
- 所有查询都是只读的,并使用PostgreSQL语法。
- 输入:
sql(string):使用PostgreSQL语法执行的SQL查询
-
蒸汽管道表列表
- 列出所有可用的Steampipe表。
- 可选输入:
schema(string):按特定架构筛选表 - 可选输入:
filter(string):按ILIKE模式筛选表(例如“%ec2%”)
-
蒸汽管_表_展示
- 获取特定表的详细信息,包括列定义、数据类型和描述。
- 输入:
name(string):显示详细信息的表的名称(可以是模式限定的,例如“aws_account”或“aws.aws_account”) - 可选输入:
schema(string):包含表的架构
-
蒸汽管道_插件列表
- 列出系统上安装的所有Steampipe插件。插件提供对AWS、GCP或Azure等不同数据源的访问。
- 无需输入参数
-
蒸汽管道_插件_展示
- 获取特定Steampipe插件安装的详细信息,包括版本、内存限制和配置。
- 输入:
name(string):显示详细信息的插件的名称
鼓励
- 最佳实践
- 使用Steampipe数据的最佳实践
- 提供以下方面的详细指导:
- 响应样式和格式约定
- 使用CTE(WITH子句)vs连接
- SQL语法和样式约定
- 柱的选择和优化
- 图式探索与理解
- 查询结构和组织
- 性能考虑和缓存
- 错误处理和故障排除
资源
- 状态
- 表示蒸汽管道连接的当前状态
- 属性包括:
- connection_string:当前数据库连接字符串
- status:连接状态(连接/断开)
此资源使AI工具能够检查和验证与Steampipe实例的连接状态。
发展
克隆和设置
- 克隆存储库并导航到以下目录:
git clone https://github.com/turbot/steampipe-mcp.git
cd steampipe-mcp
- 安装依赖项:
npm install
- 构建项目:
npm run build
测试
要使用支持MCP的AI工具测试本地开发版本,请更新MCP配置以使用本地 dist/index.js 而不是npm包。例如:
{
"mcpServers": {
"steampipe": {
"command": "node",
"args": [
"/absolute/path/to/steampipe-mcp/dist/index.js",
"postgresql://steampipe@localhost:9193/steampipe"
]
}
}
}
或者,使用MCP检查器验证服务器实现:
npx @modelcontextprotocol/inspector dist/index.js
环境变量
以下环境变量可用于配置MCP服务器:
STEAMPIPE_MCP_LOG_LEVEL:控制服务器日志记录的详细程度(默认值:info)STEAMPIPE_MCP_WORKSPACE_DATABASE:替代默认的Steampipe连接字符串(默认值:postgresql://steampipe@localhost:9193/steampipe)
开源与贡献
此存储库发布在 Apache 2.0许可证请查看我们的 行为准则我们期待与您合作!
蒸汽管 是由该开源软件独家生产的产品 多宝公司总部。它是根据我们的商业条款分销的。其他人可以自己分发软件,但他们不能使用任何Turbot商标、云服务等。您可以在我们的 开源常见问题.
参与
想帮忙,但不知道从哪里开始?拿起其中一个 help wanted 问题: