# inoyu-mcp-unomi-server

> MCP Server

This repository provides an early-stage Model Context Protocol (MCP) server that allows Claude to maintain user context by managing Apache Unomi profiles, properties, and basic sessions for learning and experimentation.

## Overview

- **Category:** Communication
- **Language:** JavaScript
- **Stars:** 10
- **Forks:** 2
- **Owner:** sergehuber
- **GitHub:** https://github.com/sergehuber/inoyu-mcp-unomi-server
- **Created:** 2024-12-01T17:06:38+00:00
- **Updated:** 2025-03-07T09:12:02+00:00
- **Source:** https://model-context-protocol.com/servers/unomi-cdp-model-context-protocol-server

## Setup

## Setup
To use with Claude Desktop, add the server config and environment variables to `~/Library/Application Support/Claude/claude_desktop_config.json` (MacOS) or `%APPDATA%/Claude/claude_desktop_config.json` (Windows).

```json
{
  "mcpServers": {
    "unomi-server": {
      "command": "npx",
      "args": ["@inoyu/mcp-unomi-server"],
      "env": {
        "UNOMI_BASE_URL": "http://your-unomi-server:8181",
        "UNOMI_USERNAME": "your-username", // by default Apache Unomi uses karaf  
        "UNOMI_PASSWORD": "your-password", // by default Apache Unomi uses karaf
        "UNOMI_PROFILE_ID": "your-profile-id",
        "UNOMI_KEY": "your-unomi-key", // by default Apache Unomi uses 670c26d1cc413346c3b2fd9ce65dab41
        "UNOMI_EMAIL": "your-email@example.com",
        "UNOMI_SOURCE_ID": "claude-desktop"
      }
    }
  }
}
```

Replace the values in the `env` section with your actual Unomi server details.
Restart Claude Desktop after updating the configuration, then click the tools icon to verify the server's tools.

## Tools

## Available Tools

1.  Profile Access (Email-based profile lookup with automatic creation, profile properties, segments, and scores access, JSON format for all data exchange, automatic session management with date-based IDs)
2.  `get_my_profile` (Get your profile using environment variables or email lookup, automatically generates a session ID based on the current date, with optional parameters for segments and scores)
3.  `update_my_profile` (Update properties of your profile using environment variables or email lookup, takes a properties object with key-value pairs to update, supports string, number, boolean, and null values)
4.  `get_profile` (Retrieve a specific profile by ID, returns full profile data from Unomi)
5.  `search_profiles` (Search for profiles, takes query string and optional limit/offset parameters, searches across firstName, lastName, and email fields)
6.  `create_scope` (Create a new Unomi scope, takes scope identifier and optional name/description, required for event tracking and profile updates)
7.  Scope Management (Automatically manages scopes, including a default scope and custom scopes, creating them automatically when needed)
