# io.github.TsvetanG2/cognigy-ai-mcp-management-server (npm · cognigy-ai-mcp-management-server)

MCP server for Cognigy.AI - 132 tools to build, configure & operate conversational AI agents

- Trust score: 66/100 (medium)
- Change this week: +5
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `cognigy-ai-mcp-management-server`: 66/100 (this document), [markdown](https://verifymcp.io/servers/tsvetang2-cognigy-ai-mcp-management-server/cognigy-ai-mcp-management-server.md), [page](https://verifymcp.io/servers/tsvetang2-cognigy-ai-mcp-management-server/cognigy-ai-mcp-management-server)

## Channel facts

- Registry: `npm`
- Package: `cognigy-ai-mcp-management-server`
- Version: `0.1.4`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-03.

- **Supply Chain Security**: 86/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (94 of 98), so this covers what we could see, not the whole tree.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 6 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 79/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 14859 tokens (~107/item across 138 items; 138 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add tsvetang2-cognigy-ai-mcp-management-server -- npx -y cognigy-ai-mcp-management-server
```

### Codex

```bash
codex mcp add tsvetang2-cognigy-ai-mcp-management-server -- npx -y cognigy-ai-mcp-management-server
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "tsvetang2-cognigy-ai-mcp-management-server": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "cognigy-ai-mcp-management-server"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add tsvetang2-cognigy-ai-mcp-management-server --command npx --arg -y --arg cognigy-ai-mcp-management-server
```

### Hermes

```yaml
mcp_servers:
  tsvetang2-cognigy-ai-mcp-management-server:
    command: "npx"
    args: ["-y", "cognigy-ai-mcp-management-server"]
```

### Other

```json
{
  "mcpServers": {
    "tsvetang2-cognigy-ai-mcp-management-server": {
      "command": "npx",
      "args": [
        "-y",
        "cognigy-ai-mcp-management-server"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-03 (score 66, +38)

- [security improvement] Known CVEs: unverified → partial
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Dependency health: unverified → partial

### 2026-08-02 (score 28, −26)

- [security regression] Known CVEs: partial → unverified
- [security improvement] Malware scan: unverified → pass
- [security] Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet.
- [functional regression] Dependency health: partial → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional regression] Capabilities: pass → unverified
- [functional] First check of Schema quality: unverified

### 2026-08-01 (score 54, +18)

- [security regression] Provenance: unverified → fail
- [security improvement] GHSA-frvp-7c67-39w9 no longer affects this package
- [security improvement] Install scripts: unverified → pass
- [security improvement] Known CVEs: unverified → partial
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] License: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional] Licence: MIT

### 2026-07-31 (score 36, −5)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-28 (score 41, −20)

- [security regression] Install scripts: pass → unverified
- [security regression] Known CVEs: fail → unverified
- [security regression] Provenance: fail → unverified
- [security improvement] GHSA-frvp-7c67-39w9 no longer affects this package
- [functional regression] Maintenance: pass → unverified
- [functional regression] Dependency health: partial → unverified
- [functional regression] License: pass → unverified
- [functional] Licence: MIT

### 2026-07-27 (score 61)

First indexed and scored.

## MCP tools (138)

### `list_projects` (~59 tokens)

Lists all Cognigy.AI projects accessible by your API key. Use this to discover available projects before working with flows, intents, or other resources.

Input parameters:

- `limit` (integer): Maximum number of projects to return (1-100, default 25)

### `list_flows` (~74 tokens)

Lists all flows in a Cognigy.AI project. Flows are conversation logic containers. Use this to discover flows before reading or modifying them.

Input parameters:

- `limit` (integer): Maximum number of flows to return (1-100, default 25)
- `projectId` (string, required): The project ID to list flows from

### `get_flow` (~53 tokens)

Gets detailed metadata about a specific Cognigy.AI flow. Returns flow configuration, locale info, and timestamps. Use this to inspect a flow before modifying it.

Input parameters:

- `flowId` (string, required): The flow ID to retrieve

### `get_flow_settings` (~57 tokens)

Gets the settings/configuration of a Cognigy.AI flow. Returns NLU settings, thresholds, and other flow-level configurations. Use this before updating flow settings.

Input parameters:

- `flowId` (string, required): The flow ID to retrieve settings for

### `get_latest_log_entries` (~109 tokens)

Gets the latest execution log entries from a Cognigy.AI project. Use this for debugging flow execution, viewing errors, or monitoring agent behavior.

Input parameters:

- `flowName` (string): Filter logs by flow name
- `limit` (integer): Maximum number of log entries to return (1-100, default 25)
- `projectId` (string, required): The project ID to retrieve logs from
- `type` (array): Filter by log level(s): debug, info, warn, error

### `get_nodes` (~89 tokens)

Lists all nodes in a Cognigy.AI flow. Nodes are the building blocks of conversation logic (Say, Question, If, Code, etc.). Use this to explore flow structure before reading specific nodes or modifying the flow.

Input parameters:

- `flowId` (string, required): The flow ID to list nodes from
- `limit` (integer): Maximum number of nodes to return (1-100, default 25)

### `get_node` (~88 tokens)

Gets detailed configuration of a specific node in a Cognigy.AI flow. Returns the node's type, label, config fields, and settings. Use this to inspect node behavior before modifying it.

Input parameters:

- `flowId` (string, required): The flow ID containing the node
- `localeId` (string): Optional locale ID for localized content
- `nodeId` (string, required): The node ID to retrieve

### `search_nodes` (~93 tokens)

Searches for nodes in a Cognigy.AI flow by text content. Finds nodes containing the search term in their configuration (messages, conditions, code, etc.). Use this to locate specific content within large flows.

Input parameters:

- `flowId` (string, required): The flow ID to search within
- `localeId` (string, required): The locale ID to search in
- `query` (string, required): The search text to find in node content

### `get_node_descriptors` (~74 tokens)

Gets all available node types (blueprints) that can be created in a Cognigy.AI flow. Returns node type definitions including their fields, appearance, and constraints. Use this to understand what nodes can be added to a flow.

Input parameters:

- `flowId` (string, required): The flow ID to get available node types for

### `list_intents` (~113 tokens)

Lists all intents in a Cognigy.AI flow. Intents are the NLU triggers that match user utterances to flow logic. Use this to explore NLU configuration before training or modifying intents.

Input parameters:

- `flowId` (string, required): The flow ID to list intents from
- `includeChildren` (boolean): Include child intents in the results
- `limit` (integer): Maximum number of intents to return (1-100, default 25)
- `localeId` (string): Optional locale ID for localized content

### `get_intent` (~89 tokens)

Gets detailed configuration of a specific intent in a Cognigy.AI flow. Returns the intent's conditions, rules, confirmation sentences, and settings. Use this to inspect NLU behavior before modifying.

Input parameters:

- `flowId` (string, required): The flow ID containing the intent
- `intentId` (string, required): The intent ID to retrieve
- `localeId` (string): Optional locale ID for localized content

### `list_endpoints` (~86 tokens)

Lists all endpoints in a Cognigy.AI project. Endpoints are channel connectors (Webchat, REST, Voice, etc.) that expose flows/agents to users. Use this to discover deployed channels.

Input parameters:

- `limit` (integer): Maximum number of endpoints to return (1-100, default 25)
- `projectId` (string, required): The project ID to list endpoints from

### `get_endpoint` (~53 tokens)

Gets detailed configuration of a specific Cognigy.AI endpoint. Returns channel settings, flow/agent binding, and runtime configuration. Use this to inspect endpoint behavior.

Input parameters:

- `endpointId` (string, required): The endpoint ID to retrieve

### `inject_context` (~90 tokens)

Injects context data into a Cognigy.AI session. Context is shared state accessible by flow nodes. Use this to set user data, preferences, or state before/during conversations.

Input parameters:

- `context` (object, required): The context object to inject (key-value pairs)
- `sessionId` (string, required): The session ID to inject context into
- `userId` (string, required): The user ID for the session

### `reset_context` (~97 tokens)

Resets the context for a Cognigy.AI session, clearing all stored state. Use this to start a fresh conversation or clear user data during testing.

Input parameters:

- `entrypoint` (string, required): The entrypoint (project or snapshot ID)
- `flowReferenceId` (string, required): The flow reference ID
- `sessionId` (string, required): The session ID to reset context for
- `userId` (string, required): The user ID for the session

### `get_conversations` (~71 tokens)

Gets conversations for specific contacts in a Cognigy.AI project. Returns conversation history including inputs, outputs, and metadata. Use this to analyze user interactions.

Input parameters:

- `contactIds` (array, required): Array of contact IDs to get conversations for
- `projectId` (string, required): The project ID to get conversations from

### `get_conversation` (~74 tokens)

Gets conversation details for a specific Cognigy.AI session. Returns all inputs/outputs, timestamps, and metadata for the session. Use this to analyze a complete conversation thread.

Input parameters:

- `projectId` (string): Optional project ID to scope the query
- `sessionId` (string, required): The session ID to get conversation for

### `get_transcript` (~100 tokens)

Assembles a human-readable transcript for a Cognigy.AI session. Shows the conversation flow between user and bot in chronological order. Use this for reviewing conversation quality or debugging.

Input parameters:

- `format` (string): Output format: 'full' includes all metadata, 'compact' shows just the conversation flow
- `projectId` (string): Optional project ID to scope the query
- `sessionId` (string, required): The session ID to get transcript for

### `list_snapshots` (~78 tokens)

Lists all snapshots in a Cognigy.AI project. Snapshots are versioned backups of project configuration used for deployment and rollback. Use this to see available versions.

Input parameters:

- `limit` (integer): Maximum number of snapshots to return (1-100, default 25)
- `projectId` (string, required): The project ID to list snapshots from

### `get_snapshot` (~53 tokens)

Gets detailed information about a specific Cognigy.AI snapshot. Returns name, description, hash, and packaging status. Use this to inspect a version before deployment.

Input parameters:

- `snapshotId` (string, required): The snapshot ID to retrieve

### `get_snapshot_resources` (~97 tokens)

Lists resources (flows, locales, NLU connectors, LLMs) contained in a Cognigy.AI snapshot. Use this to inspect what a snapshot contains before restoring or to compare versions.

Input parameters:

- `limit` (integer): Maximum number of resources to return (1-100, default 25)
- `resourceType` (string, required): Type of resources to list
- `snapshotId` (string, required): The snapshot ID to list resources from

### `list_tasks` (~74 tokens)

Lists async tasks in Cognigy.AI. Tasks track long-running operations like snapshot creation, training, and imports. Use this to monitor background job status.

Input parameters:

- `limit` (integer): Maximum number of tasks to return (1-100, default 25)
- `projectId` (string): Optional project ID to filter tasks

### `get_task` (~70 tokens)

Gets detailed status of a specific Cognigy.AI async task. Returns progress, status, and failure reason if applicable. Use this to poll long-running operations to completion.

Input parameters:

- `projectId` (string): Optional project ID to scope the query
- `taskId` (string, required): The task ID to retrieve

### `create_node` (~287 tokens)

Creates a new node in a Cognigy.AI flow. MUTATING: This modifies the flow. Use dryRun=true (default) to validate first. Nodes are the building blocks of conversation logic (Say, Question, If, Code, etc.).

Input parameters:

- `comment` (string): Developer comment/note for this node
- `config` (object): Node-specific configuration object. Structure depends on node type.
- `dryRun` (boolean): If true (default), validates the operation without creating the node. Set to false to actually create.
- `extension` (string): Extension ID if this is a custom extension node
- `flowId` (string, required): The flow ID where the node will be created
- `label` (string): Display label for the node in the flow editor
- `mode` (string): How to position the new node relative to target: append (after), prepend (before), appendChild/prependChild (as child), insertChildAt (at position), insertAfter, insertBefore
- `position` (integer): Position index when using insertChildAt mode
- `targetNodeId` (string, required): The ID of the target node relative to which this node will be positioned
- `type` (string, required): Node type (e.g., 'say', 'question', 'if', 'code', 'executeFlow'). Use get_node_descriptors to list available types.

### `update_node` (~198 tokens)

Updates an existing node in a Cognigy.AI flow. MUTATING: This modifies the node. Use dryRun=true (default) to validate first. Only provided fields are updated; others remain unchanged.

Input parameters:

- `analyticsLabel` (string): Label used in analytics reporting
- `comment` (string): New developer comment/note
- `config` (object): Node-specific configuration to update. Structure depends on node type. Only provided fields are updated.
- `dryRun` (boolean): If true (default), validates the operation without updating. Set to false to actually update.
- `flowId` (string, required): The flow ID containing the node
- `isDisabled` (boolean): Whether the node is disabled (skipped during execution)
- `label` (string): New display label for the node
- `localeId` (string): Locale ID if updating locale-specific content
- `nodeId` (string, required): The ID of the node to update

### `delete_node` (~116 tokens)

Deletes a node from a Cognigy.AI flow. MUTATING & DESTRUCTIVE: This permanently removes the node. Use dryRun=true (default) to validate first. Child nodes may also be affected.

Input parameters:

- `dryRun` (boolean): If true (default), validates the operation without deleting. Set to false to actually delete. WARNING: Deletion cannot be undone via API.
- `flowId` (string, required): The flow ID containing the node to delete
- `nodeId` (string, required): The ID of the node to delete

### `move_node` (~180 tokens)

Moves a node to a new position in a Cognigy.AI flow. MUTATING: This reorganizes the flow structure. Use dryRun=true (default) to validate first. Moving nodes affects execution order.

Input parameters:

- `dryRun` (boolean): If true (default), validates the operation without moving. Set to false to actually move the node.
- `flowId` (string, required): The flow ID containing the node
- `mode` (string, required): How to position relative to target: append (as next sibling), prepend (as previous sibling), insertChildAt (as child at position), insertAfter, insertBefore
- `nodeId` (string, required): The ID of the node to move
- `position` (integer): Position index when using insertChildAt mode
- `targetNodeId` (string, required): The ID of the target node to move relative to

### `generate_node_output` (~194 tokens)

Uses Cognigy's generative AI to create content for Say nodes. Generates either plain text messages or rich Adaptive Cards based on a natural language prompt. Returns content you can use with create_node or update_node.

Input parameters:

- `flowId` (string, required): The flow ID (used for context, e.g., persona settings)
- `generateContentLimit` (integer): Maximum number of text variations to generate (for text output type, 1-10)
- `lastOutput` (string): Previous generation result to refine or continue from
- `localeId` (string, required): The locale ID for language-appropriate generation
- `outputType` (string): Type of content to generate: 'text' for plain Say messages, 'adaptiveCard' for rich interactive cards
- `prompt` (string, required): Natural language description of what content to generate (e.g., 'greeting message for a banking bot', 'poll for scheduling a meeting')

### `create_intent` (~212 tokens)

Creates a new intent in a Cognigy.AI flow for NLU recognition. MUTATING: This modifies the flow. Use dryRun=true (default) to validate first. After creating, use train_intents to train the NLU model.

Input parameters:

- `condition` (string): CognigyScript condition for additional matching constraints
- `confirmationSentences` (array): Sentences used for intent confirmation
- `description` (string): Human-readable description of what this intent recognizes
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `exampleSentences` (array): Initial training sentences for the intent
- `flowId` (string, required): The flow ID where the intent will be created
- `isDisabled` (boolean): Whether the intent is disabled (won't match)
- `name` (string, required): Intent name (unique within the flow)
- `rules` (array): Additional rule patterns for matching
- `tags` (array): Tags for organizing intents

### `update_intent` (~227 tokens)

Updates an existing intent in a Cognigy.AI flow. MUTATING: This modifies the intent. Use dryRun=true (default) to validate first. After updating, call train_intents to retrain the NLU model.

Input parameters:

- `condition` (string): New CognigyScript condition
- `confirmationSentences` (array): New confirmation sentences (replaces existing)
- `description` (string): New description
- `disambiguationSentence` (string): Sentence shown when disambiguating between intents
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `flowId` (string, required): The flow ID containing the intent
- `intentId` (string, required): The ID of the intent to update
- `isDisabled` (boolean): Whether the intent is disabled
- `localeId` (string): Locale ID for locale-specific updates
- `name` (string): New intent name
- `rules` (array): New rule patterns (replaces existing)
- `tags` (array): New tags array (replaces existing)

### `delete_intent` (~119 tokens)

Deletes an intent from a Cognigy.AI flow. MUTATING & DESTRUCTIVE: This permanently removes the intent and its example sentences. Use dryRun=true (default) to validate first. After deleting, call train_intents to retrain.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete. WARNING: Deletion cannot be undone.
- `flowId` (string, required): The flow ID containing the intent
- `intentId` (string, required): The ID of the intent to delete

### `train_intents` (~184 tokens)

Trains the NLU model for a Cognigy.AI flow. MUTATING: This triggers model training. Use dryRun=true (default) to validate first. Training is async - this tool polls until completion or timeout.

Input parameters:

- `dryRun` (boolean): If true (default), validates without training. Set to false to actually train.
- `flowId` (string, required): The flow ID to train intents for
- `localeId` (string): Specific locale to train. If omitted, trains all locales.
- `mode` (string): Training mode: 'full' for complete retraining, 'quick' for incremental updates
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 2)
- `timeoutMs` (integer): Maximum time to wait for training to complete (5-300 seconds, default 60)

### `list_sentences` (~86 tokens)

Lists example sentences (training data) for a Cognigy.AI NLU intent. Use this to review training data quality before training.

Input parameters:

- `flowId` (string, required): The flow ID containing the intent
- `intentId` (string, required): The intent ID to list sentences for
- `limit` (integer): Maximum number of sentences to return (1-100, default 25)

### `create_sentence` (~134 tokens)

Creates a new example sentence for Cognigy.AI NLU intent training. MUTATING: This modifies the intent's training data. Use dryRun=true (default) to validate first. After creating, call train_intents to retrain.

Input parameters:

- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `flowId` (string, required): The flow ID containing the intent
- `intentId` (string, required): The intent ID to add the sentence to
- `localeId` (string, required): The locale ID for this sentence
- `text` (string, required): The example sentence text

### `generate_sentences` (~109 tokens)

Uses Cognigy AI to generate example sentences for an intent. The generated sentences are NOT automatically added - use create_sentence to add them. Useful for quickly expanding NLU training data.

Input parameters:

- `flowId` (string, required): The flow ID containing the intent
- `intentId` (string, required): The intent ID to generate sentences for
- `limit` (integer): Number of sentences to generate (5-20, default 5)
- `localeId` (string): Optional locale ID for locale-specific generation

### `list_playbooks` (~74 tokens)

Lists all playbooks in a Cognigy.AI project. Playbooks are automated test scenarios with steps and assertions for testing conversational flows.

Input parameters:

- `limit` (integer): Maximum number of playbooks to return (1-100, default 25)
- `projectId` (string, required): The project ID to list playbooks from

### `get_playbook` (~52 tokens)

Gets detailed Cognigy.AI playbook configuration including all steps and assertions. Use this to understand what a playbook tests before running it.

Input parameters:

- `playbookId` (string, required): The playbook ID to retrieve

### `run_playbook` (~187 tokens)

Runs a Cognigy.AI playbook test scenario against a flow. MUTATING: This executes test assertions. Use dryRun=true (default) to validate first. Returns pass/fail results with assertion details.

Input parameters:

- `dryRun` (boolean): If true (default), validates without running. Set to false to actually run the playbook.
- `entrypoint` (string, required): The snapshot or project ID to run against
- `flowId` (string, required): The reference ID of the flow to test
- `localeId` (string, required): The reference ID of the locale
- `playbookId` (string, required): The playbook ID to run
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `timeoutMs` (integer): Maximum time to wait for playbook completion (5-300 seconds, default 120)

### `list_playbook_runs` (~78 tokens)

Lists Cognigy.AI playbook run history showing pass/fail status, timestamps, and run metadata. Use this to review test results over time.

Input parameters:

- `limit` (integer): Maximum number of runs to return (1-100, default 25)
- `playbookId` (string, required): The playbook ID to list runs for

### `get_playbook_run` (~70 tokens)

Gets detailed results of a Cognigy.AI playbook run including step-by-step assertion outcomes. Use this to analyze test failures and debug conversation flows.

Input parameters:

- `playbookId` (string, required): The playbook ID
- `playbookRunId` (string, required): The playbook run ID to retrieve

### `generate_nlu_scores` (~115 tokens)

Scores a test utterance against a Cognigy.AI flow's trained NLU intents. Returns ranked intent matches with confidence scores. Use this to test NLU recognition before deployment.

Input parameters:

- `flowReferenceId` (string, required): The reference ID (UUID) of the flow to score against
- `localeReferenceId` (string, required): The reference ID (UUID) of the locale
- `projectId` (string, required): The project ID containing the flow
- `sentence` (string, required): The test utterance to score against trained intents

### `score_utterance` (~144 tokens)

Scores a test utterance against a Cognigy.AI flow's trained NLU intents. Returns the best matching intent with confidence score. Use this to quickly test if an utterance would be recognized correctly.

Input parameters:

- `flowId` (string, required): The flow ID to score against (will be converted to reference ID)
- `localeId` (string): Optional locale ID (will use flow's default if not provided)
- `projectId` (string, required): The project ID containing the flow
- `threshold` (number): Minimum score threshold to include in results (0-1, default 0.4)
- `utterance` (string, required): The test utterance to score

### `run_regression` (~169 tokens)

Runs all Cognigy.AI playbooks in a project as a regression test suite. MUTATING: This executes tests. Use dryRun=true (default) to preview. Returns pass/fail summary with failing playbooks highlighted.

Input parameters:

- `dryRun` (boolean): If true (default), lists playbooks without running. Set to false to actually run.
- `entrypoint` (string): Optional snapshot ID. If not provided, uses the project as entrypoint.
- `flowId` (string, required): The flow reference ID to test against
- `localeId` (string, required): The locale reference ID
- `projectId` (string, required): The project ID to run regression tests for
- `timeoutPerPlaybook` (integer): Timeout per playbook in ms (10-300 seconds, default 60)

### `audit_nlu` (~124 tokens)

Audits Cognigy.AI NLU quality for a flow. Identifies intents with too few training sentences, disabled intents, and optionally checks for overlapping intents. Use this before deployment to ensure NLU quality.

Input parameters:

- `checkOverlap` (boolean): If true, tests for overlapping intents using NLU scoring (slower)
- `flowId` (string, required): The flow ID to audit
- `minSentences` (integer): Minimum recommended sentences per intent (default 5)
- `projectId` (string): Required if checkOverlap=true - project ID for NLU scoring

### `create_snapshot` (~193 tokens)

Creates a snapshot of a Cognigy.AI project. Snapshots capture the entire project configuration (flows, intents, endpoints, etc.) for backup or deployment. MUTATING: Set dryRun=false to create. Async operation - polls until complete.

Input parameters:

- `description` (string): Optional description of what this snapshot contains or why it was created
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create the snapshot.
- `name` (string, required): Name for the snapshot (e.g., 'v1.0.0', 'pre-release-backup')
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `projectId` (string, required): The project ID to create a snapshot of
- `timeoutMs` (integer): Maximum time to wait for snapshot creation (5-600 seconds, default 120)

### `delete_snapshot` (~142 tokens)

Deletes a snapshot from a Cognigy.AI project. DESTRUCTIVE & IRREVERSIBLE: The snapshot and all its data will be permanently removed. Use dryRun=true (default) to validate first. Async operation.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete. WARNING: This is irreversible!
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 2)
- `snapshotId` (string, required): The snapshot ID to delete
- `timeoutMs` (integer): Maximum time to wait for deletion (5-300 seconds, default 60)

### `create_snapshot_download_link` (~66 tokens)

Creates a temporary download link for a Cognigy.AI snapshot. The link can be used to download the snapshot as a file for backup or transfer to another environment. Links are time-limited.

Input parameters:

- `snapshotId` (string, required): The snapshot ID to create a download link for

### `restore_snapshot` (~147 tokens)

Restores a snapshot to its Cognigy.AI project, replacing the current configuration. DESTRUCTIVE: Current project state will be overwritten with the snapshot's state. Use dryRun=true (default) to validate first. Async operation.

Input parameters:

- `dryRun` (boolean): If true (default), validates without restoring. Set to false to actually restore. WARNING: This replaces the current project configuration!
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `snapshotId` (string, required): The snapshot ID to restore
- `timeoutMs` (integer): Maximum time to wait for restore (5-600 seconds, default 180)

### `package_snapshot` (~137 tokens)

Packages a Cognigy.AI snapshot for download or transfer. Creates a downloadable package from the snapshot. Use create_snapshot_download_link after packaging to get the download URL. MUTATING: Set dryRun=false to package. Async operation.

Input parameters:

- `dryRun` (boolean): If true (default), validates without packaging. Set to false to actually package.
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `snapshotId` (string, required): The snapshot ID to package
- `timeoutMs` (integer): Maximum time to wait for packaging (5-600 seconds, default 120)

### `upload_snapshot_package` (~179 tokens)

Uploads a snapshot package file to a Cognigy.AI project. Use this to restore a previously downloaded snapshot or transfer a snapshot between environments. MUTATING: Set dryRun=false to upload. Async operation.

Input parameters:

- `dryRun` (boolean): If true (default), validates the file exists without uploading. Set to false to actually upload.
- `filePath` (string, required): Local file path to the snapshot package file (e.g., './snapshot.csnap' or 'C:/snapshots/backup.csnap')
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `projectId` (string, required): The target project ID to upload the snapshot package to
- `timeoutMs` (integer): Maximum time to wait for upload and processing (5-600 seconds, default 180)

### `list_packages` (~83 tokens)

Lists packages in a Cognigy.AI project. Packages are portable bundles of resources (flows, intents, etc.) that can be transferred between projects or environments.

Input parameters:

- `limit` (integer): Maximum number of packages to return (1-100, default 25)
- `projectId` (string): Project ID to list packages for. If omitted, lists all accessible packages.

### `get_package` (~43 tokens)

Gets detailed information about a Cognigy.AI package including its name, description, and contained resources.

Input parameters:

- `packageId` (string, required): The package ID to get details for

### `create_package` (~182 tokens)

Creates a package from selected resources in a Cognigy.AI project. Packages bundle flows, endpoints, and other resources for transfer between projects. MUTATING: Set dryRun=false to create. Async operation.

Input parameters:

- `description` (string): Optional description of the package
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `name` (string, required): Name for the package
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `projectId` (string, required): The project ID to create the package in
- `resourceIds` (array, required): Array of resource IDs to include in the package (flows, endpoints, etc.)
- `timeoutMs` (integer): Maximum time to wait for package creation (5-600 seconds, default 120)

### `delete_package` (~138 tokens)

Deletes a package from a Cognigy.AI project. DESTRUCTIVE & IRREVERSIBLE: The package will be permanently removed. Use dryRun=true (default) to validate first. Async operation.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete. WARNING: This is irreversible!
- `packageId` (string, required): The package ID to delete
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 2)
- `timeoutMs` (integer): Maximum time to wait for deletion (5-300 seconds, default 60)

### `merge_package` (~185 tokens)

Merges a package into a Cognigy.AI project, importing selected resources. Use localeMapping to map package locales to project locales. MUTATING: Set dryRun=false to merge. Async operation.

Input parameters:

- `dryRun` (boolean): If true (default), validates without merging. Set to false to actually merge. WARNING: This modifies the target project!
- `localeMapping` (array, required): Mapping of package locales to project locales
- `packageId` (string, required): The package ID to merge
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `resourceIds` (array, required): Array of resource IDs from the package to import
- `strategies` (array): Optional conflict resolution strategies per resource type
- `timeoutMs` (integer): Maximum time to wait for merge (5-600 seconds, default 180)

### `upload_package` (~155 tokens)

Uploads a package file to a Cognigy.AI project. Use this to import a previously downloaded package or transfer resources between environments. MUTATING: Set dryRun=false to upload. Async operation.

Input parameters:

- `dryRun` (boolean): If true (default), validates the file exists without uploading. Set to false to actually upload.
- `filePath` (string, required): Local file path to the package file
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `projectId` (string, required): The target project ID to upload the package to
- `timeoutMs` (integer): Maximum time to wait for upload and processing (5-600 seconds, default 180)

### `create_package_download_link` (~61 tokens)

Creates a temporary download link for a Cognigy.AI package. The link can be used to download the package file for backup or transfer. Links are time-limited.

Input parameters:

- `packageId` (string, required): The package ID to create a download link for

### `diff_snapshots` (~112 tokens)

Compares two Cognigy.AI snapshots and shows what changed (added, removed, modified resources). Useful for reviewing changes before deployment or understanding what a snapshot update will affect.

Input parameters:

- `resourceTypes` (array): Types of resources to compare. Supported: flow, nluconnector, locale, largeLanguageModel (default: all)
- `snapshotIdA` (string, required): The 'before' snapshot ID (base for comparison)
- `snapshotIdB` (string, required): The 'after' snapshot ID (what changed)

### `promote_snapshot` (~139 tokens)

Promotes a Cognigy.AI snapshot for deployment by packaging it and generating a download link. Use this to prepare a snapshot for transfer to another environment. MUTATING: Set dryRun=false to package. Async operation.

Input parameters:

- `dryRun` (boolean): If true (default), validates without packaging. Set to false to actually package and generate download link.
- `pollIntervalMs` (integer): How often to check task status (1-10 seconds, default 3)
- `snapshotId` (string, required): The snapshot ID to promote
- `timeoutMs` (integer): Maximum time to wait for packaging (5-600 seconds, default 180)

### `clone_flow` (~92 tokens)

Clones a Cognigy.AI flow within the same project. Creates an exact copy of the flow including all nodes, intents, and configurations. The cloned flow gets an auto-generated name. MUTATING: Set dryRun=false to clone.

Input parameters:

- `dryRun` (boolean): If true (default), validates without cloning. Set to false to actually clone.
- `flowId` (string, required): The flow ID to clone

### `list_connections` (~133 tokens)

Lists Cognigy.AI connections (external service integrations like databases, APIs, etc.). Connections store credentials securely. Use this to find available connections for a project or organization.

Input parameters:

- `filter` (string): Filter connections by name
- `limit` (number): Maximum number of connections to return (default: 25, max: 100)
- `projectId` (string): Filter connections by project ID. Omit for all accessible connections.
- `resourceLevel` (string): Scope: 'organisation' for global connections, 'project' for project-specific
- `skip` (number): Number of items to skip for pagination

### `get_connection` (~61 tokens)

Gets detailed information about a specific Cognigy.AI connection. Returns connection metadata and schema. NOTE: Secret values are REDACTED for security - this tool only shows field names, not actual credentials.

Input parameters:

- `connectionId` (string, required): The connection ID to retrieve

### `create_connection` (~150 tokens)

Creates a new Cognigy.AI connection for external service integration. Connections securely store credentials like API keys, passwords, and tokens. MUTATING: Set dryRun=false to create.

Input parameters:

- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `fields` (object): Connection field values as key-value pairs (e.g., { apiKey: '...', baseUrl: '...' })
- `name` (string, required): Name for the connection
- `projectId` (string, required): The project ID to create the connection in
- `type` (string, required): Connection type (from extension schema, e.g., 'http-basic-auth', 'api-key', etc.)

### `update_connection` (~102 tokens)

Updates an existing Cognigy.AI connection. Use this to change connection name or update credential values. MUTATING: Set dryRun=false to update.

Input parameters:

- `connectionId` (string, required): The connection ID to update
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `fields` (object): Connection field values to update as key-value pairs
- `name` (string): New name for the connection

### `delete_connection` (~80 tokens)

Deletes a Cognigy.AI connection. WARNING: This is destructive and cannot be undone. Flows using this connection will break. MUTATING: Set dryRun=false to delete.

Input parameters:

- `connectionId` (string, required): The connection ID to delete
- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.

### `list_llms` (~152 tokens)

Lists Cognigy.AI large language model configurations. LLMs are used for generative AI features like Knowledge AI, AI Agents, and node output generation. Shows provider, model type, and connection info.

Input parameters:

- `filter` (string): Filter LLMs by name
- `limit` (number): Maximum number of LLMs to return (default: 25, max: 100)
- `projectId` (string): Filter LLMs by project ID. Omit for all accessible LLMs.
- `resourceLevel` (string): Scope: 'organisation' for global LLMs, 'project' for project-specific
- `skip` (number): Number of items to skip for pagination

### `get_llm` (~53 tokens)

Gets detailed configuration of a specific Cognigy.AI large language model. Returns provider settings, model type, connection details, and fallback configuration.

Input parameters:

- `largeLanguageModelId` (string, required): The LLM ID to retrieve

### `create_llm` (~257 tokens)

Creates a new Cognigy.AI large language model configuration. LLMs power Knowledge AI, AI Agents, and generative features. Requires a connection with provider credentials. MUTATING: Set dryRun=false to create.

Input parameters:

- `connectionId` (string, required): The connection ID containing the provider credentials
- `description` (string): Description of the LLM's purpose
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `isDefault` (boolean): Set as the default LLM for the project
- `modelGroup` (string): Model group: 'chat' for conversational, 'completion' for text generation, 'embedding' for embeddings
- `modelType` (string, required): The model type (e.g., 'gpt-4o', 'claude-3-opus-20240229', 'gemini-2.0-flash')
- `name` (string, required): Name for the LLM configuration
- `projectId` (string, required): The project ID to create the LLM in
- `provider` (string, required): The LLM provider
- `providerConfig` (object): Provider-specific configuration (e.g., resourceName, deploymentName for Azure)

### `update_llm` (~145 tokens)

Updates an existing Cognigy.AI large language model configuration. Use this to change name, description, credentials, or provider settings. MUTATING: Set dryRun=false to update.

Input parameters:

- `connectionId` (string): New connection ID for credentials
- `description` (string): New description
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `isDefault` (boolean): Set as the default LLM
- `largeLanguageModelId` (string, required): The LLM ID to update
- `name` (string): New name for the LLM
- `providerConfig` (object): Provider-specific configuration updates

### `delete_llm` (~80 tokens)

Deletes a Cognigy.AI large language model configuration. WARNING: Features using this LLM will stop working. MUTATING: Set dryRun=false to delete.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `largeLanguageModelId` (string, required): The LLM ID to delete

### `clone_llm` (~83 tokens)

Clones a Cognigy.AI large language model configuration. Creates a copy with the same settings that can be modified independently. MUTATING: Set dryRun=false to clone.

Input parameters:

- `dryRun` (boolean): If true (default), validates without cloning. Set to false to actually clone.
- `largeLanguageModelId` (string, required): The LLM ID to clone

### `test_llm_connection` (~66 tokens)

Tests the connection to a Cognigy.AI large language model provider. Validates that the credentials are correct and the provider is reachable. Use this to verify LLM setup before using it in flows.

Input parameters:

- `largeLanguageModelId` (string, required): The LLM ID to test

### `list_nlu_connectors` (~113 tokens)

Lists Cognigy.AI NLU connectors. NLU connectors enable integration with external NLU services like Dialogflow, LUIS, Watson, or custom solutions for intent recognition.

Input parameters:

- `filter` (string): Filter NLU connectors by name
- `limit` (number): Maximum number of NLU connectors to return (default: 25, max: 100)
- `projectId` (string): Filter NLU connectors by project ID
- `skip` (number): Number of items to skip for pagination

### `get_nlu_connector` (~56 tokens)

Gets detailed configuration of a specific Cognigy.AI NLU connector. Returns type, settings, and connection details for external NLU service integration.

Input parameters:

- `nluConnectorId` (string, required): The NLU connector ID to retrieve

### `create_nlu_connector` (~136 tokens)

Creates a new Cognigy.AI NLU connector for external NLU service integration. Supports Dialogflow, LUIS, Watson, Alexa, Lex, and custom code connectors. MUTATING: Set dryRun=false to create.

Input parameters:

- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `name` (string, required): Name for the NLU connector
- `projectId` (string, required): The project ID to create the NLU connector in
- `settings` (object): Type-specific settings for the NLU connector
- `type` (string, required): The NLU connector type

### `update_nlu_connector` (~108 tokens)

Updates an existing Cognigy.AI NLU connector. Use this to change name or update type-specific settings. MUTATING: Set dryRun=false to update.

Input parameters:

- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `name` (string): New name for the NLU connector
- `nluConnectorId` (string, required): The NLU connector ID to update
- `settings` (object): Type-specific settings to update

### `delete_nlu_connector` (~83 tokens)

Deletes a Cognigy.AI NLU connector. WARNING: Endpoints using this connector will lose NLU functionality. MUTATING: Set dryRun=false to delete.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `nluConnectorId` (string, required): The NLU connector ID to delete

### `list_knowledge_stores` (~109 tokens)

Lists Cognigy.AI Knowledge AI stores. Knowledge stores are containers for RAG (Retrieval-Augmented Generation) content used by AI Agents to answer questions from your data.

Input parameters:

- `filter` (string): Filter knowledge stores by name
- `limit` (number): Maximum number of stores to return (default: 25, max: 100)
- `projectId` (string): Filter knowledge stores by project ID
- `skip` (number): Number of items to skip for pagination

### `get_knowledge_store` (~51 tokens)

Gets detailed configuration of a specific Cognigy.AI knowledge store. Returns store settings, language, embedding model, and source counts.

Input parameters:

- `knowledgeStoreId` (string, required): The knowledge store ID to retrieve

### `create_knowledge_store` (~182 tokens)

Creates a new Cognigy.AI knowledge store for RAG content. Knowledge stores contain sources (documents) that AI Agents can search to answer questions. MUTATING: Set dryRun=false to create.

Input parameters:

- `chunkOverlap` (number): Overlap between chunks in characters
- `chunkSize` (number): Size of text chunks in characters
- `description` (string): Description of the knowledge store's purpose
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `embeddingModel` (string): The embedding model to use for vectorization
- `language` (string): Primary language for the knowledge store (e.g., 'en', 'de')
- `name` (string, required): Name for the knowledge store
- `projectId` (string, required): The project ID to create the knowledge store in

### `update_knowledge_store` (~98 tokens)

Updates an existing Cognigy.AI knowledge store. Use this to change name or description. MUTATING: Set dryRun=false to update.

Input parameters:

- `description` (string): New description
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `knowledgeStoreId` (string, required): The knowledge store ID to update
- `name` (string): New name for the knowledge store

### `delete_knowledge_store` (~92 tokens)

Deletes a Cognigy.AI knowledge store and ALL its sources and chunks. WARNING: This is destructive and cannot be undone. AI Agents using this store will lose access. MUTATING: Set dryRun=false to delete.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `knowledgeStoreId` (string, required): The knowledge store ID to delete

### `list_knowledge_sources` (~113 tokens)

Lists knowledge sources in a Cognigy.AI knowledge store. Sources are documents (PDFs, web pages, text files) that have been ingested and chunked for RAG retrieval.

Input parameters:

- `filter` (string): Filter sources by name
- `knowledgeStoreId` (string, required): The knowledge store ID to list sources from
- `limit` (number): Maximum number of sources to return (default: 25, max: 100)
- `skip` (number): Number of items to skip for pagination

### `get_knowledge_source` (~67 tokens)

Gets detailed information about a specific Cognigy.AI knowledge source. Returns source metadata, processing status, chunk count, and ingestion details.

Input parameters:

- `knowledgeStoreId` (string, required): The knowledge store ID containing the source
- `sourceId` (string, required): The knowledge source ID to retrieve

### `create_knowledge_source` (~193 tokens)

Creates a new Cognigy.AI knowledge source for RAG content ingestion. Sources can be URLs, uploaded files, or manual text. Content is automatically chunked and embedded. MUTATING: Set dryRun=false to create.

Input parameters:

- `description` (string): Description of the source content
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `knowledgeStoreId` (string, required): The knowledge store ID to create the source in
- `metadata` (object): Custom metadata to attach to all chunks from this source
- `name` (string, required): Name for the knowledge source
- `text` (string): Text content to ingest (for type 'manual')
- `type` (string): Source type: 'manual' for text input, 'url' for web page
- `url` (string): URL to ingest (required if type is 'url')

### `update_knowledge_source` (~112 tokens)

Updates an existing Cognigy.AI knowledge source. Use this to change name or description. MUTATING: Set dryRun=false to update.

Input parameters:

- `description` (string): New description
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `knowledgeStoreId` (string, required): The knowledge store ID containing the source
- `name` (string): New name for the source
- `sourceId` (string, required): The knowledge source ID to update

### `delete_knowledge_source` (~101 tokens)

Deletes a Cognigy.AI knowledge source and all its chunks. WARNING: This is destructive. The document content will no longer be searchable. MUTATING: Set dryRun=false to delete.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `knowledgeStoreId` (string, required): The knowledge store ID containing the source
- `sourceId` (string, required): The knowledge source ID to delete

### `list_knowledge_chunks` (~120 tokens)

Lists knowledge chunks in a Cognigy.AI knowledge store. Chunks are the actual text segments used for RAG retrieval, created by splitting source documents.

Input parameters:

- `filter` (string): Filter chunks by text content
- `knowledgeStoreId` (string, required): The knowledge store ID to list chunks from
- `limit` (number): Maximum number of chunks to return (default: 25, max: 100)
- `skip` (number): Number of items to skip for pagination
- `sourceId` (string): Filter chunks by source ID

### `get_knowledge_chunk` (~91 tokens)

Gets the full content of a specific Cognigy.AI knowledge chunk. Returns the complete text, metadata, and source information. Use this to inspect what content is being used in RAG searches.

Input parameters:

- `chunkId` (string, required): The knowledge chunk ID to retrieve
- `knowledgeStoreId` (string, required): The knowledge store ID
- `sourceId` (string, required): The knowledge source ID containing the chunk

### `create_knowledge_chunk` (~146 tokens)

Creates a new Cognigy.AI knowledge chunk manually. Use this to add specific text segments that should be searchable via RAG. The chunk will be embedded automatically. MUTATING: Set dryRun=false to create.

Input parameters:

- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `knowledgeStoreId` (string, required): The knowledge store ID to create the chunk in
- `metadata` (object): Custom metadata for the chunk
- `sourceId` (string, required): The source ID to associate the chunk with
- `text` (string, required): The text content of the chunk
- `title` (string): Title for the chunk

### `update_knowledge_chunk` (~124 tokens)

Updates an existing Cognigy.AI knowledge chunk. If text is changed, the chunk will be re-embedded. MUTATING: Set dryRun=false to update.

Input parameters:

- `chunkId` (string, required): The knowledge chunk ID to update
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `knowledgeStoreId` (string, required): The knowledge store ID
- `sourceId` (string, required): The knowledge source ID containing the chunk
- `text` (string): New text content (will be re-embedded)

### `delete_knowledge_chunk` (~105 tokens)

Deletes a Cognigy.AI knowledge chunk. The content will no longer be searchable via RAG. MUTATING: Set dryRun=false to delete.

Input parameters:

- `chunkId` (string, required): The knowledge chunk ID to delete
- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `knowledgeStoreId` (string, required): The knowledge store ID
- `sourceId` (string, required): The knowledge source ID containing the chunk

### `list_knowledge_connectors` (~107 tokens)

Lists Cognigy.AI knowledge connectors for automated content ingestion. Connectors can pull content from external sources like SharePoint, Confluence, or custom APIs.

Input parameters:

- `filter` (string): Filter connectors by name
- `knowledgeStoreId` (string, required): The knowledge store ID to list connectors from
- `limit` (number): Maximum number of connectors to return (default: 25, max: 100)
- `skip` (number): Number of items to skip for pagination

### `get_knowledge_connector` (~66 tokens)

Gets detailed configuration of a specific Cognigy.AI knowledge connector. Returns connector type, schedule, connection settings, and run status.

Input parameters:

- `connectorId` (string, required): The knowledge connector ID to retrieve
- `knowledgeStoreId` (string, required): The knowledge store ID containing the connector

### `create_knowledge_connector` (~153 tokens)

Creates a new Cognigy.AI knowledge connector for automated content ingestion from external sources like SharePoint or Confluence. MUTATING: Set dryRun=false to create.

Input parameters:

- `connectionId` (string): Connection ID for authentication
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `knowledgeStoreId` (string, required): The knowledge store ID to create the connector in
- `name` (string, required): Name for the connector
- `schedule` (string): Cron expression for scheduled runs
- `settings` (object): Type-specific connector settings
- `type` (string, required): Connector type (e.g., 'sharepoint', 'confluence', 'custom')

### `update_knowledge_connector` (~103 tokens)

Updates an existing Cognigy.AI knowledge connector. Use this to change settings or name. MUTATING: Set dryRun=false to update.

Input parameters:

- `connectorId` (string, required): The knowledge connector ID to update
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `knowledgeStoreId` (string, required): The knowledge store ID containing the connector
- `name` (string): New name for the connector

### `delete_knowledge_connector` (~91 tokens)

Deletes a Cognigy.AI knowledge connector. Stops automated content ingestion from the external source. MUTATING: Set dryRun=false to delete.

Input parameters:

- `connectorId` (string, required): The knowledge connector ID to delete
- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `knowledgeStoreId` (string, required): The knowledge store ID containing the connector

### `run_knowledge_connector` (~100 tokens)

Triggers a Cognigy.AI knowledge connector to run immediately. Pulls content from the external source and creates/updates knowledge chunks. MUTATING: Set dryRun=false to run.

Input parameters:

- `connectorId` (string, required): The knowledge connector ID to run
- `dryRun` (boolean): If true (default), validates without running. Set to false to actually run.
- `knowledgeStoreId` (string, required): The knowledge store ID containing the connector

### `list_functions` (~99 tokens)

Lists Cognigy.AI Functions. Functions are custom code modules that can be triggered to run computations, integrations, or scheduled jobs outside of flow execution.

Input parameters:

- `filter` (string): Filter functions by name
- `limit` (number): Maximum number of functions to return (default: 25, max: 100)
- `projectId` (string): Filter functions by project ID
- `skip` (number): Number of items to skip for pagination

### `get_function` (~44 tokens)

Gets detailed configuration of a specific Cognigy.AI Function. Returns the function code, settings, and runtime configuration.

Input parameters:

- `functionId` (string, required): The function ID to retrieve

### `create_function` (~139 tokens)

Creates a new Cognigy.AI Function. Functions are custom code modules for integrations, scheduled jobs, or computations. MUTATING: Set dryRun=false to create.

Input parameters:

- `code` (string): The function code (JavaScript/TypeScript)
- `description` (string): Description of the function's purpose
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `name` (string, required): Name for the function
- `parameters` (object): Function parameters schema
- `projectId` (string, required): The project ID to create the function in
- `type` (string): Function type

### `update_function` (~115 tokens)

Updates an existing Cognigy.AI Function. Use this to change code, name, or parameters. MUTATING: Set dryRun=false to update.

Input parameters:

- `code` (string): Updated function code
- `description` (string): New description
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `functionId` (string, required): The function ID to update
- `name` (string): New name for the function
- `parameters` (object): Updated parameters schema

### `delete_function` (~76 tokens)

Deletes a Cognigy.AI Function. WARNING: This is destructive. Flows calling this function will fail. MUTATING: Set dryRun=false to delete.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `functionId` (string, required): The function ID to delete

### `list_function_instances` (~83 tokens)

Lists running and completed instances of a Cognigy.AI Function. Shows execution history, status, and results.

Input parameters:

- `functionId` (string, required): The function ID to list instances for
- `limit` (number): Maximum number of instances to return (default: 25, max: 100)
- `skip` (number): Number of items to skip for pagination

### `get_function_instance` (~61 tokens)

Gets detailed information about a specific Cognigy.AI Function instance. Returns execution status, timing, input parameters, and output/error.

Input parameters:

- `functionId` (string, required): The function ID
- `functionInstanceId` (string, required): The function instance ID to retrieve

### `trigger_function` (~89 tokens)

Triggers a Cognigy.AI Function to run immediately. Creates a new function instance that executes the function code. MUTATING: Set dryRun=false to trigger.

Input parameters:

- `dryRun` (boolean): If true (default), validates without triggering. Set to false to actually trigger.
- `functionId` (string, required): The function ID to trigger
- `input` (object): Input parameters for the function

### `stop_function_instance` (~89 tokens)

Stops a running Cognigy.AI Function instance. Use this to cancel a long-running or stuck function. MUTATING: Set dryRun=false to stop.

Input parameters:

- `dryRun` (boolean): If true (default), validates without stopping. Set to false to actually stop.
- `functionId` (string, required): The function ID
- `functionInstanceId` (string, required): The function instance ID to stop

### `list_extensions` (~96 tokens)

Lists Cognigy.AI Extensions. Extensions are custom node packages that add new capabilities to flows (e.g., integrations, custom actions).

Input parameters:

- `filter` (string): Filter extensions by name
- `limit` (number): Maximum number of extensions to return (default: 25, max: 100)
- `projectId` (string): Filter extensions by project ID
- `skip` (number): Number of items to skip for pagination

### `get_extension` (~46 tokens)

Gets detailed information about a specific Cognigy.AI Extension. Returns package info, available nodes, connections schemas, and settings.

Input parameters:

- `extensionId` (string, required): The extension ID to retrieve

### `delete_extension` (~74 tokens)

Deletes a Cognigy.AI Extension. WARNING: Flows using nodes from this extension will break. MUTATING: Set dryRun=false to delete.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `extensionId` (string, required): The extension ID to delete

### `update_extension` (~97 tokens)

Updates Cognigy.AI Extension settings like trusted code flag. Use this to enable/disable full Node.js API access. MUTATING: Set dryRun=false to update.

Input parameters:

- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `extensionId` (string, required): The extension ID to update
- `trustedCode` (boolean): Enable trusted code execution (allows full Node.js API access)

### `upload_extension` (~106 tokens)

Uploads a new Cognigy.AI Extension from a URL. The extension package must be a .tar.gz file. This is an async operation that polls until complete. MUTATING: Set dryRun=false to upload.

Input parameters:

- `dryRun` (boolean): If true (default), validates without uploading. Set to false to actually upload.
- `projectId` (string, required): The project ID to upload the extension to
- `url` (string, required): URL to the extension package (.tar.gz)

### `update_extension_package` (~98 tokens)

Updates a Cognigy.AI Extension with a new package version from a URL. Use this to upgrade an extension to a new version. MUTATING: Set dryRun=false to update.

Input parameters:

- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `extensionId` (string, required): The extension ID to update
- `url` (string, required): URL to the new extension package (.tar.gz)

### `list_contact_profiles` (~99 tokens)

Lists Cognigy.AI contact profiles. Contact profiles store user data across sessions (name, preferences, conversation history metadata).

Input parameters:

- `filter` (string): Filter profiles by contact ID or other fields
- `limit` (number): Maximum number of profiles to return (default: 25, max: 100)
- `projectId` (string): Filter contact profiles by project ID
- `skip` (number): Number of items to skip for pagination

### `get_contact_profile` (~47 tokens)

Gets detailed information about a specific Cognigy.AI contact profile. Returns stored user data, goals, and profile metadata.

Input parameters:

- `profileId` (string, required): The contact profile ID to retrieve

### `create_contact_profile` (~123 tokens)

Creates a new Cognigy.AI contact profile. Contact profiles persist user data across sessions for personalization. MUTATING: Set dryRun=false to create.

Input parameters:

- `acceptedGDPR` (boolean): Whether the user has accepted GDPR consent
- `contactId` (string, required): The unique contact identifier for this profile
- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `profile` (object): Profile data to store (custom fields)
- `projectId` (string, required): The project ID to create the profile in

### `update_contact_profile` (~106 tokens)

Updates an existing Cognigy.AI contact profile. Use this to modify stored user data or GDPR consent. MUTATING: Set dryRun=false to update.

Input parameters:

- `acceptedGDPR` (boolean): Update GDPR consent status
- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `profile` (object): Profile data to update (merges with existing)
- `profileId` (string, required): The contact profile ID to update

### `delete_contact_profile` (~78 tokens)

Deletes a Cognigy.AI contact profile. WARNING: This permanently removes all stored user data for this profile. MUTATING: Set dryRun=false to delete.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `profileId` (string, required): The contact profile ID to delete

### `remove_contact_id` (~100 tokens)

Removes a contact ID from a Cognigy.AI contact profile. Use this when a user identifier should no longer be associated with a profile. MUTATING: Set dryRun=false to remove.

Input parameters:

- `contactId` (string, required): The contact ID to remove from the profile
- `dryRun` (boolean): If true (default), validates without removing. Set to false to actually remove.
- `profileId` (string, required): The contact profile ID to modify

### `merge_contact_profiles` (~118 tokens)

Merges two Cognigy.AI contact profiles into one. The source profile data is merged into the target, and all contact IDs are combined. Use when the same user has multiple profiles. MUTATING: Set dryRun=false to merge.

Input parameters:

- `dryRun` (boolean): If true (default), validates without merging. Set to false to actually merge.
- `sourceProfileId` (string, required): The source profile ID (will be merged into target)
- `targetProfileId` (string, required): The target profile ID (will receive the merged data)

### `unmerge_contact_profiles` (~100 tokens)

Splits a merged Cognigy.AI contact profile back into separate profiles. Use when profiles were incorrectly merged. MUTATING: Set dryRun=false to unmerge.

Input parameters:

- `contactId` (string, required): The contact ID to extract into a separate profile
- `dryRun` (boolean): If true (default), validates without unmerging. Set to false to actually unmerge.
- `profileId` (string, required): The merged profile ID to split

### `export_contact_profile` (~54 tokens)

Exports all data for a Cognigy.AI contact profile. Use this for GDPR data access requests. Returns all stored profile data in a portable format.

Input parameters:

- `profileId` (string, required): The contact profile ID to export

### `get_contact_profile_schema` (~53 tokens)

Gets the contact profile schema for a Cognigy.AI project. The schema defines what custom fields can be stored in contact profiles.

Input parameters:

- `projectId` (string, required): The project ID to get the profile schema for

### `set_contact_profile_schema` (~96 tokens)

Sets the contact profile schema for a Cognigy.AI project. Defines what custom fields can be stored in contact profiles. MUTATING: Set dryRun=false to update.

Input parameters:

- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `projectId` (string, required): The project ID to set the profile schema for
- `schema` (array, required): Array of schema field definitions

### `get_conversation_metrics` (~114 tokens)

Gets Cognigy.AI conversation counter metrics. Returns aggregated conversation counts for a project or entire organization over a time period.

Input parameters:

- `endDate` (string): End date for metrics (ISO 8601 format)
- `projectId` (string): Project ID for project-level metrics. Omit for organization-wide metrics.
- `startDate` (string): Start date for metrics (ISO 8601 format)
- `timezone` (string): Timezone for aggregation (e.g., 'UTC', 'America/New_York')

### `get_call_metrics` (~116 tokens)

Gets Cognigy.AI call counter metrics (Voice Gateway). Returns aggregated call counts for a project or entire organization over a time period.

Input parameters:

- `endDate` (string): End date for metrics (ISO 8601 format)
- `projectId` (string): Project ID for project-level metrics. Omit for organization-wide metrics.
- `startDate` (string): Start date for metrics (ISO 8601 format)
- `timezone` (string): Timezone for aggregation (e.g., 'UTC', 'America/New_York')

### `get_knowledge_query_metrics` (~116 tokens)

Gets Cognigy.AI Knowledge AI query metrics. Returns aggregated knowledge search/RAG query counts for a project or entire organization.

Input parameters:

- `endDate` (string): End date for metrics (ISO 8601 format)
- `projectId` (string): Project ID for project-level metrics. Omit for organization-wide metrics.
- `startDate` (string): Start date for metrics (ISO 8601 format)
- `timezone` (string): Timezone for aggregation (e.g., 'UTC', 'America/New_York')

### `update_analytics_record` (~103 tokens)

Updates Cognigy.AI analytics records for a session. Use this to add custom tracking properties to conversation analytics. MUTATING: Set dryRun=false to update.

Input parameters:

- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `projectId` (string, required): The project ID
- `properties` (object, required): Custom analytics properties to set
- `sessionId` (string, required): The session ID to update analytics for

### `list_audit_events` (~195 tokens)

Lists Cognigy.AI audit events. Audit events track all changes made to resources (flows, intents, endpoints, etc.) by users. Useful for compliance and debugging.

Input parameters:

- `endDate` (string): End date for audit events (ISO 8601 format)
- `eventType` (string): Filter by event type (e.g., 'create', 'update', 'delete')
- `limit` (number): Maximum number of events to return (default: 25, max: 100)
- `projectId` (string): Filter audit events by project ID
- `resourceType` (string): Filter by resource type (e.g., 'flow', 'intent', 'endpoint')
- `skip` (number): Number of items to skip for pagination
- `startDate` (string): Start date for audit events (ISO 8601 format)
- `userId` (string): Filter audit events by user ID

### `get_audit_event` (~49 tokens)

Gets detailed information about a specific Cognigy.AI audit event. Returns the full change details including before/after values.

Input parameters:

- `auditEventId` (string, required): The audit event ID to retrieve

### `list_handover_providers` (~93 tokens)

Lists Cognigy.AI handover providers. Handover providers enable live agent escalation (e.g., Salesforce, Genesys, RingCentral).

Input parameters:

- `limit` (number): Maximum number of providers to return (default: 25, max: 100)
- `projectId` (string): Filter handover providers by project ID
- `skip` (number): Number of items to skip for pagination

### `get_handover_provider` (~50 tokens)

Gets detailed information about a specific Cognigy.AI handover provider. Returns provider type, configuration, and connection settings.

Input parameters:

- `providerId` (string, required): The handover provider ID to retrieve

### `create_handover_provider` (~152 tokens)

Creates a new Cognigy.AI handover provider for live agent escalation. Configure providers like Salesforce, Genesys, or RingCentral. MUTATING: Set dryRun=false to create.

Input parameters:

- `dryRun` (boolean): If true (default), validates without creating. Set to false to actually create.
- `enabled` (boolean): Whether the provider is enabled
- `name` (string, required): Name for the handover provider
- `projectId` (string, required): The project ID to create the handover provider in
- `settings` (object): Provider-specific configuration settings
- `type` (string, required): Provider type (e.g., 'salesforce', 'genesys', 'ringcentral', 'custom')

### `update_handover_provider` (~116 tokens)

Updates an existing Cognigy.AI handover provider. Use this to change settings or enable/disable the provider. MUTATING: Set dryRun=false to update.

Input parameters:

- `dryRun` (boolean): If true (default), validates without updating. Set to false to actually update.
- `enabled` (boolean): Enable or disable the provider
- `name` (string): New name for the provider
- `providerId` (string, required): The handover provider ID to update
- `settings` (object): Updated provider settings

### `delete_handover_provider` (~87 tokens)

Deletes a Cognigy.AI handover provider. WARNING: Endpoints using this provider will no longer be able to escalate to live agents. MUTATING: Set dryRun=false to delete.

Input parameters:

- `dryRun` (boolean): If true (default), validates without deleting. Set to false to actually delete.
- `providerId` (string, required): The handover provider ID to delete

### `list_handover_services` (~71 tokens)

Lists available Cognigy.AI handover services. Handover services are the supported integrations for live agent escalation.

Input parameters:

- `limit` (number): Maximum number of services to return (default: 25, max: 100)
- `skip` (number): Number of items to skip for pagination

### `get_handover_service` (~51 tokens)

Gets detailed information about a specific Cognigy.AI handover service. Returns service type, configuration schema, and supported features.

Input parameters:

- `serviceId` (string, required): The handover service ID to retrieve

### `search_resources` (~124 tokens)

Searches across all Cognigy.AI resources in the organization. Finds flows, intents, endpoints, functions, playbooks, and more by name or content. Powerful for discovering resources across projects.

Input parameters:

- `limit` (number): Maximum number of results to return (default: 25, max: 100)
- `projectId` (string): Filter results to a specific project
- `query` (string, required): Search query string
- `resourceTypes` (array): Filter by resource types (defaults to all types)
- `skip` (number): Number of items to skip for pagination

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/tsvetang2-cognigy-ai-mcp-management-server/cognigy-ai-mcp-management-server#diagnostics

## Score history

- 2026-08-03: 66
- 2026-08-02: 28
- 2026-08-01: 54
- 2026-07-31: 36
- 2026-07-30: 41
- 2026-07-28: 41
- 2026-07-27: 61

## Links

- npm package: https://www.npmjs.com/package/cognigy-ai-mcp-management-server
- Socket report: https://socket.dev/npm/package/cognigy-ai-mcp-management-server
- Repository: https://github.com/TsvetanG2/cognigy-ai-mcp-management-server
- Changelog RSS feed: https://verifymcp.io/servers/tsvetang2-cognigy-ai-mcp-management-server/cognigy-ai-mcp-management-server/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/tsvetang2-cognigy-ai-mcp-management-server/cognigy-ai-mcp-management-server/changelog.json
- HTML version of this page: https://verifymcp.io/servers/tsvetang2-cognigy-ai-mcp-management-server/cognigy-ai-mcp-management-server
