Sponsored by Deepsite.site

Tinybird

Created By
a year ago
Interact with Tinybird serverless ClickHouse platform
Content

# Tinybird MCP server

An MCP server to interact with a Tinybird Workspace from any MCP client.

Features

  • Query Tinybird Data Sources using the Tinybird Query API
  • Get the result of existing Tinybird API Endpoints with HTTP requests
  • Push Datafiles

Usage examples

Setup

Installation

You can install the Tinybird MCP server using mcp-get:

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

Prerequisites

MCP is still very new and evolving, we recommend following the [MCP documentation](https://modelcontextprotocol.io/quickstart#prerequisites) to get the MCP basics up and running.

You'll need:

Configuration

1. Configure Claude Desktop

Create the following file depending on your OS:

On MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`

On Windows: `%APPDATA%/Claude/claude_desktop_config.json`

Paste this template in the file and replace `<TINYBIRD_API_URL>` and `<TINYBIRD_ADMIN_TOKEN>` with your Tinybird API URL and Admin Token:

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

2. Restart Claude Desktop

Prompts

The server provides a single prompt:

You can configure additional prompt workflows:

  • Create a prompts Data Source in your workspace with this schema and append your prompts. The MCP loads `prompts` on initialization so you can configure it to your needs: ```bash SCHEMA > `name` String `json:$.name`, `description` String `json:$.description`, `timestamp` DateTime `json:$.timestamp`, `arguments` Array(String) `json:$.arguments[:]`, `prompt` String `json:$.prompt` ```

Tools

The server implements several tools to interact with the Tinybird Workspace:

  • `list-data-sources`: Lists all Data Sources in the Tinybird Workspace
  • `list-pipes`: Lists all Pipe Endpoints in the Tinybird Workspace
  • `get-data-source`: Gets the information of a Data Source given its name, including the schema.
  • `get-pipe`: Gets the information of a Pipe Endpoint given its name, including its nodes and SQL transformation to understand what insights it provides.
  • `request-pipe-data`: Requests data from a Pipe Endpoints via an HTTP request. Pipe endpoints can have parameters to filter the analytical data.
  • `run-select-query`: Allows to run a select query over a Data Source to extract insights.
  • `append-insight`: Adds a new business insight to the memo resource
  • `llms-tinybird-docs`: Contains the whole Tinybird product documentation, so you can use it to get context about what Tinybird is, what it does, API reference and more.
  • `save-event`: This allows to send an event to a Tinybird Data Source. Use it to save a user generated prompt to the prompts Data Source. The MCP server feeds from the prompts Data Source on initialization so the user can instruct the LLM the workflow to follow.
  • `analyze-pipe`: Uses the Tinybird analyze API to run a ClickHouse explain on the Pipe Endpoint query and check if indexes, sorting key, and partition key are being used and propose optimizations suggestions
  • `push-datafile`: Creates a remote Data Source or Pipe in the Tinybird Workspace from a local datafile. Use the [Filesystem MCP](https://github.com/modelcontextprotocol/servers/tree/main/src/filesystem) to save files generated by this MCP server.

Development

Config

If you are working locally add two environment variables to a `.env` file in the root of the repository:

```sh TB_API_URL= TB_ADMIN_TOKEN= ```

For local development, update your Claude Desktop configuration:

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

<details> <summary>Published Servers Configuration</summary>

```json "mcpServers": { "mcp-tinybird": { "command": "uvx", "args": [ "mcp-tinybird" ] } } ``` </details>

Building and Publishing

To prepare the package for distribution:

  1. Sync dependencies and update lockfile: ```bash uv sync ```

  2. Build package distributions: ```bash uv build ```

This will create source and wheel distributions in the `dist/` directory.

  1. Publish to PyPI: ```bash uv publish ```

Note: You'll need to set PyPI credentials via environment variables or command flags:

  • Token: `--token` or `UV_PUBLISH_TOKEN`
  • Or username/password: `--username`/`UV_PUBLISH_USERNAME` and `--password`/`UV_PUBLISH_PASSWORD`

Debugging

Since MCP servers run over stdio, debugging can be challenging. For the best debugging experience, we strongly recommend using the [MCP Inspector](https://github.com/modelcontextprotocol/inspector).

You can launch the MCP Inspector via [`npm`](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) with this command:

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

Upon launching, the Inspector will display a URL that you can access in your browser to begin debugging.

Monitoring

To monitor the MCP server, you can use any compatible Prometheus client such as [Grafana](https://grafana.com/). Learn how to monitor your MCP server [here](./mcp-analytics/README.md).

Recommend Servers
TraeBuild with Free GPT-4.1 & Claude 3.7. Fully MCP-Ready.
Serper MCP ServerA Serper MCP Server
WindsurfThe new purpose-built IDE to harness magic
BlenderBlenderMCP connects Blender to Claude AI through the Model Context Protocol (MCP), allowing Claude to directly interact with and control Blender. This integration enables prompt assisted 3D modeling, scene creation, and manipulation.
Playwright McpPlaywright MCP server
Zhipu Web SearchZhipu Web Search MCP Server is a search engine specifically designed for large models. It integrates four search engines, allowing users to flexibly compare and switch between them. Building upon the web crawling and ranking capabilities of traditional search engines, it enhances intent recognition capabilities, returning results more suitable for large model processing (such as webpage titles, URLs, summaries, site names, site icons, etc.). This helps AI applications achieve "dynamic knowledge acquisition" and "precise scenario adaptation" capabilities.
Tavily Mcp
DeepChatYour AI Partner on Desktop
ChatWiseThe second fastest AI chatbot™
Amap Maps高德地图官方 MCP Server
AiimagemultistyleA Model Context Protocol (MCP) server for image generation and manipulation using fal.ai's Stable Diffusion model.
Baidu Map百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Howtocook Mcp基于Anduin2017 / HowToCook (程序员在家做饭指南)的mcp server,帮你推荐菜谱、规划膳食,解决“今天吃什么“的世纪难题; Based on Anduin2017/HowToCook (Programmer's Guide to Cooking at Home), MCP Server helps you recommend recipes, plan meals, and solve the century old problem of "what to eat today"
TimeA Model Context Protocol server that provides time and timezone conversion capabilities. This server enables LLMs to get current time information and perform timezone conversions using IANA timezone names, with automatic system timezone detection.
EdgeOne Pages MCPAn MCP service designed for deploying HTML content to EdgeOne Pages and obtaining an accessible public URL.
MiniMax MCPOfficial MiniMax Model Context Protocol (MCP) server that enables interaction with powerful Text to Speech, image generation and video generation APIs.
CursorThe AI Code Editor
Visual Studio Code - Open Source ("Code - OSS")Visual Studio Code
MCP AdvisorMCP Advisor & Installation - Use the right MCP server for your needs
Context7Context7 MCP Server -- Up-to-date code documentation for LLMs and AI code editors
Jina AI MCP ToolsA Model Context Protocol (MCP) server that integrates with Jina AI Search Foundation APIs.