Skip to content

novuhq/smithery-mcp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Novu MCP Implementation

This is a TypeScript implementation of a Model Context Protocol (MCP) server for Novu, allowing AI agents to interact with Novu's notification infrastructure.

Setup

  1. Install dependencies:
npm install
  1. Build the project:
npm run build
  1. Start the MCP server:
npm start

For development, you can use:

npm run dev

Configuration

The MCP server requires a Novu API key to be configured in smithery.yml. You can obtain an API key from your Novu dashboard.

Available Operations

The MCP server supports the following Novu operations:

Events

  • trigger_event: Send a notification to specific subscribers
  • broadcast_event: Send a notification to all subscribers
  • cancel_triggered_event: Cancel a triggered notification

Notifications

  • get_notifications: List notifications with pagination
  • get_notification_stats: Get notification statistics

Subscribers

  • get_subscribers: List subscribers with pagination
  • create_subscriber: Create a new subscriber
  • update_subscriber: Update subscriber details
  • delete_subscriber: Remove a subscriber

Topics

  • get_topics: List all topics
  • create_topic: Create a new topic
  • delete_topic: Delete an existing topic
  • add_subscribers_to_topic: Add subscribers to a topic
  • remove_subscribers_from_topic: Remove subscribers from a topic

Example Usage

To trigger a notification:

{
  "type": "execute",
  "payload": {
    "operation": "trigger_event",
    "params": {
      "name": "welcome-email",
      "to": "subscriber-id",
      "payload": {
        "name": "John Doe",
        "company": "Acme Inc"
      }
    }
  }
}

To create a subscriber:

{
  "type": "execute",
  "payload": {
    "operation": "create_subscriber",
    "params": {
      "subscriberId": "unique-id",
      "email": "[email protected]",
      "firstName": "John",
      "lastName": "Doe"
    }
  }
}

Development

The source code is written in TypeScript and follows modern development practices. The main implementation is in src/index.ts, with Novu-specific logic in src/novu-service.ts.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published