Steampipe 模型上下文协议 (MCP) 服务器
使用Steampipe解锁 AI 驱动的基础设施分析能力!这款模型上下文协议服务器可将 Claude 等 AI 助手无缝连接到您的云基础设施数据,从而实现对您整个云资产的自然语言探索和分析。
Steampipe MCP 连接 AI 助手和您的基础设施数据,允许自然语言:
- 跨 AWS、Azure、GCP 和 100 多种云服务的查询
- 安全性和合规性分析
- 成本和资源优化
- 查询开发援助
可与本地Steampipe安装和Turbot Pipes工作区配合使用,提供对所有云和 SaaS 数据的安全、只读访问。
安装
先决条件
- Node.js v16 或更高版本(包括
npx
) - 供本地使用: Steampipe安装并运行(
steampipe service start
) - 对于 Turbot Pipes: Turbot Pipes工作区和连接字符串
配置
将 Steampipe MCP 添加到您的 AI 助手的配置文件中:
默认情况下,这将连接到您本地的 Steampipe 安装,地址为postgresql://steampipe@localhost:9193/steampipe
。请确保先运行steampipe service start
。
要连接到Turbot Pipes工作区,请将连接字符串添加到参数:
AI助手设置
助手 | 配置文件位置 | 设置指南 |
---|---|---|
克劳德桌面 | claude_desktop_config.json | Claude Desktop MCP 指南 → |
光标 | ~/.cursor/mcp.json | 光标 MCP 指南 → |
保存配置文件并重新启动 AI 助手以使更改生效。
提示指南
首先,运行 MCP 服务器自带的best_practices
提示符,教你的法学硕士如何最好地使用 Steampipe。然后,你可以问任何问题!
探索您的云基础设施:
简单、具体的问题很有效:
生成基础设施报告:
深入安全分析:
获取合规性见解:
探索潜在风险:
请记住:
- 具体说明您想要分析哪些云资源(EC2、S3、IAM 等)
- 如果您对特定地区或帐户感兴趣,请提及
- 在添加复杂条件之前先从简单查询开始
- 使用自然语言 - LLM 将处理 SQL 翻译
- 大胆探索——法学硕士可以帮助您发现整个基础设施的见解!
功能
工具
- steampipe_query
- 使用 SQL 查询云和安全日志。
- 为了获得最佳性能:使用 CTE 而不是连接,限制请求的列。
- 所有查询都是只读的并使用 PostgreSQL 语法。
- 输入:
sql
(字符串):使用 PostgreSQL 语法执行的 SQL 查询
- steampipe_table_list
- 列出所有可用的 Steampipe 表。
- 可选输入:
schema
(字符串):按特定模式过滤表 - 可选输入:
filter
(字符串):按 ILIKE 模式过滤表(例如“%ec2%”)
- steampipe_table_show
- 获取有关特定表的详细信息,包括列定义、数据类型和描述。
- 输入:
name
(字符串):显示详细信息的表的名称(可以是模式限定的,例如���aws_account”或“aws.aws_account”) - 可选输入:
schema
(字符串):包含表的模式
- steampipe_plugin_list
- 列出系统上安装的所有 Steampipe 插件。插件提供对不同数据源的访问,例如 AWS、GCP 或 Azure。
- 无需输入参数
- steampipe_plugin_show
- 获取特定 Steampipe 插件安装的详细信息,包括版本、内存限制和配置。
- 输入:
name
(字符串):显示详细信息的插件名称
提示
- 最佳实践
- 使用 Steampipe 数据的最佳实践
- 提供以下方面的详细指导:
- 响应样式和格式约定
- 使用 CTE(WITH 子句)与连接
- SQL 语法和样式约定
- 色谱柱选择与优化
- 模式探索和理解
- 查询结构和组织
- 性能考虑和缓存
- 错误处理和故障排除
资源
- 地位
- 表示 Steampipe 连接的当前状态
- 属性包括:
- connection_string:当前数据库连接字符串
- 状态:连接状态(已连接/已断开连接)
该资源使 AI 工具能够检查和验证与 Steampipe 实例的连接状态。
发展
克隆和设置
- 克隆存储库并导航到目录:
- 安装依赖项:
- 构建项目:
测试
如需使用支持 MCP 的 AI 工具测试本地开发版本,请更新 MCP 配置以使用本地dist/index.js
包(而非 npm 包)。例如:
或者,使用 MCP 检查器来验证服务器实现:
环境变量
以下环境变量可用于配置 MCP 服务器:
STEAMPIPE_MCP_LOG_LEVEL
:控制服务器日志记录详细程度(默认值:info
)STEAMPIPE_MCP_WORKSPACE_DATABASE
:覆盖默认的 Steampipe 连接字符串(默认值:postgresql://steampipe@localhost:9193/steampipe
)
开源与贡献
此仓库基于Apache 2.0 许可证发布。请参阅我们的行为准则。我们期待与您合作!
Steampipe是Turbot HQ, Inc.独家基于此开源软件开发的产品。该产品根据我们的商业条款进行分发。其他方可以自行分发该软件,但不得使用 Turbot 的任何商标、云服务等。您可以访问我们的开源常见问题解答了解更多信息。
介入
想帮忙却不知从何下手?那就从以下help wanted
中选择一张吧:
You must be authenticated.
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Tools
steampipe-mcp
Related MCP Servers
- MIT License
- TypeScriptMIT License
- JavaScript
- PythonMIT License