MCP для AI-клиентов¶
У каждой установки есть Streamable HTTP MCP по адресу <ваш-адрес>/mcp. Он использует того же пользователя Keycloak, что клиентский кабинет. MCP-клиент открывает вход через Authorization Code + PKCE и получает отдельный access token; копировать токен из браузера не нужно.
Параметры подключения¶
| Поле | Значение |
|---|---|
| MCP URL | https://data.example.com/mcp |
| Authorization server | https://data.example.com/auth/realms/forsell |
| Client ID | forsell-mcp |
| OAuth flow | Authorization Code + PKCE S256 |
| Redirect | Loopback 127.0.0.1 или localhost, путь пустой или /callback |
MCP-клиент должен уметь задавать статический client_id. Автоматическая регистрация внешних клиентов пока не включена. Если выбранная программа требует dynamic client registration или Client ID Metadata Document, проверьте совместимость перед подключением.
Инструменты¶
| Инструмент | Что делает |
|---|---|
list_datasets |
Показывает только разрешённые схемы, наборы и колонки |
get_dataset_mapping |
Показывает структуру одного разрешённого набора |
search_dataset |
Возвращает страницу результатов по JSON DSL |
count_dataset |
Подсчитывает строки по фильтру |
Начните с list_datasets, затем запросите get_dataset_mapping и только после этого стройте фильтр. Структура включает необязательные человекочитаемые label и schema_label; для аргументов инструментов используйте технические имена. query_json у инструментов поиска и подсчёта — строка с JSON, например {"query":{"term":{"product":"Coffee"}},"fields":["product"],"sort":[{"id":"desc"}],"size":10}. MCP публикует встроенные ресурсы forsellbase://guide/overview, /query-language и /access с инструкциями для агентов.
MCP проверяет JWT и передаёт токен пользователя в Go core, который снова проверяет право на конкретный набор. У MCP нет отдельного технического токена для чтения данных. Метаданные OAuth доступны по /.well-known/oauth-protected-resource/mcp.