Tinybird MCP server

Official
Apache 2.0
51
  • Apple

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Enables analysis of Bluesky data through integration with Tinybird, as demonstrated in usage examples including metrics visualization.

  • Supports ClickHouse query analysis through the analyze-pipe tool, which provides optimization suggestions for query performance, indexes, sorting keys, and partition keys.

  • Provides compatibility with Grafana for monitoring the MCP server through Prometheus clients.

Tinybird MCP 服务器

MCP 服务器可从任何 MCP 客户端与 Tinybird Workspace 进行交互。

特征

  • 使用 Tinybird 查询 API 查询 Tinybird 数据源
  • 通过 HTTP 请求获取现有 Tinybird API 端点的结果
  • 推送数据文件

它支持 SSE 和 STDIO 模式。

使用示例

设置

安装

使用 MCP 包管理器

锻造工艺

要通过Smithery自动为 Claude Desktop 安装 Tinybird MCP:

npx @smithery/cli install @tinybirdco/mcp-tinybird --client claude

mcp-获取

您可以使用mcp-get安装 Tinybird MCP 服务器:

npx @michaellatman/mcp-get@latest install mcp-tinybird

先决条件

MCP 仍然非常新并且正在不断发展,我们建议遵循MCP 文档来了解并运行 MCP 基础知识。

你需要:

配置

1.配置Claude桌面

根据您的操作系统创建以下文件:

在 MacOS 上: ~/Library/Application Support/Claude/claude_desktop_config.json

在 Windows 上: %APPDATA%/Claude/claude_desktop_config.json

将此模板粘贴到文件中,并将<TINYBIRD_API_URL><TINYBIRD_ADMIN_TOKEN>替换为您的 Tinybird API URL 和管理令牌:

{ "mcpServers": { "mcp-tinybird": { "command": "uvx", "args": [ "mcp-tinybird", "stdio" ], "env": { "TB_API_URL": "<TINYBIRD_API_URL>", "TB_ADMIN_TOKEN": "<TINYBIRD_ADMIN_TOKEN>" } } } }

2. 重启 Claude Desktop

SSE 模式

或者,您可以通过运行以下命令以 SSE 模式运行 MCP 服务器:

uvx mcp-tinybird sse

此模式对于与支持 SSE 的 MCP 客户端(如 Web 应用程序)集成很有用。

提示

服务器提供一个提示:

  • tinybird-default :假设您已经在 Tinybird 中加载了一些数据并希望获得帮助来探索它。
    • 需要一个“主题”参数来定义您想要探索的数据的主题,例如“Bluesky 数据”或“零售销售”。

您可以配置其他提示工作流程:

  • 使用此架构在您的工作区中创建一个提示数据源,并附加您的提示。MCP 会在初始化时加载prompts ,因此您可以根据需要进行配置:
SCHEMA > `name` String `json:$.name`, `description` String `json:$.description`, `timestamp` DateTime `json:$.timestamp`, `arguments` Array(String) `json:$.arguments[:]`, `prompt` String `json:$.prompt`

工具

服务器实现了几个工具来与 Tinybird 工作区进行交互:

  • list-data-sources :列出 Tinybird 工作区中的所有数据源
  • list-pipes :列出 Tinybird 工作区中的所有管道端点
  • get-data-source :根据名称获取数据源的信息,包括模式。
  • get-pipe :根据名称获取管道端点的信息,包括其节点和 SQL 转换,以了解它提供的见解。
  • request-pipe-data :通过 HTTP 请求从管道端点获取数据。管道端点可以包含参数来过滤分析数据。
  • run-select-query :允许在数据源上运行选择查询以提取见解。
  • append-insight :向备忘录资源添加新的业务洞察
  • llms-tinybird-docs :包含整个 Tinybird 产品文档,因此您可以使用它来了解 Tinybird 是什么、它的作用、API 参考等。
  • save-event :这允许向 Tinybird 数据源发送事件。使用它将用户生成的提示保存到提示数据源。MCP 服务器在初始化时从提示数据源获取数据,以便用户可以指示 LLM 遵循的工作流程。
  • analyze-pipe :使用 Tinybird 分析 API 在 Pipe Endpoint 查询上运行 ClickHouse 解释,检查索引、排序键和分区键是否正在使用,并提出优化建议
  • push-datafile :从本地数据文件在 Tinybird 工作区中创建远程数据源或管道。使用文件系统 MCP保存此 MCP 服务器生成的文件。

发展

配置

如果您在本地工作,请将两个环境变量添加到存储库根目录中的.env文件:

TB_API_URL= TB_ADMIN_TOKEN=

对于本地开发,请更新您的 Claude Desktop 配置:

{ "mcpServers": { "mcp-tinybird_local": { "command": "uv", "args": [ "--directory", "/path/to/your/mcp-tinybird", "run", "mcp-tinybird", "stdio" ] } } }
"mcpServers": { "mcp-tinybird": { "command": "uvx", "args": [ "mcp-tinybird" ] } }

构建和发布

准备分发包:

  1. 同步依赖项并更新锁文件:
uv sync
  1. 构建软件包分发版:
uv build

这将在dist/目录中创建源和轮子分布。

  1. 发布到 PyPI:
uv publish

注意:您需要通过环境变量或命令标志设置 PyPI 凭据:

  • 令牌: --tokenUV_PUBLISH_TOKEN
  • 或用户名/密码: --username / UV_PUBLISH_USERNAME--password / UV_PUBLISH_PASSWORD

调试

由于 MCP 服务器通过 stdio 运行,调试起来可能比较困难。为了获得最佳调试体验,我们强烈建议使用MCP Inspector

您可以使用以下命令通过npm启动 MCP Inspector:

npx @modelcontextprotocol/inspector uv --directory /Users/alrocar/gr/mcp-tinybird run mcp-tinybird

启动后,检查器将显示一个 URL,您可以在浏览器中访问该 URL 以开始调试。

监控

要监控 MCP 服务器,您可以使用任何兼容的 Prometheus 客户端,例如Grafana 。点击此处了解如何监控您的 MCP 服务器。

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

MCP 服务器可从任何 MCP 客户端与 Tinybird Workspace 进行交互。

  1. Features
    1. Usage examples
      1. Setup
        1. Installation
        2. Prerequisites
        3. Configuration
      2. Prompts
        1. Tools
          1. Development
            1. Config
            2. Building and Publishing
            3. Debugging
            4. Monitoring
          ID: 53l5ojnx30