Skip to main content

Cognigy AI agent demo builder MCP server

Project description

cognigy-vibe-mcp

A local Python MCP server for building Cognigy AI agent demos with Claude Code. Covers the full Cognigy REST API surface — node creation, flow inspection, code push with conflict detection, session testing, and a 20-topic reference library.

Part of the cognigy-claude-plugin.

Installation

uv tool install cognigy-vibe-mcp                        # stable
uv tool install cognigy-vibe-mcp --prerelease allow     # latest prerelease

Quick start

In your demo project directory, run the cognigy:init-mcp skill in Claude Code. It will:

  1. Create ~/.config/cognigy-mcp/<project-id>/ for state and cache
  2. Write the MCP server entry to .mcp.json

Restart Claude Code. If credentials aren't configured yet, the server starts in degraded mode — all tools are visible but every call returns setup guidance until you create a .env. Once the file exists, retry the same tool call and it executes immediately without restarting.

Once connected, call sync_remote_state to populate state from your Cognigy project.

Manual configuration

Add to .mcp.json at your project root:

{
  "mcpServers": {
    "cognigy-vibe": {
      "command": "uvx",
      "args": ["cognigy-vibe-mcp"]
    }
  }
}

Credentials are read from a .env file in the project root (see Environment variables below). If no .env exists, the server starts in degraded mode — all tools are visible but calls return setup guidance until credentials are configured.

Environment variables

Variable Required Default Description
COGNIGY_BASE_URL Yes Cognigy API base URL (e.g. https://cognigy-api-au1.nicecxone.com)
COGNIGY_API_KEY Yes API key from Cognigy UI → My Profile → API Keys
COGNIGY_PROJECT_ID No Default project; can be set later via sync_remote_state
COGNIGY_VIBE_RESYNC_HOURS No 4 Hours of idle before auto-resync
COGNIGY_VIBE_CACHE_TTL No 300 Resource cache TTL in seconds
COGNIGY_VIBE_DEV No Set to 1 to enable dev mode (requires credentials configured)
COGNIGY_VIBE_SOURCE_DIR No Absolute path to cognigy-mcp/; required when COGNIGY_VIBE_DEV=1

Startup modes

The server selects a mode at startup based on the .env file in the project root:

Condition Mode Tools available
COGNIGY_BASE_URL or COGNIGY_API_KEY missing Degraded Full tool set (calls return setup guidance)
Both present, COGNIGY_VIBE_DEV absent Production Full tool set
Both present, COGNIGY_VIBE_DEV=1 Dev Full tool set + reload_mcp

In degraded mode every tool call returns guidance on creating .env with the correct credentials. Once the file exists, retry the same call — the server restarts to production mode and returns the real response immediately.

Dev mode spawns the inner server from COGNIGY_VIBE_SOURCE_DIR via uv run. After editing source files, call reload_mcp to respawn from updated code in the same Claude session.

Tools

State & sync

Tool Description
sync_remote_state Wipe cache and repopulate from Cognigy remote
get_build_state Return name→ID mappings (filterable by resource_type)
resolve_resource Fast name→ID lookup from local state (no API call)

Flow operations

Tool Description
cognigy_get GET any resource, cache-first
cognigy_list List resources; singular/plural resource_type both accepted
cognigy_create POST resource; extension auto-injected, Say config auto-normalised
cognigy_update PATCH with always-fresh GET + optional deep merge
cognigy_delete DELETE any resource including nodes
cognigy_invoke Named operations: move, clone, train, inject, search
get_flow_chart Chart with relations array + readable hierarchy string

File push

Tool Description
push_code_node Push local .js/.ts to a code node with conflict detection
push_html_node Push local .html to a setHTMLAppState node
push_agent_tool Create or update a file-backed aiAgentJobTool from a .tool.json

Testing

Tool Description
talk_to_agent Send a message to a flow via REST endpoint

Guidance

Tool Description
explain 20-topic reference library (see below)

Dev

Tool Mode Description
reload_mcp Dev only Respawn the inner server from local source after file edits

explain topics

Call explain() for an overview. Call explain("topic") for full details.

node-positioning · node-wiring · agent-tool-branch · node-config-update · flow-chart-reading · tool-conditions · two-pass-confirm · turn-structure · xapp-delivery · cognigyScript · code-node-patterns · voice-gateway · outbound-trigger · knowledge-store · endpoint-config · function-execution · session-injection · extension-map · node-types · mcp-comparison

Topics are front-loaded in the tool description — no tool call needed to see what's available.

Key behaviours

  • Extension auto-injectioncognigy_create injects extension for all known node types: @cognigy/voicegateway2 for setSessionConfig/hangup, cognigy-ai-agent for AI agent nodes, cxone-utils for xApp nodes
  • Say node normalisationconfig: { text: "Hello" } is automatically wrapped into the full config.say.text envelope
  • Conflict detectionpush_code_node snapshots the last-pushed content and blocks if the Cognigy UI has been edited since
  • Auto-resync — sessions idle longer than the threshold are silently re-synced before the next tool call
  • Atomic writes — state and cache files use write-to-tmp-then-replace to survive process interrupts
  • Graceful degraded mode — server always starts; missing credentials surface the init tool instead of crashing

Development

git clone https://github.com/ben-elliot-nice/cognigy-claude-plugin
cd cognigy-claude-plugin/cognigy-mcp
uv sync --extra dev
uv run pytest tests/ -v

To develop against local source with hot-reload, add to your project .env (credentials must be configured first):

COGNIGY_VIBE_DEV=1
COGNIGY_VIBE_SOURCE_DIR=/absolute/path/to/cognigy-claude-plugin/cognigy-mcp

Then ask Claude to call reload_mcp after editing source files — the server respawns from updated code without a terminal restart.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cognigy_vibe_mcp-1.7.0rc3.tar.gz (115.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cognigy_vibe_mcp-1.7.0rc3-py3-none-any.whl (61.0 kB view details)

Uploaded Python 3

File details

Details for the file cognigy_vibe_mcp-1.7.0rc3.tar.gz.

File metadata

  • Download URL: cognigy_vibe_mcp-1.7.0rc3.tar.gz
  • Upload date:
  • Size: 115.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cognigy_vibe_mcp-1.7.0rc3.tar.gz
Algorithm Hash digest
SHA256 77d628426323ac10ee9086b0af3cf241ddb2582dc631d396cf2452462e76c1d3
MD5 3da039fef90eabc57d9cd41b89720f6a
BLAKE2b-256 82db8ee515b26e82ce70c822686e2b1ef08eb8e02381a0e3ccd26257e5d04b75

See more details on using hashes here.

File details

Details for the file cognigy_vibe_mcp-1.7.0rc3-py3-none-any.whl.

File metadata

  • Download URL: cognigy_vibe_mcp-1.7.0rc3-py3-none-any.whl
  • Upload date:
  • Size: 61.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for cognigy_vibe_mcp-1.7.0rc3-py3-none-any.whl
Algorithm Hash digest
SHA256 6560093749785139567b7cd2f704be31188491b41b70573f7807b9a64cf9fee5
MD5 08c49b7c13be8199fe7fa1f36ffa0436
BLAKE2b-256 aebcb516b615cd505f6d98541cec28c2833ea26cf3a6569d7d47f5009de179cb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page