Skip to main content
Glama
StructlyOfficial

Structly MCP Server

Official

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
STRUCTLY_API_URLNoBase URL of the Structly backend.http://localhost:8000
STRUCTLY_API_TOKENYesAPI token for Structly, obtained from the 'Integrations' section.

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
list_projectsA

Получить список всех проектов, доступных текущему пользователю.

create_projectB

Создать новый проект.

    Args:
        project_name: Название проекта.
        project_description: Описание проекта (необязательно).
    
edit_projectA

Изменить название и/или описание проекта.

    Args:
        project_uuid: UUID проекта.
        project_name: Новое название проекта (если нужно изменить).
        project_description: Новое описание проекта (если нужно изменить).
    
delete_projectA

Удалить проект вместе со всеми его схемами, таблицами и связями.

    Args:
        project_uuid: UUID проекта.
    
list_schemasB

Получить список схем внутри проекта.

    Args:
        project_uuid: UUID проекта.
    
create_schemaA

Создать новую схему в проекте.

    Args:
        project_uuid: UUID проекта.
        schema_name: Название схемы (например, users, orders).
        schema_description: Описание схемы (необязательно).
    
edit_schemaB

Изменить название и/или описание схемы.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        schema_name: Новое название схемы.
        schema_description: Новое описание схемы (необязательно).
    
delete_schemaA

Удалить схему вместе со всеми таблицами, колонками и связями.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
    
commit_schemaB

Зафиксировать текущее состояние схемы коммитом в указанной ветке.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        branch_name: Ветка, в которую создаётся коммит (по умолчанию main).
    
analyze_schemaB

Запустить анализ схемы: метрики, правила качества, риски миграций.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
    
ai_preview_schemaA

Запустить генерацию структуры схемы через ИИ (возвращает ID задачи).

    Режим 'create' — новая схема с нуля по описанию; режим 'modify' — изменения
    текущей схемы с учётом контекста. Затем дождитесь результата через
    ai_get_preview и примените через ai_apply_schema.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        prompt: Текстовое описание того, что нужно создать/изменить.
        mode: Режим работы ИИ: 'create' или 'modify'.
        current_schema: Текущая схема как контекст для режима modify (необязательно).
    
ai_get_previewA

Получить результат AI-задачи генерации схемы по её UUID.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        task_uuid: UUID задачи из ai_preview_schema.
    
ai_apply_schemaB

Применить сгенерированный ИИ SQL к схеме в указанной ветке.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        sql: SQL из результата AI-генерации.
        mode: Режим работы ИИ: 'create' или 'modify'.
        branch_name: Ветка, в которую применяются изменения (по умолчанию main).
    
get_diagramA

Получить полную структуру схемы: таблицы, колонки, связи, группы.

    Используйте этот инструмент, чтобы понять текущее состояние схемы перед
    внесением изменений.

    Args:
        schema_uuid: UUID схемы.
        branch_name: Ветка схемы (по умолчанию main).
    
create_tableA

Создать таблицу в схеме.

    Args:
        schema_uuid: UUID схемы.
        table_name: Название таблицы.
        columns: Список колонок, например
            [{"column_name": "id", "column_type": "uuid", "is_primary": true,
              "is_nullable": false, "column_default": "gen_random_uuid()"}].
        position_x: Координата X на холсте.
        position_y: Координата Y на холсте.
        table_color: Цвет таблицы в HEX (по умолчанию #38bdf8).
        branch_name: Ветка схемы (по умолчанию main).
    
edit_tableB

Изменить свойства таблицы (название, позицию на холсте, цвет).

    Args:
        schema_uuid: UUID схемы.
        table_uuid: UUID таблицы.
        table_name: Новое название таблицы.
        position_x: Новая координата X.
        position_y: Новая координата Y.
        table_color: Новый цвет в HEX.
        branch_name: Ветка схемы (по умолчанию main).
    
delete_tableB

Удалить таблицу вместе с колонками и связями.

    Args:
        schema_uuid: UUID схемы.
        table_uuid: UUID таблицы.
        branch_name: Ветка схемы (по умолчанию main).
    
batch_edit_tablesA

Массово изменить несколько таблиц одним запросом.

    Args:
        schema_uuid: UUID схемы.
        items: Список изменений, например
            [{"table_uuid": "uuid", "data": {"position_x": 100, "position_y": 200}}].
        branch_name: Ветка схемы (по умолчанию main).
    
create_columnB

Добавить колонку в таблицу.

    Args:
        schema_uuid: UUID схемы.
        table_uuid: UUID таблицы.
        column_name: Название колонки.
        column_type: Тип данных PostgreSQL (например, uuid, bigint, text).
        is_primary: Является ли колонка первичным ключом.
        is_nullable: Может ли колонка содержать NULL.
        column_default: Значение по умолчанию (например, gen_random_uuid()).
        branch_name: Ветка схемы (по умолчанию main).
    
edit_columnC

Изменить свойства колонки.

    Args:
        schema_uuid: UUID схемы.
        table_uuid: UUID таблицы.
        column_uuid: UUID колонки.
        column_name: Новое название колонки.
        column_type: Новый тип данных.
        is_primary: Является ли колонка первичным ключом.
        is_nullable: Может ли колонка содержать NULL.
        column_default: Новое значение по умолчанию.
        branch_name: Ветка схемы (по умолчанию main).
    
delete_columnB

Удалить колонку из таблицы.

    Args:
        schema_uuid: UUID схемы.
        table_uuid: UUID таблицы.
        column_uuid: UUID колонки.
        branch_name: Ветка схемы (по умолчанию main).
    
create_groupA

Создать группу таблиц в схеме (для визуальной организации).

    Args:
        schema_uuid: UUID схемы.
        group_name: Название группы.
        group_description: Описание группы (необязательно).
        position_x: Координата X группы на холсте.
        position_y: Координата Y группы на холсте.
        height: Высота группы.
        width: Ширина группы.
        group_color: Цвет группы в HEX.
        tables: Список таблиц, входящих в группу (необязательно).
        branch_name: Ветка схемы (по умолчанию main).
    
edit_groupA

Изменить свойства группы таблиц.

    Args:
        schema_uuid: UUID схемы.
        group_uuid: UUID группы.
        group_name: Новое название группы.
        group_description: Новое описание группы.
        position_x: Новая координата X.
        position_y: Новая координата Y.
        width: Новая ширина группы.
        height: Новая высота группы.
        group_color: Новый цвет группы в HEX.
        tables: Новый список таблиц группы.
        branch_name: Ветка схемы (по умолчанию main).
    
delete_groupA

Удалить группу таблиц (таблицы остаются в схеме).

    Args:
        schema_uuid: UUID схемы.
        group_uuid: UUID группы.
        branch_name: Ветка схемы (по умолчанию main).
    
create_relationshipA

Создать связь (внешний ключ) между двумя колонками.

    Args:
        schema_uuid: UUID схемы.
        source_table_uuid: UUID исходной таблицы.
        source_column_uuid: UUID исходной колонки (FK-сторона).
        target_table_uuid: UUID целевой таблицы (PK-сторона).
        target_column_uuid: UUID целевой колонки (PK-сторона).
        relationship_name: Название связи.
        relationship_type: Тип связи (например, one_to_many, many_to_many).
        delete_action: Действие при удалении: CASCADE, SET NULL, SET DEFAULT,
            RESTRICT или NO ACTION.
        update_action: Действие при обновлении: CASCADE, SET NULL, SET DEFAULT,
            RESTRICT или NO ACTION.
        branch_name: Ветка схемы (по умолчанию main).
    
edit_relationshipC

Изменить свойства связи.

    Args:
        schema_uuid: UUID схемы.
        relationship_uuid: UUID связи.
        source_table_uuid: UUID исходной таблицы.
        source_column_uuid: UUID исходной колонки.
        target_table_uuid: UUID целевой таблицы.
        target_column_uuid: UUID целевой колонки.
        relationship_name: Новое название связи.
        relationship_type: Новый тип связи.
        delete_action: Новое действие при удалении.
        update_action: Новое действие при обновлении.
        branch_name: Ветка схемы (по умолчанию main).
    
delete_relationshipA

Удалить связь между таблицами.

    Args:
        schema_uuid: UUID схемы.
        relationship_uuid: UUID связи.
        branch_name: Ветка схемы (по умолчанию main).
    
export_schema_sqlA

Экспортировать схему в SQL DDL.

    Args:
        schema_uuid: UUID схемы.
        dialect: Диалект SQL (по умолчанию postgres).
        branch_name: Ветка схемы (по умолчанию main).
    
list_branchesC

Получить список веток проекта.

    Args:
        project_uuid: UUID проекта.
    
create_branchB

Создать новую ветку проекта.

    Args:
        project_uuid: UUID проекта.
        branch_name: Имя новой ветки.
        source_branch: Ветка-источник (по умолчанию main).
        is_default: Сделать ветку веткой по умолчанию.
    
fork_branchB

Создать ветку из другой ветки (fork) в проекте.

    Args:
        project_uuid: UUID проекта.
        source_branch: Ветка-источник.
        target_branch: Целевая (новая) ветка.
        create_target_if_missing: Создать целевую ветку, если её нет.
        overwrite_target: Перезаписать целевую ветку, если она существует.
        is_default: Сделать ветку веткой по умолчанию.
    
commit_to_branchC

Зафиксировать изменения схемы коммитом в ветке.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        message: Сообщение коммита.
        branch_name: Ветка для коммита (по умолчанию main).
        detached_target_branch_name: Имя целевой ветки для detached-коммита.
    
checkout_branchC

Переключить схему на другую ветку.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        branch_name: Ветка, на которую переключаемся.
        apply_to_workspace: Применить состояние ветки к рабочему пространству.
    
checkout_commitC

Переключить схему на конкретный коммит в ветке.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        branch_name: Ветка (по умолчанию main).
        commit_id: Числовой ID коммита.
        commit_uuid: UUID коммита.
    
reset_branchB

Сбросить ветку до указанного коммита.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        branch_name: Ветка (по умолчанию main).
        target_commit_id: Числовой ID целевого коммита.
        target_commit_uuid: UUID целевого коммита.
        mode: Режим сброса: soft или hard.
        force: Принудительный сброс.
    
merge_branchesB

Слить исходную ветку в целевую.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        source_branch: Ветка-источник.
        target_branch: Целевая ветка.
        message: Сообщение merge-коммита.
        delete_source_branch: Удалить исходную ветку после слияния.
    
get_branch_migrationA

Получить SQL-миграцию между базовым и текущим коммитом ветки.

    Args:
        project_uuid: UUID проекта.
        schema_uuid: UUID схемы.
        branch_name: Ветка (по умолчанию main).
    
get_commit_dagA

Получить направленный граф коммитов проекта (историю изменений).

    Args:
        project_uuid: UUID проекта.
        limit: Максимальное количество коммитов (по умолчанию 200).
    
set_default_branchC

Сделать ветку веткой по умолчанию в проекте.

    Args:
        project_uuid: UUID проекта.
        branch_name: Имя ветки.
        is_default: Статус ветки по умолчанию.
    
get_data_sourceC

Получить привязку проекта к агенту-источнику данных.

    Args:
        project_uuid: UUID проекта.
    
set_data_sourceA

Привязать проект к агенту-источнику данных (Structly Agent).

    Args:
        project_uuid: UUID проекта.
        agent_uuid: UUID агента (реальная PostgreSQL-база).
        schema_uuid: UUID схемы проекта, в которую импортируются данные.
        is_active: Активна ли привязка.
    
delete_data_sourceC

Удалить привязку проекта к агенту-источнику данных.

    Args:
        project_uuid: UUID проекта.
    
test_connectionA

Запустить проверку подключения агента к базе данных.

    Args:
        project_uuid: UUID проекта.
        agent_uuid: UUID агента.
        agent_database_uuid: UUID базы данных в агенте.
        agent_schema_uuid: UUID схемы в агенте (для one_schema).
        import_scope: Область импорта: one_schema или whole_database.
        import_mode: Режим импорта: replace или merge.
    
list_sync_jobsC

Получить список задач синхронизации (sync-jobs) проекта.

    Args:
        project_uuid: UUID проекта.
    
create_sync_jobA

Создать задачу синхронизации структуры базы через агента.

    Args:
        project_uuid: UUID проекта.
        agent_uuid: UUID агента.
        agent_database_uuid: UUID базы данных в агенте.
        target_schema_uuid: UUID схемы проекта, куда импортировать.
        agent_schema_uuid: UUID схемы в агенте (для one_schema).
        import_scope: Область импорта: one_schema или whole_database.
        import_mode: Режим импорта: replace или merge.
        branch_name: Ветка, в которую вносятся изменения.
    
get_sync_jobC

Получить статус и детали задачи синхронизации.

    Args:
        project_uuid: UUID проекта.
        job_uuid: UUID задачи синхронизации.
    
import_sql_into_schemaA

Импортировать SQL DDL в схему: создаст таблицы, колонки и связи.

    Поддерживает полный PostgreSQL DDL. Схема для импорта должна уже
    существовать.

    Args:
        schema_uuid: UUID схемы, в которую импортируется SQL.
        sql: Текст SQL DDL (CREATE TABLE, ALTER TABLE, FK и т.д.).
        branch_name: Ветка, в которую вносятся изменения (по умолчанию main).
    

Prompts

Interactive templates invoked by user choice

NameDescription
create_projectСоздать новый проект Structly.
design_schemaСпроектировать схему базы данных по описанию.
modify_schemaВнести изменения в существующую схему по описанию.

Resources

Contextual data attached and managed by the client

NameDescription
projects_resourceВсе проекты, доступные пользователю Structly.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/StructlyOfficial/MCP-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server