Сервер Clickzetta MCP
Обзор
Реализация сервера Model Context Protocol (MCP), которая обеспечивает взаимодействие базы данных с Clickzetta Lakehouse . Этот сервер позволяет выполнять SQL-запросы с инструментами и взаимодействовать с меморандумом о данных, представленным в виде ресурса.
Быстрый старт с MCP-ClickZetta-Server/Trae в качестве инженера по обработке данных ИИ
Загрузите и установите Trae
Загрузите с trae.ai и войдите в систему, чтобы включить использование ИИ.
Получите свою учетную запись ClickZetta
Получите свою учетную запись ClickZetta
Извлечь образ MCP-ClickZetta-Server Docker
Добавить MCP-сервер в Trae
- В окне чата AI нажмите значок «Настройки» > MCP.
- Появится окно MCP.
- Нажмите кнопку + Добавить.
- Вы попадете на рынок серверов MCP.
- Нажмите Manual Configuration. Появится окно Manual Configuration. Добавьте совершенно новый сервер MCP, вставив следующую конфигурацию JSON в поле ввода, затем нажмите кнопку Confirm. Сервер MCP будет добавлен в список MCP.
- CLICKZETTA и env-файлы в формате CLICKZETTA
Быстрый старт с MCP-ClickZetta-Server/Zettapark-MCP-Server/Claude Desktop в качестве инженера по обработке данных ИИ
Загрузите и установите Claude Desktop
Загрузите с claude.ai и войдите в систему.
Получите свою учетную запись ClickZetta
Получите свою учетную запись ClickZetta
Начните свою лабораторию Jupyter
Начать с Docker Compose
- создать папку
- Создайте файл config.json и укажите данные для входа, как показано ниже:
Примечание: Таким образом, пожалуйста, установите файл config.json в папке notebooks. Вам следует изменить query_tag для ваших целей, и он будет использоваться для поиска запроса по тегу.
- Загрузите docker-compose.yml и запустите docker compose
Загрузите файл docker compose отсюда
Перейдите на рабочий стол Docker и проверьте, запущен ли Docker Compose.
- Доступ к серверу Jupyter Lab
Токен: YOUR_SECURE_TOKEN
Затем создайте новый блокнот, измените имя с Untitled.ipynb на notebook.ipynb.
Или запустить локальный сервер
Добавьте MCP-сервер в свой Claude Desktop
- В Claude Desktop перейдите в Настройки → Разработчик → Изменить конфигурацию.
- Откройте claude_desktop_config.json и настройте серверы MCP.
Более подробную информацию о Zettapark MCP Server вы можете получить здесь .
Компоненты
Ресурсы
Сервер предоставляет один динамический ресурс:
memo://insights
: постоянно обновляемая записка с аналитическими данными, которая объединяет обнаруженные аналитические данные в ходе анализа.- Автоматические обновления по мере обнаружения новых аналитических данных с помощью инструмента append-insight
Инструменты
Сервер предлагает следующие основные инструменты:
Инструменты запроса
read_query
- Описание : Выполнение запросов
SELECT
для чтения данных из базы данных. - Вход :
query
(строка): SQL-запросSELECT
для выполнения.
- Возвращает : результаты запроса в виде массива объектов.
write_query
(требуется флаг --allow-write
)
- Описание : Выполнение запросов
INSERT
,UPDATE
илиDELETE
для изменения данных. - Вход :
query
(строка): запрос на модификацию SQL.
- Возвращает :
{ affected_rows: number }
, что указывает количество затронутых строк.
create_table
(требуется флаг --allow-write
)
- Описание : Создание новых таблиц в базе данных.
- Вход :
query
(строка): SQL-операторCREATE TABLE
.
- Возврат : Подтверждение создания таблицы.
create_table_with_prompt
(требуется флаг --allow-write
)
- Описание : Создайте новую таблицу, запросив у пользователя имя таблицы, столбцы и их типы.
- Вход :
table_name
(строка): Имя создаваемой таблицы.columns
(строка): столбцы и их типы в форматеcolumn1:type1,column2:type2
.
- Возврат : Подтверждение создания таблицы.
Инструменты схемы
list_tables
- Описание : Получить список всех таблиц в базе данных.
- Ввод : Ввод не требуется.
- Возвращает : массив имен таблиц.
describe_table
- Описание : Просмотр информации о столбцах для определенной табли��ы.
- Вход :
table_name
(строка): Имя описываемой таблицы (может быть полностью уточнено).
- Возвращает : массив определений столбцов с именами и типами.
show_object_list
- Описание : Получить список определенных типов объектов в текущей рабочей области, таких как каталоги, схемы, таблицы и т. д.
- Вход :
object_type
(строка): Тип отображаемого объекта.
- Возвращает : список объектов.
desc_object
- Описание : Получите подробную информацию о конкретном объекте, например каталоге, схеме или таблице.
- Вход :
object_type
(строка): Тип объекта.object_name
(строка): Имя объекта.
- Возвращает : Подробную информацию об объекте.
Инструменты анализа
append_insight
- Описание : Добавьте новые аналитические данные в ресурс Memo.
- Вход :
insight
(строка): понимание данных, полученное в результате анализа.
- Возвращает : Подтверждение добавления инсайта.
- Триггеры : обновляет ресурс
memo://insights
.
Инструменты импорта данных
import_data_into_table_from_url
- Описание : Импорт данных в таблицу из URL (включая пути к файлам или HTTP/HTTPS URL). Если целевая таблица не существует, она будет создана автоматически.
- Вход :
from_url
(строка): URL-адрес источника данных.dest_table
(строка): Таблица для импорта данных.
- Возврат : Подтверждение успешного импорта данных.
import_data_into_table_from_database
- Описание : Подключение к базе данных, выполнение запроса и импорт результатов в таблицу Clickzetta. Поддерживает MySQL, PostgreSQL, SQLite и другие распространенные типы баз данных.
- Вход :
db_type
(строка): тип базы данных (например,mysql
,postgresql
,sqlite
).host
(строка): имя хоста или IP-адрес сервера базы данных (не требуется для SQLite).port
(целое число): номер порта сервера базы данных (не требуется для SQLite).database
(строка): имя базы данных, к которой необходимо подключиться (для SQLite это путь к файлу базы данных).username
(строка): имя пользователя для аутентификации (не требуется для SQLite).password
(строка): пароль для аутентификации (не требуется для SQLite).source_table
(строка): Имя исходной таблицы.dest_table
(строка): Имя целевой таблицы.
- Возврат : Подтверждение успешного импорта данных.
Похожие инструменты поиска
vector_search
- Описание : Выполнить векторный поиск по таблице с использованием вопроса и вернуть 5 наиболее близких ответов.
- Вход :
table_name
(строка): Имя таблицы.content_column_name
(строка): Столбец, в котором хранится контент.embedding_column_name
(строка): Столбец, в котором хранятся внедрения.partition_scope
(строка): код SQL для определения области действия раздела как части условияWHERE
.question
(строка): Вопрос для поиска.
- Возвращает : Результаты поиска.
match_all
- Описание : Выполните поиск с использованием функции «сопоставить все» в таблице с вопросом и выведите 5 лучших ответов.
- Вход :
table_name
(строка): Имя таблицы.content_column_name
(строка): Столбец, в котором хранится контент.partition_scope
(строка): код SQL для определения области действия раздела как части условияWHERE
.question
(строка): Вопрос для поиска.
- Возвращает : Результаты поиска.
Инструменты поиска знаний
get_knowledge_about_how_to_do_something
- Описание : Дайте рекомендации по выполнению определенных задач, таких как анализ медленных запросов, создание таблиц или управление подключениями к хранилищу.
- Вход :
to_do_something
(string): Задача для выполнения. Поддерживаемые задачи включают:analyze_slow_query
analyze_table_with_small_file
create_table_syntax
how_to_create_vcluster
how_to_create_index
how_to_alter_table_and_column
how_to_create_storage_connection
how_to_create_external_volume
- Возвращает : Подробное руководство по указанной задаче.
Заметки об использовании
- При использовании инструментов, изменяющих данные (например,
write_query
,create_table
), убедитесь, что флаг--allow-write
включен. - Укажите правильные входные параметры для каждого инструмента, как описано выше.
Использование с Claude Desktop
Установка в качестве локального сервера MCP (этот способ был протестирован и проверен на MacOS)
Клонируйте этот репозиторий:
Установите пакет:
Конфигурация учетных данных
Создайте файл .env на основе .env.example с вашими учетными данными Clickzetta Lakehouse:
Использование
Работает с уф
После установки пакета вы можете запустить сервер напрямую с помощью:
Если вы запускаете сервер впервые, вы можете выполнить следующую команду, чтобы ускорить установку пакета:
Это запустит сервер MCP на базе stdio, который можно подключить к Claude Desktop или любому клиенту MCP, поддерживающему связь stdio.
Вы должны увидеть примерно такой вывод:
Интеграция рабочего стола Клода
Сервер MCP (работающий в Docker) считывает свою конфигурацию из переменных среды, переданных через конфигурацию клиента MCP (например, claude_desktop_config.json
). Ключевые переменные:
- В Claude Desktop перейдите в Настройки → Серверы MCP.
- Добавьте новый сервер с полным путем к исполняемому файлу uv:
- Вы можете узнать свой UV-путь, запустив which uv в терминале.
- Сохраните конфигурацию сервера
Примеры запросов
При использовании Клода вы можете задавать такие вопросы:
- «Можете ли вы перечислить все схемы в моем аккаунте Clickzetta?»
- «Список всех представлений в схеме PUBLIC»
- «Опишите структуру представления CUSTOMER_ANALYTICS в схеме SALES»
- «Покажите мне пример данных из представления REVENUE_BY_REGION в схеме FINANCE»
- "Выполните этот SQL-запрос: SELECT customer_id, SUM(order_total) as total_spend FROM SALES.ORDERS GROUP BY customer_id ORDER BY total_spend DESC LIMIT 10"
- «Сделать запрос к базе данных МАРКЕТИНГА, чтобы найти 5 самых эффективных кампаний по коэффициенту конверсии»
- "帮我从Clickzetta中读取数据,分析下在public这个schema下git Hub_users может использовать только один из них, например, в режиме Hub_users.
- "帮我从Clickzetta中读取数据,分析下在public这个schema下github_event_issuesevent表里有多少条记录?"
Пример результата
- '帮我从Clickzetta数据源中读取数据,先分析基于public 个s chema下github_users 表里的数据可以做哪些分析?包括指标、统计、趋势、以及各种经典的用户分析模型比如用户价值分析、用户生命周期分析、用户сегментная 等, 然后根据这些分析内容生成一个分析报告的dashboard'
- Результат "帮我从Clickzetta中读取数据,分析下在public这个schema下gith ub_users использует функцию ub_users, которая позволяет установить пользовательский интерфейс, установить пользовательский интерфейс":
- Результат «帮我从Clickzetta中读取数据,分析下在public这个schema下github_users表里每个位置的用户数。请用中文返回结果,并对结果进行数据可视化展现":
Соображения безопасности
Этот сервер:
- Обеспечивает выполнение операций только для чтения (разрешены только операторы SELECT)
- Автоматически добавляет предложения LIMIT для предотвращения больших наборов результатов
- Использует аутентификацию учетной записи службы для безопасных соединений
- Проверяет входные данные для предотвращения SQL-инъекций
- ⚠️ Важно: храните файл .env в безопасности и никогда не передавайте его в систему контроля версий. Файл .gitignore настроен на его исключение.
Установка через Smithery (Этот способ должен быть протестирован и проверен)
Чтобы автоматически установить Clickzetta Server для Claude Desktop через Smithery :
Установка через UVX (Этот способ еще предстоит протестировать и проверить)
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Сервер Model Context Protocol, который обеспечивает взаимодействие базы данных с Clickzetta, позволяя пользователям выполнять SQL-запросы, управлять таблицами и поддерживать динамически обновляемую памятку по анализу данных.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that enables SQL query execution, database management, and business intelligence capabilities through MySQL connections.Last updated -JavaScript
- AsecurityAlicenseAqualityA Model Context Protocol server that provides database interaction capabilities through SQLite, enabling users to run SQL queries, analyze business data, and automatically generate business insight memos.Last updated -69TypeScriptMIT License
- -security-license-qualityA Model Context Protocol server that provides tools for connecting to and interacting with various database systems (SQLite, PostgreSQL, MySQL/MariaDB, SQL Server) through a unified interface.Last updated -Python
- -securityFlicense-qualityA Model Context Protocol server that enables SQL operations (SELECT, INSERT, UPDATE, DELETE) and table management through a standardized interface with SQLite databases.Last updated -JavaScript