Skip to main content
Glama
Gnidreve

Genesis-World-MCP

by Gnidreve

cas-genesisworld-mcp

npm Docker CI License: MIT

Подключите Claude, Cursor или любого MCP-совместимого AI-агента к вашей CRM CAS genesisWorld. Ищите контакты, управляйте задачами и встречами, читайте и записывайте записи — через естественный язык, без написания ни одного API-вызова.

  • 69 инструментов, включая 7 нативных флоу, которые объединяют многошаговые операции CRM (например, проверку конфликтов расписания перед бронированием встречи или проверку дубликатов перед созданием контакта) в один вызов.

  • Полный доступ на чтение и запись к задачам, контактам, встречам, документам, спискам рассылки и многому другому — плюс универсальный доступ к любому типу пользовательских объектов, определённых в вашей установке.

  • Режим только для чтения для безопасного исследовательского использования.

  • Поставляется в виде готового Docker-образа или npm-пакета.

Быстрый старт

Добавьте это в конфиг вашего MCP-клиента (например, в claude_desktop_config.json у Claude Desktop):

{
  "mcpServers": {
    "cas-genesisworld": {
      "command": "npx",
      "args": ["-y", "cas-genesis-world-mcp"],
      "env": {
        "GENESISWORLD_BASE_URL": "http://your-genesisworld-server/genesisrest.svc",
        "GENESISWORLD_PRODUCT_KEY": "your-product-key",
        "GENESISWORLD_USERNAME": "your-username",
        "GENESISWORLD_PASSWORD": "your-password"
      }
    }
  }
}

Перезапустите клиент — инструменты появятся автоматически. Попросите агента найти контакт, вывести список открытых задач или забронировать встречу — и он сделает всё остальное.

Предпочитаете постоянный, самостоятельно размещённый сервер вместо отдельного процесса на каждый клиент? См. Самостоятельное размещение с Docker ниже.

Related MCP server: Cleyrop MCP

Что можно у него попросить

После подключения ваш агент сможет обрабатывать запросы вроде:

  • «Найди контактные данные Джейн Доу и покажи её открытые задачи.»

  • «Создай задачу на последующие действия для этого лида и привяжи её к записи контакта.»

  • «Забронируй встречу с отделом продаж на следующий вторник в 10:00 — сначала проверь календари всех на конфликты.»

  • «Проверь возможные дубликаты перед созданием нового контакта для Acme Corp.»

  • «Сформируй отчёт по этой возможности.»

На такие запросы отвечают флоу — одиночные вызовы инструментов, которые объединяют многошаговую последовательность API-запросов, которую человеку в противном случае пришлось бы писать вручную.

Инструменты и флоу

Флоу — составные действия, один вызов на каждое

Флоу

Режим

Что делает

my_open_tasks

чтение

Текущий пользователь + его список задач (окно сроков, сохранённое представление или полнотекстовый фильтр) одним вызовом

task_overview

чтение

Запись задачи + ссылки + теги, получаемые параллельно

create_task

запись

Создать задачу и при необходимости связать её с другим объектом (например, контактом)

find_contact

чтение

Поиск контакта по имени и/или номеру телефона, параллельно

contact_360

чтение

Контакт + досье коллекции + теги + ссылки, получаемые параллельно

create_address_safe

запись

Сначала проверка дубликатов — создаёт только если кандидатов не найдено

create_appointment_safe

запись

Необязательная проверка конфликтов → создание → добавление участников, одним вызовом

Чтение (39)

Инструмент

Конечная точка

smart_search

GET /v7.0/smartsearch

get_data_object

GET /v7.0/type/{dataObjectType}/{dataObjectGGUID}

get_dossier

GET /v7.0/type/{dataObjectType}/{dataObjectGGUID}/dossier/full

list_data_objects

GET /v7.0/type/{dataObjectType}/list

list_views

GET /v7.0/type/{dataObjectType}/view/list

list_data_objects_by_view

GET /v7.0/type/{dataObjectType}/view/{viewID}/list

list_available_data_object_types

GET /v7.0/user/self/dataobjecttypepermission/list

get_data_object_types_metadata

GET /v7.0/metadata

list_links

GET /v7.0/type/{dataObjectType}/{dataObjectGGUID}/link/list

list_recent_data_objects

GET /v7.0/type/{dataObjectType}/recent/list

get_available_products

GET /v7.0/type/gwopportunity/availableproducts

get_data_object_count

GET /v7.0/type/{dataObjectType}/count

get_primary_link_parents

GET /v7.0/type/{dataObjectType}/{dataObjectGGUID}/primarylinkparents

list_users

GET /v7.0/user/list

get_user_self

GET /v7.0/user/self

get_view

GET /v7.0/type/{dataObjectType}/view/{viewID}

list_tags

GET /v7.0/tags

get_object_tags

GET /v7.0/type/{dataObjectType}/{dataObjectGGUID}/tags

get_full_data_objects

GET /v7.0/type/{dataObjectType}/full

list_data_objects_by_view_full

GET /v7.0/type/{dataObjectType}/view/{viewID}/full

get_data_objects_bulk

POST /v7.0/type/{dataObjectType}/records (чтение, несмотря на POST)

get_ticket_service_agreements

GET /v7.0/type/task/ticket/serviceagreements

get_vcard

GET /v7.0/type/address/{dataObjectGGUID}/vcard

get_salutation

POST /v7.0/type/address/salutation (чтение, несмотря на POST)

format_phone_number

POST /v7.0/type/address/formatphonenumber (чтение, несмотря на POST)

check_appointment_conflicts

GET /v7.0/type/appointment/conflicts

get_participant_summary

GET /v7.0/type/appointment/{gguid}/participant/summary

list_appointment_participants

GET /v7.0/type/appointment/{gguid}/participant/full

get_document_file

GET /v7.0/type/document/{gguid}/file (никогда не блокирует)

list_document_versions

GET /v7.0/type/document/{gguid}/file/version/list

list_email_attachments

GET /v7.0/type/emailstore/{gguid}/attachment/list

get_email_attachment

GET /v7.0/type/emailstore/{gguid}/attachment/{attachmentId}

get_email_file

GET /v7.0/type/emailstore/{gguid}/file

list_object_permissions

GET /v7.0/type/{t}/{gguid}/permission/full

list_distributions

GET /v7.0/type/gwdistribution/list

list_distribution_addresses

GET /v7.0/type/gwdistribution/{distributionGuid}/address/list

list_report_templates

GET /v7.0/type/report/template/{templateType}

generate_report

POST /v7.0/type/report/template/{templateGGUID} (чтение, несмотря на POST — рендерит, не изменяет)

readme (форма инструмента)

серверный локальный статический ориентационный документ

Запись (23 — скрыты в режиме только для чтения, вместе с флоу записи выше)

Инструмент

Конечная точка

create_data_object

POST /v7.0/type/{dataObjectType}

update_data_object

PUT /v7.0/type/{dataObjectType}/{dataObjectGGUID}

delete_data_object

DELETE /v7.0/type/{dataObjectType}/{dataObjectGGUID}

restore_data_object

POST /v7.0/type/{dataObjectType}/rbin/undelete

create_link

POST /v7.0/type/{dataObjectType}/{dataObjectGGUID}/link

delete_link

DELETE /v7.0/type/{t}/{gguid}/link/{objecttype2}/{guid2}/{attribute}

set_object_tags

POST /v7.0/type/{dataObjectType}/{dataObjectGGUID}/tags/user

append_notes

POST /v7.0/type/{t}/{gguid}/notes/{fieldName}

create_dossier_entry

POST /v7.0/type/{dataObjectType}/{dataObjectGGUID}/dossier

delete_dossier_entry

DELETE /v7.0/type/{t}/{gguid}/dossier/{dossierEntryGGUID}

set_contact_persons_active

POST /v7.0/type/address/{gguid}/contactperson/activate|deactivate

add_appointment_participant

POST /v7.0/type/appointment/{gguid}/participant

remove_appointment_participant

DELETE /v7.0/type/appointment/{gguid}/participant/{participantGGUID}

set_recurrence

POST /v7.0/type/{t}/recurrence / PUT …/recurrence/{periodGuid}

delete_recurrence

DELETE /v7.0/type/{t}/recurrence/{periodGuid}

set_alarm

PUT /v7.0/type/{t}/{gguid}/alarm/self

delete_alarm

DELETE /v7.0/type/{t}/{gguid}/alarm/self

set_object_permission

POST /v7.0/type/{t}/{gguid}/permission

delete_object_permission

DELETE /v7.0/type/{t}/{gguid}/permission/{permissionGGUID}

add_distribution_addresses

POST /v7.0/type/gwdistribution/{distributionGuid}/address

remove_distribution_address

DELETE /v7.0/type/gwdistribution/{distributionGuid}/address/{addressGGUID}

convert_lead

POST /v7.0/type/gwsllead/{dataObjectGGUID}/convert

recalculate_opportunity_positions

PUT /v7.0/type/gwopportunitypos/recalculatevalues

Полный вышестоящий API, на котором это построено, зафиксирован в swagger.json.

Ресурсы

Помимо инструментов, сервер предоставляет ресурсы MCP для данных, которые редко меняются, чтобы ваш агент не тратил вызовы инструментов на повторное обнаружение их в каждой сессии:

  • genesisworld://readme — статический ориентирующий документ для самого агента (доменная модель, паттерны навигации, правила эффективности).

  • genesisworld://types — типы объектов данных, доступные пользователю, с правами доступа. Кэшируется 15 мин.

  • genesisworld://metadata/{objectType} — схема полей/связей одного типа, например genesisworld://metadata/ADDRESS. Кэшируется 15 мин.

  • genesisworld://views/{objectType} — сохранённые представления одного типа, например genesisworld://views/TASK. Кэшируется 15 мин.

Самостоятельное развёртывание с Docker

Для постоянного сервера, на который могут указывать несколько клиентов (вместо одного процесса npx на каждого клиента):

docker run -d --name cas-genesisworld-mcp -p 8084:3000 \
  -e GENESISWORLD_BASE_URL="http://your-genesisworld-server/genesisrest.svc" \
  -e GENESISWORLD_PRODUCT_KEY="your-product-key" \
  -e GENESISWORLD_USERNAME="your-username" \
  -e GENESISWORLD_PASSWORD="your-password" \
  vaatu/cas-genesis-world-mcp

# Read-only mode: append --read-only after the image name
docker run -d --name cas-genesisworld-mcp -p 8084:3000 \
  -e GENESISWORLD_BASE_URL="http://your-genesisworld-server/genesisrest.svc" \
  -e GENESISWORLD_PRODUCT_KEY="your-product-key" \
  -e GENESISWORLD_USERNAME="your-username" \
  -e GENESISWORLD_PASSWORD="your-password" \
  vaatu/cas-genesis-world-mcp --read-only

Мультитенантный режим: один сервер, много учётных записей genesisWorld

По умолчанию контейнер имеет одну фиксированную учётную запись genesisWorld для всех подключающихся клиентов. С --client-credentials у него нет ни одной — каждый клиент аутентифицируется самостоятельно, поэтому один сервер может безопасно обслуживать несколько человек/команд с разными логинами genesisWorld:

docker run -d --name cas-genesisworld-mcp -p 8084:3000 \
  -e GENESISWORLD_BASE_URL="http://your-genesisworld-server/genesisrest.svc" \
  vaatu/cas-genesis-world-mcp --client-credentials

Затем каждый клиент при подключении отправляет свои собственные учётные данные в заголовках:

{
  "mcpServers": {
    "cas-genesisworld": {
      "url": "http://localhost:8084/mcp",
      "headers": {
        "X-GenesisWorld-Username": "your-username",
        "X-GenesisWorld-Password": "your-password"
      }
    }
  }
}

Заголовок X-GenesisWorld-Product-Key здесь необязателен — если вы оставите GENESISWORLD_PRODUCT_KEY заданным на сервере, клиенты, которые не указали собственный ключ продукта, используют его как запасной вариант. Только HTTP-транспорт (в stdio нет канала заголовков для отдельных запросов); запрос без обоих заголовков — имени пользователя и пароля — отклоняется сразу (HTTP 401), и отката к общей учётной записи не происходит.

Конечная точка MCP теперь находится по адресу http://localhost:8084/mcp. Направьте на неё своего клиента:

{
  "mcpServers": {
    "cas-genesisworld": {
      "url": "http://localhost:8084/mcp"
    }
  }
}

Конфигурация

Два вида настроек, строго разделённых — ни одна настройка не является одновременно и тем и другим: Переменные окружения настраивают развёртывание (где живёт API, кто подключается); параметры запуска переключают поведение при старте.

Переменные окружения

Переменная

Обязательно

Назначение

GENESISWORLD_BASE_URL

да

Базовый URL REST-сервиса, например http://demo.cas.de/genesisrest.svc

GENESISWORLD_PRODUCT_KEY

да*

Отправляется как X-CAS-PRODUCT-KEY в каждом запросе

GENESISWORLD_USERNAME

да*

Пользователь Basic Auth

GENESISWORLD_PASSWORD

да*

Пароль Basic Auth

MCP_TRANSPORT

нет

http (по умолчанию в Docker) или stdio

MCP_HOST / MCP_PORT

нет

Адрес привязки для HTTP-режима (по умолчанию 0.0.0.0:3000)

GENESISWORLD_MAX_RESULT_CHARS

нет

Обрезает слишком большие ответы (по умолчанию 60000 символов; 0 отключает)

GENESISWORLD_QUIET

нет

true отключает журналирование каждого запроса в stderr

* Требуются на практике для успешного выполнения любого реального запроса — за исключением режима --client-credentials (см. ниже), когда у сервера нет собственной учётной записи и ни одна из этих трёх переменных не требуется.

Параметры запуска

Флаг

Обязательно

Назначение

--read-only

нет

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

--client-credentials

нет

Сервер не хранит фиксированную учётную запись genesisWorld; каждый HTTP-клиент аутентифицируется через заголовки запроса (см. «Мультитенантный режим» выше). Только HTTP-транспорт

Передавайте параметры запуска в командной строке или после имени образа в docker run (как показано выше). Ни один из них не имеет эквивалента среди переменных окружения — так задумано.

Лицензия

MIT


Хотите добавить инструмент или понять, как это устроено? См. AGENTS.md — документацию по архитектуре и для контрибьюторов, и ROADMAP.md — план проекта.

A
license - permissive license
Not graded
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
6dRelease cycle
2Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Read-only MCP server for the Daktela contact center REST API, providing 40 tools to access tickets, calls, emails, chats, contacts, CRM records, campaigns, and real-time agent status.
    45
    1
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Provides live Zoho CRM data access via MCP tools, enabling queries on modules, records, fields, and related lists without syncing data.
  • A
    license
    A
    quality
    B
    maintenance
    Enables MCP clients to read, search, create, update, and manage records in Twenty CRM with a safe, composable 14-tool interface and guarded destructive operations.
    14
    MIT

View all related MCP servers

Related MCP Connectors

  • Search, document and execute authenticated API calls across 700+ apps via one MCP server

  • Read-only MCP server for ClassQuill, a tutoring-business-management platform.

  • XFA's remote MCP server — query device posture, compliance, policies & CVEs. Read-only.

View all MCP Connectors

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/Gnidreve/Genesis-World-MCP'

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