# Novu MCP

> Novu lets you manage all your multi-channel notifications—email, SMS, push, and chat—directly through conversation. Trigger complex workflows, update subscriber profiles in bulk, and audit notification preferences without ever opening a dashboard or writing boilerplate API calls.

## Overview
- **Category:** developer-tools
- **Price:** Free
- **Tags:** notification-infrastructure, multi-channel, subscriber-management, event-triggering, push-notifications, workflow-automation

## Description

You've got critical communication flows running across multiple channels, but managing them usually means jumping between Postman, your database, and the Novu UI. This MCP changes that. It connects your existing AI client to Novu’s entire notification infrastructure, letting you treat complex workflows like a conversation.

Need to test a new welcome email campaign? You can now use natural language commands to trigger single events or bulk blasts. Need to fix stale user data? Just ask the agent to search for users and update their preferences in one go. It handles everything from creating entire notification topics to canceling delayed workflows using just conversational prompts.

Connecting this MCP through Vinkius means you don't have to manually write out every API call; your AI client acts as a dedicated communications engineer, giving you full control over subscriber management and event triggering right where you're already working.

## Tools

### bulk_update_subscriber_preferences
Updates communication settings for many subscribers at once.

### cancel_trigger
Stops active or scheduled notification workflows like digests.

### check_topic_subscriber
Checks if a specific user has opted in to receive updates about a topic.

### create_environment_variable
Sets up environment variables needed for the system to function.

### create_integration
Adds a new connection point, like connecting Slack or Stripe, to Novu.

### create_layout
Builds the visual structure or template for notifications.

### create_subscriber
Registers a brand new user into the system.

### create_topic_subscriptions
Signs up an existing subscriber to receive messages about a specific topic.

### create_topic
Creates a new subject or category for notifications.

### create_workflow
Builds a completely new, complex notification sequence (a workflow).

### delete_integration
Removes an existing connection point from the account.

### delete_message
Deletes a specific message record that was sent out.

### delete_messages_by_transaction
Removes multiple messages using a unique transaction ID.

### delete_subscriber_credentials
Wipes the login credentials for a subscriber.

### delete_subscriber
Permanently removes a user from the platform.

### delete_topic_subscriptions
Unsubscribes a user from all messages related to a specific topic.

### delete_topic
Deletes an entire notification topic and its history.

### get_environment_variable_usage
Shows how often a specific environment variable is being used by the system.

### get_subscriber_preferences
Retrieves all communication settings and preferences for one user.

### get_subscriber
Finds a subscriber's profile using their unique ID.

### get_topic_subscription
Retrieves the details of one user’s subscription to a topic.

### get_topic
Looks up information about a specific notification topic by its key.

### list_active_integrations
Lists all connections (like Slack or Salesforce) currently active with Novu.

### list_environment_variables
Retrieves a list of all configured environment variables.

### list_integrations
Shows every integration that can be connected to Novu.

### list_messages
Retrieves a list of messages sent through the system.

### list_topic_subscriptions
Lists all users currently subscribed to updates for one topic.

### search_subscribers
Finds subscribers using search criteria like email address or name.

### set_primary_integration
Designates a specific connection (e.g., Email) as the main communication channel.

### trigger_broadcast
Sends an immediate notification to every single subscriber registered in the system.

### trigger_bulk_event
Triggers multiple separate notifications and events in a single request.

### trigger_event
Sends a specific notification to one or more targeted subscribers.

### update_environment_variable
Changes the value of an existing environment variable.

### update_integration
Modifies settings for a connected third-party service.

### update_subscriber_credentials
Updates the login credentials stored for a subscriber.

### update_subscriber_preference
Changes one specific communication setting, like changing SMS opt-in status.

### update_subscriber
Updates core profile information for an existing subscriber.

### update_topic
Modifies the name or description of a notification topic.

### upsert_subscriber_credentials
Creates or updates credentials for a subscriber in one step.

## Prompt Examples

**Prompt:** 
```
Trigger the 'welcome-onboarding' workflow for subscriber 'user_99' with the payload { "name": "Alice" }.
```

**Response:** 
```
I've triggered the 'welcome-onboarding' event for subscriber 'user_99'. The transaction has been initiated successfully.
```

**Prompt:** 
```
Search for a subscriber with the email 'support@example.com'.
```

**Response:** 
```
I found a subscriber matching that email. The ID is 'sub_5544' and the name is 'Support Team'. Would you like to see their full preferences?
```

**Prompt:** 
```
Cancel the notification trigger with transaction ID 'tx_abc123'.
```

**Response:** 
```
The workflow execution for transaction 'tx_abc123' has been successfully cancelled.
```

## Capabilities

### Triggering multi-channel events
Send notifications to single users or entire groups across email, SMS, push, and chat by naming the workflow.

### Managing subscriber profiles
Search for users by email or ID, retrieve their current preferences, and update user details in bulk.

### Auditing communication settings
Check if a specific user is subscribed to a topic and view all active integrations attached to the account.

### Controlling workflows
Cancel pending or active notification flows, like scheduled digests or delayed messages, using a transaction ID.

## Use Cases

### Onboarding flow verification
A Product Manager needs to confirm that a user gets the correct sequence of notifications (welcome email, followed by a push notification) when they sign up. They ask their agent to `trigger_event` for the 'onboarding' workflow and can immediately verify if all channels fired correctly.

### Marketing campaign rollout
A Growth Team needs to send an urgent update about a new feature to 10,000 users. Instead of writing a massive script, they instruct their agent to `trigger_broadcast` and instantly check the success rate via the returned logs.

### Data cleanup project
The Ops Engineer realizes several key subscribers have old credentials or stale preferences. They use the MCP to first `search_subscribers`, then call `update_subscriber` and `upsert_subscriber_credentials` for all identified accounts in a single conversational flow.

### Testing complex dependencies
A developer needs to ensure that when Topic A is created, the related topic subscription is also handled correctly. They use the MCP to first `create_topic`, and then immediately follow up by calling `create_topic_subscriptions` for a test user.

## Benefits

- Automate complex campaign testing. Instead of writing separate code to test welcome emails versus SMS blasts, you simply tell your agent which workflows to `trigger_bulk_event` for a group of users.
- Fix user data issues instantly. When a Product Manager finds an outdated email address, they can use the agent to first `search_subscribers` and then immediately `update_subscriber_preference`, all without leaving their chat window.
- Eliminate manual API calls. You don't need to manually build payloads or switch between Postman endpoints; your AI client handles the complexity of calling tools like `trigger_event` for you.
- Maintain compliance easily. Use the MCP to retrieve and inspect every user's settings via `get_subscriber_preferences`, ensuring all communication adheres to their stated preferences before a blast goes out.
- Full lifecycle control. You can manage everything from creating new notification topics (`create_topic`) to deleting entire outdated integrations (`delete_integration`), giving you full administrative oversight.

## How It Works

The bottom line is you use your AI client's conversational ability instead of writing complex, multi-step code or hitting multiple endpoints.

1. Subscribe to this MCP and provide your unique Novu Secret Key.
2. Your AI client accesses the service, allowing you to interact with all subscriber and workflow tools conversationally.
3. You issue a natural language command (e.g., 'Send a welcome email to John Doe') and the agent executes the necessary sequence of API calls.

## Frequently Asked Questions

**How do I trigger an event using the Novu MCP?**
You use the `trigger_event` tool by describing the workflow name and providing any required payload data. This sends a targeted notification to specific subscribers or groups.

**Can Novu MCP handle bulk updates?**
Yes, you can perform bulk actions like updating preferences for many users at once using `bulk_update_subscriber_preferences`, saving time compared to individual API calls.

**Is the Novu MCP only for email notifications?**
No. This MCP handles multi-channel delivery, allowing you to manage SMS, push, and chat notifications as well as traditional emails.

**How do I find a specific user's details using the Novu MCP?**
You can use `search_subscribers` if you have an email or partial name, or use `get_subscriber` if you already know their unique ID.

**What if I need to stop a pending notification? Does Novu MCP support that?**
Yes. You can cancel active or delayed flows using the `cancel_trigger` tool, which requires a specific transaction ID for accuracy.