tilda-mcp-cdp

tilda-mcp-cdp

MCP server for Tilda with mass editing capabilities, combining read-only official API tools and write actions via Chrome CDP for tasks like setting Metrika, replacing code and links, publishing pages, and verifying live content.

Category
Visit Server

README

tilda-mcp-cdp

MCP-сервер для Tilda с поддержкой массового редактирования. 11 инструментов: 5 на чтение через официальный API + 6 на запись через залогиненный Chrome по CDP (Яндекс.Метрика, код-блоки T123, ссылки Zero Block, публикация, проверка живого кода).

License: MIT

Расширение проекта theYahia/tilda-mcp (read-only API). Здесь добавлен слой действий через CDP, потому что официальный API Tilda не умеет писать.

Зачем

Официальный Tilda API (api.tildacdn.info) — только чтение. Любые изменения сайта (счётчик Метрики, сторонние скрипты в блоках, ссылки кнопок, публикация) делаются только в интерфейсе. Этот сервер автоматизирует их, управляя твоим залогиненным Chrome по протоколу отладки (CDP) — так можно массово править десятки одинаковых лендингов одной командой.

Требования

  • Node.js ≥ 18
  • Для чтения: TILDA_PUBLIC_KEY + TILDA_SECRET_KEY (настройки аккаунта Tilda)
  • Для действий: запущенный Chrome с портом отладки и входом в Tilda (см. ниже)

Установка

git clone https://github.com/skiddgoddamn/tilda-mcp-cdp.git
cd tilda-mcp-cdp
npm install
npm run build

Подключение к Claude Code / Desktop / Cursor

{
  "mcpServers": {
    "tilda": {
      "command": "node",
      "args": ["/абсолютный/путь/tilda-mcp-cdp/dist/index.js"],
      "env": {
        "TILDA_PUBLIC_KEY": "your-public-key",
        "TILDA_SECRET_KEY": "your-secret-key",
        "TILDA_CDP_URL": "http://localhost:9222"
      }
    }
  }
}

Запуск debug-Chrome (для инструментов записи)

Chrome 136+ блокирует порт отладки на профиле по умолчанию (защита cookies), поэтому запускаем на отдельном профиле и один раз логинимся в Tilda:

chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\chrome-debug-tilda" --no-first-run https://tilda.cc/projects/

Проверить, что всё подключилось: вызови инструмент chrome_status — он покажет connected, loggedIn и аккаунт. Адрес CDP меняется переменной TILDA_CDP_URL.

Streamable HTTP

TILDA_PUBLIC_KEY=xxx TILDA_SECRET_KEY=yyy node dist/index.js --http --port 3001
# Endpoint: http://localhost:3001/mcp   Health: http://localhost:3001/health

Инструменты (11)

Чтение — официальный API

Инструмент Описание
get_projects Список проектов
get_project_info Подробная информация о проекте (домен, настройки, CSS/JS)
get_pages Список страниц проекта
get_page Полная информация о странице (HTML, CSS, JS)
get_page_export Экспорт страницы для самостоятельного хостинга

Действия — через Chrome по CDP

Инструмент Аргументы Описание
chrome_status Проверка CDP-подключения и сессии Tilda
set_metrika projectid, metrikaId ID Яндекс.Метрики в настройках проекта
replace_page_code pageid, find, replace, publish? Замена (regexp) в HTML-код-блоках T123 — напр. трекеры
replace_zero_links pageid, find, replace, publish? Замена ссылок (regexp) в элементах Zero Block — напр. кнопки
publish_page pageid Опубликовать страницу
verify_live urls, contains?, notContains? Проверка живого HTML на наличие/отсутствие подстрок
  • find — это регулярное выражение (флаг g применяется автоматически).
  • replace_page_code и replace_zero_links по умолчанию публикуют страницу (publish: true).
  • Изменения видны на сайте только после публикации.

Как это работает под капотом

  • Метрика — поле #yandexmetrikaid в настройках проекта (вкладка «Аналитика»).
  • Код-блоки T123 — содержимое редактируется в ACE-редакторе (window.ace), сохранение «Сохранить и закрыть».
  • Ссылки Zero Block — берётся модель блока (ab__getDBSaveData()), ссылки заменяются в cleanElementsData и сохраняются POST-запросом /zero/submit/ (детерминированно, без кликов по холсту).
  • Публикация — кнопка #page_menu_publishlink.
  • Проверка — живой HTML грузится через сам браузер с обходом кэша (tilda.ws отдаёт 403 на прямые запросы).

Примеры запросов

# Чтение
Покажи мои проекты в Tilda
Список страниц проекта 12345
Экспортируй страницу 67890

# Действия (нужен запущенный debug-Chrome)
Проверь статус Chrome
Поставь Метрику 109756541 в проект 23943806, потом опубликуй её страницы
На странице 131579756 замени в коде counterID=108377870 на counterID=109756541
На странице 131579756 замени ссылку https://t\.me/\+\w+ на https://t.me/+NEW и опубликуй
Проверь, что на dubaiphonemart.com есть +NEW и нет +OLD

Разработка

npm run dev     # запуск из исходников (tsx)
npm run build   # сборка в dist/
npm test        # тесты (vitest)

Лицензия

MIT. Основано на theYahia/tilda-mcp.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured