关于 Tailpipe Model Context Protocol (MCP) Server
Tailpipe MCP 服务将 AI 助手连接到 Tailpipe 中的云端和 SaaS 日志数据,支持通过自然语言探索和分析。它使用本地初始化 SQL 脚本,并提供只读访问。
主要功能
- 01只读执行 Tailpipe SQL 查询
- 02查看分区、表及其详情
- 03列出插件与数据源
- 04检查 Tailpipe 连接状态
- 05支持指定初始化 SQL 脚本
适用场景
- 01调查 CloudTrail 安全事件
- 02分析云服务成本与性能
- 03查询 Kubernetes 等日志数据
- 04开发和检查 Tailpipe 查询
MCP 相关
该 MCP 服务向客户端提供 Tailpipe 查询、连接刷新、分区与表信息、插件和数据源查询等工具,并提供连接状态资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Tailpipe Model Context Protocol(MCP)服务
借助 Tailpipe,释放 AI 驱动日志分析的强大能力!此 Model Context Protocol 服务可将 Claude 等 AI 助手与您的云端和 SaaS 日志无缝连接,让您能够通过自然语言探索和分析整个数据资产。
Tailpipe MCP 连接 AI 助手与您的日志数据,让您可以通过自然语言:
- 查询 CloudTrail、Kubernetes 和其他云服务日志
- 调查并分析安全事件
- 获取成本和性能洞察
- 获得查询编写方面的帮助
可与您的本地 Tailpipe init SQL 脚本配合使用,为您的所有云端和 SaaS 日志数据提供安全的只读访问。
安装
前提条件
配置
将 Tailpipe MCP 添加到 AI 助手的配置文件中:
{
"mcpServers": {
"tailpipe": {
"command": "npx",
"args": [
"-y",
"@turbot/tailpipe-mcp"
]
}
}
}
默认情况下,这将使用 Tailpipe CLI 查找 init SQL 脚本。请先确保已安装并配置 Tailpipe。
若要连接到指定的 init SQL 脚本,请将其路径添加到 args 中:
{
"mcpServers": {
"tailpipe": {
"command": "npx",
"args": [
"-y",
"@turbot/tailpipe-mcp",
"/path/to/your/tailpipe_init_YYYYMMDDHHMMSS.sql"
]
}
}
}
AI 助手设置
| 助手 | 配置文件位置 | 设置指南 |
|---|---|---|
| Claude Desktop | claude_desktop_config.json | Claude Desktop MCP 指南 → |
| Cursor | ~/.cursor/mcp.json | Cursor MCP 指南 → |
保存配置文件并重启 AI 助手,使更改生效。
提示词指南
关于您的日志数据,想问什么都可以!
探索您的日志数据:
What tables do we have available in Tailpipe?
简单、具体的问题效果很好:
Show me all S3 bucket creation events from CloudTrail in the last 24 hours
生成安全报告:
What were my top 10 AWS services by cost last month?
深入分析事件:
Find any IAM users created outside working hours (9am-5pm) in the last week
了解时间线洞察:
Give me a timeline of the session where Venu created the IAM access key
探索潜在风险:
Analyze our cloudtrail errors for any specific security risks
请记住:
- 明确您关注的时间范围
- 说明您想分析的数据类型(CloudTrail 事件、成本数据等)
- 先从简单查询开始,再添加复杂条件
- 使用自然语言——大模型会处理 SQL 转换
- 大胆探索吧,您会惊讶于大模型能发现和实现的内容!
功能
工具
数据库操作:
-
tailpipe_query
- 使用 DuckDB 语法运行只读 Tailpipe SQL 查询
- 输入:
sql(字符串):要执行的 SQL 查询
-
tailpipe_connect
- 使用 Tailpipe init SQL 脚本初始化或刷新 DuckDB 会话
- 可选输入:
init_script_path(字符串):要使用的 init SQL 脚本路径。如果未提供,则刷新当前连接。
数据结构操作:
-
tailpipe_partition_list
- 列出所有可用的 Tailpipe 分区及其基本统计信息
- 无需输入参数
-
tailpipe_partition_show
- 显示指定 Tailpipe 分区的详细信息
- 输入:
name(字符串):要查看详细信息的分区名称
-
tailpipe_table_list
- 列出所有可用的 Tailpipe 表
- 无需输入参数
-
tailpipe_table_show
- 显示指定 Tailpipe 表及其列的详细信息
- 输入:
name(字符串):要查看详细信息的表名称
插件操作:
-
tailpipe_plugin_list
- 列出系统上安装的所有 Tailpipe 插件
- 无需输入参数
-
tailpipe_plugin_show
- 获取指定 Tailpipe 插件安装的详细信息
- 输入:
name(字符串):要查看详细信息的插件名称
来源操作:
-
tailpipe_source_list
- 列出系统上所有可用的 Tailpipe 来源
- 无需输入参数
-
tailpipe_source_show
- 获取指定 Tailpipe 来源的详细信息
- 输入:
name(字符串):要查看详细信息的来源名称
资源
- status
- 表示 Tailpipe 连接的当前状态
- 属性包括:
- 正在使用的初始化脚本路径
- 服务配置
- 运行时环境
此资源可让 AI 工具检查并验证与 Tailpipe 会话的连接状态。
开发
克隆和设置
- 克隆仓库并进入目录:
git clone https://github.com/turbot/tailpipe-mcp.git
cd tailpipe-mcp
- 安装依赖:
npm install
- 构建项目:
npm run build
测试
要使用支持 MCP 的 AI 工具测试本地开发构建,请更新 MCP 配置,使用本地的 dist/index.js,而非 npm 包。例如:
{
"mcpServers": {
"tailpipe": {
"command": "node",
"args": [
"/absolute/path/to/tailpipe-mcp/dist/index.js",
"/path/to/your/tailpipe_init_YYYYMMDDHHMMSS.sql"
]
}
}
}
或者,使用 MCP Inspector 验证服务实现:
npx @modelcontextprotocol/inspector dist/index.js
环境变量
以下环境变量可用于配置 MCP 服务:
TAILPIPE_MCP_INIT_SCRIPT_PATH:指定 Tailpipe 初始化 SQL 脚本路径(可替代命令行参数)TAILPIPE_MCP_LOG_LEVEL:控制日志详细程度(默认值:info)debug:显示所有消息(最详细)info:显示信息、警告和错误消息warn:仅显示警告和错误消息error:仅显示错误消息
TAILPIPE_MCP_MEMORY_MAX_MB:命令执行的最大内存缓冲区大小(以 MB 为单位)
开源与贡献
本仓库根据 Apache 2.0 许可证发布。请阅读我们的行为准则。期待与您合作!
Tailpipe 是由 Turbot HQ, Inc 独家基于这款开源软件推出的产品。该产品根据我们的商业条款分发。其他人可以自行分发此软件,但不得使用任何 Turbot 商标、云服务等。了解详情,请参阅我们的开源常见问题。
参与其中
想要提供帮助,但不知道从何开始?可以认领一个标记为 help wanted 的问题:
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。