Tinybird Mcp Сервер
Обзор
Что такое MCP-Tinybird?
MCP-Tinybird — это проект с открытым исходным кодом, размещенный на GitHub в организации Tinybirdco. Он служит мощным инструментом для разработчиков, стремящихся эффективно создавать и управлять потоками данных. Репозиторий разработан для облегчения интеграции возможностей Tinybird в различные приложения, позволяя пользователям использовать обработку и аналитику данных в реальном времени.
Особенности MCP-Tinybird
- Обработка данных в реальном времени: MCP-Tinybird позволяет пользователям обрабатывать и анализировать данные в реальном времени, что делает его идеальным для приложений, требующих немедленных инсайтов.
- Удобный интерфейс: Проект предлагает простой интерфейс, который упрощает управление потоками данных, делая его доступным для разработчиков любого уровня подготовки.
- Открытый исходный код: Будучи проектом с открытым исходным кодом, MCP-Tinybird поощряет вклад сообщества и сотрудничество, позволяя разработчикам улучшать его функции и возможности.
- Возможности интеграции: Репозиторий поддерживает интеграцию с различными источниками данных и сервисами, предоставляя гибкость в том, как данные поступают и обрабатываются.
- Документация и поддержка: Доступна подробная документация, чтобы помочь пользователям начать работу и устранить любые проблемы, с которыми они могут столкнуться.
Как использовать MCP-Tinybird
-
Клонируйте репозиторий: Начните с клонирования репозитория MCP-Tinybird с GitHub на ваш локальный компьютер с помощью команды:
git clone https://github.com/tinybirdco/mcp-tinybird.git
-
Установите зависимости: Перейдите в каталог проекта и установите необходимые зависимости. Это обычно можно сделать с помощью менеджера пакетов, такого как npm или yarn:
cd mcp-tinybird npm install
-
Настройте вашу среду: Настройте переменные окружения и файлы конфигурации в соответствии с документацией, предоставленной в репозитории.
-
Запустите приложение: Запустите приложение, чтобы начать обработку данных. Это обычно можно сделать с помощью команды:
npm start
-
Исследуйте и настраивайте: Используйте возможности MCP-Tinybird для создания ваших потоков данных. Вы можете настроить приложение в соответствии с вашими конкретными потребностями и интегрировать его с другими сервисами.
Часто задаваемые вопросы
В1: Является ли MCP-Tinybird бесплатным для использования?
О1: Да, MCP-Tinybird — это проект с открытым исходным кодом, что означает, что его можно использовать и модифицировать бесплатно в соответствии с условиями лицензии Apache-2.0.
В2: Могу ли я внести вклад в проект MCP-Tinybird?
О2: Абсолютно! Вклад приветствуется. Вы можете форкнуть репозиторий, внести изменения и отправить запрос на слияние на рассмотрение.
В3: Где я могу найти документацию для MCP-Tinybird?
О3: Документация доступна в самом репозитории, обычно в файле README.md
или в отдельной папке docs
.
В4: Какие технологии поддерживает MCP-Tinybird?
О4: MCP-Tinybird разработан для работы с различными источниками данных и может интегрироваться с несколькими технологиями, что увеличивает его универсальность для различных случаев использования.
В5: Как я могу сообщить о проблемах или ошибках?
О5: Вы можете сообщить о проблемах, перейдя на вкладку "Issues" в репозитории MCP-Tinybird на GitHub и отправив новую проблему с подробной информацией о проблеме.
Деталь
Tinybird MCP server
An MCP server to interact with a Tinybird Workspace from any MCP client.
<a href="https://glama.ai/mcp/servers/53l5ojnx30"><img width="380" height="200" src="https://glama.ai/mcp/servers/53l5ojnx30/badge" alt="Tinybird server MCP server" /></a>
Features
- Query Tinybird Data Sources using the Tinybird Query API
- Get the result of existing Tinybird API Endpoints with HTTP requests
- Push Datafiles
It supports both SSE and STDIO modes.
Usage examples
Setup
Installation
Using MCP package managers
Smithery
To install Tinybird MCP for Claude Desktop automatically via Smithery:
npx @smithery/cli install @tinybirdco/mcp-tinybird --client claude
mcp-get
You can install the Tinybird MCP server using mcp-get:
npx @michaellatman/mcp-get@latest install mcp-tinybird
Prerequisites
MCP is still very new and evolving, we recommend following the MCP documentation 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:
{
"mcpServers": {
"mcp-tinybird": {
"command": "uvx",
"args": [
"mcp-tinybird",
"stdio"
],
"env": {
"TB_API_URL": "<TINYBIRD_API_URL>",
"TB_ADMIN_TOKEN": "<TINYBIRD_ADMIN_TOKEN>"
}
}
}
}
2. Restart Claude Desktop
SSE mode
Alternatively, you can run the MCP server in SSE mode by running the following command:
uvx mcp-tinybird sse
This mode is useful to integrate with an MCP client that supports SSE (like a web app).
Prompts
The server provides a single prompt:
- tinybird-default: Assumes you have loaded some data in Tinybird and want help exploring it.
- Requires a "topic" argument which defines the topic of the data you want to explore, for example, "Bluesky data" or "retail sales".
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:
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 Workspacelist-pipes
: Lists all Pipe Endpoints in the Tinybird Workspaceget-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 resourcellms-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 suggestionspush-datafile
: Creates a remote Data Source or Pipe in the Tinybird Workspace from a local datafile. Use the Filesystem MCP 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:
TB_API_URL=
TB_ADMIN_TOKEN=
For local development, update your Claude Desktop configuration:
{
"mcpServers": {
"mcp-tinybird_local": {
"command": "uv",
"args": [
"--directory",
"/path/to/your/mcp-tinybird",
"run",
"mcp-tinybird",
"stdio"
]
}
}
}
<details>
<summary>Published Servers Configuration</summary>
"mcpServers": {
"mcp-tinybird": {
"command": "uvx",
"args": [
"mcp-tinybird"
]
}
}
</details>
Building and Publishing
To prepare the package for distribution:
- Sync dependencies and update lockfile:
uv sync
- Build package distributions:
uv build
This will create source and wheel distributions in the dist/
directory.
- Publish to PyPI:
uv publish
Note: You'll need to set PyPI credentials via environment variables or command flags:
- Token:
--token
orUV_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.
You can launch the MCP Inspector via npm
with this command:
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. Learn how to monitor your MCP server here.
Конфигурация сервера
{
"mcpServers": {
"mcp-tinybird": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/metorial/mcp-container--tinybirdco--mcp-tinybird--mcp-tinybird",
"mcp-tinybird stdio"
],
"env": {
"TB_API_URL": "tb-api-url",
"TB_ADMIN_TOKEN": "tb-admin-token"
}
}
}
}