SIGNLD
SIGNLD открывает ассистенту рабочее пространство с бизнес-данными, графом знаний и темами решений
Что умеет
- Выполнять SQL-запросы только на чтение по подключённым данным
- Строить график из результата запроса
- Читать и дополнять граф знаний бизнеса
- Сохранять дашборд для повторного использования
- Создавать и обновлять темы решений
Какие данные видит
Ассистент видит данные активного рабочего пространства пользователя и подключённые к нему бизнес-системы.
Нужен ли аккаунт
Не нужен: сервер работает без входа
SIGNLD даёт ассистенту доступ к подключённым бизнес-системам, графу знаний и темам решений внутри рабочего пространства. Вместо догадок о цифрах ассистент читает реальные данные, выполняет SQL-запросы только на чтение и отвечает через граф знаний, так что каждый ответ привязан к конкретным сущностям и метрикам бизнеса. Можно также строить график по запросу, сохранять дашборд и дополнять граф знаний.
Как подключить
Как подключить SIGNLD к Claude
Адрес сервера, который нужно вставить в настройках Claude:
https://signld--dashboard.run.tools
- Откройте Claude (сайт claude.ai или приложение для компьютера).
- Перейдите в Настройки → Коннекторы (в английском интерфейсе: Settings → Connectors).
- Нажмите Добавить пользовательский коннектор (Add custom connector).
- Вставьте адрес сервера, скопированный ниже, в поле URL удалённого MCP-сервера и нажмите Добавить.
- В чате нажмите + → Коннекторы и включите новый коннектор.
Пользовательские коннекторы доступны на тарифах Free, Pro, Max, Team и Enterprise. На Free можно добавить только один. В Team и Enterprise коннектор сначала добавляет владелец организации в Настройки организации → Коннекторы.
Авторизация
После нажатия Добавить откроется окно входа в сервис. Войдите под своим аккаунтом и подтвердите доступ. Пароль Claude не видит.
Как подключить SIGNLD к ChatGPT
Адрес сервера, который нужно вставить в настройках ChatGPT:
https://signld--dashboard.run.tools
- Откройте ChatGPT в браузере (chatgpt.com). Нужен тариф Plus, Pro, Business, Enterprise или Edu.
- Один раз включите режим разработчика: Настройки → Приложения → Дополнительные настройки → Режим разработчика (Settings → Apps → Advanced settings → Developer mode).
- Откройте Настройки → Коннекторы и нажмите Создать (Create).
- Заполните форму: Название (любое), Описание (одна фраза, что делает сервис), URL MCP-сервера (скопируйте ниже).
- В поле Аутентификация выберите OAuth, если сервис требует вход, иначе Нет. Нажмите Создать.
- В новом чате откройте + → Приложения/Коннекторы и включите коннектор.
Название раздела у OpenAI менялось (Connectors → Apps/Plugins). Если пункт называется иначе, ищите «режим разработчика» в настройках. В рабочих пространствах Business/Enterprise администратор должен разрешить пользовательские коннекторы.
Авторизация
При первом использовании ChatGPT откроет окно входа в сервис. Войдите и подтвердите доступ.
Как подключить SIGNLD к Cursor
Адрес сервера, который нужно вставить в настройках Cursor:
https://signld--dashboard.run.tools
Быстрый способ: нажмите кнопку Открыть в Cursor ниже, Cursor сам предложит добавить сервер.
Вручную:
- В Cursor откройте Settings → Cursor Settings → MCP и нажмите Add new global MCP server.
- Вставьте JSON, скопированный ниже, в открывшийся файл
~/.cursor/mcp.json(для одного проекта:.cursor/mcp.jsonв корне проекта). - Сохраните файл. Сервер появится в списке MCP; при необходимости пройдите авторизацию по кнопке рядом с ним.
Авторизация
Если сервис требует вход, рядом с сервером в списке MCP появится кнопка авторизации.
Список инструментов сервера (19)
Технические названия из tools/list. Нужны только разработчикам.
| list_workspaces | Lists the SIGNLD workspaces this user can access, marking the active one. All other tools operate on the active workspace. |
| select_workspace | Switches the active SIGNLD workspace for this user's MCP session. Takes effect from the next tool call. |
| get_guide | Returns SIGNLD's authoritative how-to guide. Call get_guide('sql') once per session BEFORE composing SQL that touches KG entities/metrics; 'kg-authoring' before any update_knowledge_graph; 'topics' before topic writes; 'charting' before building a dashboard. |
| list_connections | Lists workspace data connections (id, name, type). SQL source() macros require the connection ID, never the display name. Use get_connections_schema for tables and columns. |
| get_connections_schema | Returns table schemas for the requested connections as plain text. Format: header `SCHEMA: N connection(s), M table(s)`, then one section per connection prefixed with `## connection: <friendly name>` plus `id:` and `name:` lines when the friendly name differs from the canonical connection id (otherwise the header value IS the canonical id), and one sub-section per table prefixed with `# table: <name>` followed by `columns (K):` and one column per line ` <name> (<type>) [flags] - <description> [examples: ...]`. Use the friendly name when mentioning the connection to the user; use the canonical id verbatim in source() macros and tool calls. For large schemas (>50 tables) only column names are listed; use get_table_details for full column info. |
| get_table_details | Fetches detailed schema information for specific tables as plain text. Format: header `TABLE DETAILS: connection <friendly name>, N table(s)` plus `id:` and `name:` lines when the friendly name differs from the canonical connection id (otherwise the header value IS the canonical id), then one section per table prefixed with `# table: <name>` followed by optional `ai_title:`, `ai_description:`, `rowCount:` and `columns (K):` with one column per line ` <name> (<type>) [PK,unique,nullable] - <description> [examples: ...]`. Use the friendly name when mentioning the connection to the user; use the canonical id verbatim in source() macros and tool calls. Use this after get_connections_schema when you need column types, descriptions, examples, or constraints. |
| execute_sql | Runs one read-only DuckDB SQL query over workspace data. Reference tables ONLY as source('<connection_id>', '<table>'). KG-first: when the question involves business entities or metrics, resolve them via get_knowledge_graph / compile_kg_entity_spec and follow get_guide('sql') before writing SQL. Returns a markdown preview plus a tableId handle to the full persisted result (page through it with get_query_result). Raw DuckDB errors are returned verbatim — fix the SQL and retry (max 2 attempts per root cause). |
| create_chart | Prepares a SIGNLD chart from a previous execute_sql result: validates a SignldChartSpec, persists it, and returns the spec, chart-ready rows and EXACT server-computed widget aggregates (headline/delta/breakdown over the full result). Render the result as a self-contained artifact following get_guide('charting') — SIGNLD palette + widget layout. Author the spec per get_guide('charting'); every field must be a column of the tableId result. Use charts for trends, breakdowns, rankings and distributions; 'kpi' for a single headline number; skip charts for non-numeric lists. The user's explicit chart/table request always wins. |
| get_query_result | Fetches rows from a previous execute_sql result by tableId, paginated. Use when the preview was truncated and you need more rows. |
| get_knowledge_graph | Reads a slim overview of the workspace Knowledge Graph (nodes | edges | metrics | domainPalette as plain text). Call this FIRST at the start of any analytical task — the KG is the source of truth for entity and metric definitions and may have changed since your last call. Use get_kg_node_details for full entityRule/properties/formula. |
| get_kg_node_details | Returns full details (entityRule, properties, verification, formula, linkedNodes) for specific KG nodes and/or metrics by id. REQUIRED before any update that touches properties, linkedNodes, or a metric formula — array fields replace wholesale on save. |
| compile_kg_entity_spec | Load a Knowledge Graph entity (node, edge, or metric) and return its business description — name, label, type, description, properties, and the full `entityRule` markdown. This tool: 1. Looks up the entity in the Knowledge Graph by id or name 2. Returns the entity's description block plus the raw `entityRule` (business rules, source table references via `source('<connId>', '<table>')` macros, joins, filters, variants — whatever the rule author captured) The returned spec does NOT bundle column-level schema. When you need real column names, types, or examples to compose SQL, call `get_connections_schema` separately for the connections referenced in the entityRule. Use this tool whenever you need to query data for a KG entity: read the entityRule for the business logic and source table refs, then fetch schema with `get_connections_schema` for those tables before writing SQL. |
| update_knowledge_graph | Upserts Knowledge Graph elements by id: send only what you add or change; omitted elements are preserved, omitted fields are preserved, but ARRAY fields (properties, linkedNodes) REPLACE wholesale — load current values via get_kg_node_details first. Metrics require formula. Persist definitions and rules, never query-result snapshots — see get_guide('kg-authoring'). Titles ≤100 chars, descriptions ≤160. |
| delete_knowledge_graph_node | Deletes a knowledge graph node by id and cleans up dependent data: removes connected edges, removes metric linkedNodes references to this node, and removes topic knowledgeGraphEntities with the same node name. Requires explicit confirmation via confirmDelete=true before executing. |
| get_topics | Lists workspace topics (id TOP-NNN, title, description). Deterministic full list — filter or match topics yourself. |
| get_topic_details | Returns full details for specific topics by their IDs as plain text. Each topic is rendered as a section starting with `=== <id> ===` followed by `title:`, `description:`, `createdAt:`, `createdBy:`, `kgEntities:`, `kgMetrics:` lines and a `--- detail ---` block containing the markdown body. Use after get_topics to drill into topics you need to work with. |
| create_topic | Persists a topic to the workspace as early as possible — call this as soon as you recognize a topic, even with just a title. Supports batch-saving related data in a single call: knowledgeGraphEntities (real-world business objects) and knowledgeGraphMetrics (business metrics) can both be provided as arrays on creation. Fill in any remaining fields as the conversation progresses using update_topic. |
| update_topic | Updates a topic by id: send only fields that change, but knowledgeGraphEntities / knowledgeGraphMetrics arrays REPLACE wholesale — load the current topic via get_topic_details first and send complete arrays. See get_guide('topics'). |
| save_dashboard | Saves a complete standalone HTML dashboard page (all styles/scripts/data embedded; Tailwind + Chart.js CDNs allowed — see get_guide('charting')). Returns the dashboard id and a view URL for signed-in workspace members. |