# sergehuber/inoyu-mcp-unomi-server [Health: Active]

**Category:** 👤 Customer Data Platforms  
**Repository:** https://github.com/sergehuber/inoyu-mcp-unomi-server  
**GitHub Stars:** 11  
**Views:** 3  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/sergehuber-inoyu-mcp-unomi-server

## Description
An MCP server to access and updates profiles on an Apache Unomi CDP server.

## Tools
Capabilities this server exposes over MCP:

- **get_my_profile** — Get your profile using environment variables
- **update_my_profile** — Update properties of your profile
- **get_profile** — Retrieve a specific profile by ID
- **search_profiles** — Search for profiles
- **create_scope** — Create a new Unomi scope
- **get_tenant_info** — Get information about the current tenant (V3 only)

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "inoyu-mcp-unomi-server": {
    "command": "npx",
    "args": ["@inoyu/mcp-unomi-server"],
    "env": {
      "UNOMI_BASE_URL": "",
      "UNOMI_VERSION": "",
      "UNOMI_PROFILE_ID": "",
      "UNOMI_EMAIL": "",
      "UNOMI_USERNAME": "",
      "UNOMI_PASSWORD": "",
      "UNOMI_TENANT_ID": "",
      "UNOMI_PRIVATE_KEY": ""
    }
  }
}
```

**Requires environment variables:** `UNOMI_BASE_URL`, `UNOMI_VERSION`, `UNOMI_PROFILE_ID`, `UNOMI_EMAIL`, `UNOMI_USERNAME`, `UNOMI_PASSWORD`, `UNOMI_TENANT_ID`, `UNOMI_PRIVATE_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What sergehuber/inoyu-mcp-unomi-server MCP server does

sergehuber/inoyu-mcp-unomi-server MCP server exposes Apache Unomi profile-management operations through MCP. It can identify a profile from an environment-configured profile ID or email address, retrieve a profile directly by ID, search profiles by name or email fields, and update profile properties. Property values may be strings, numbers, booleans, or nulls.

The server also supports scope management. Agents can create scopes with an identifier, name, and description, while the implementation uses a default `claude-desktop` scope and can create missing scopes when needed. Unomi V3 deployments can expose tenant information, including version and key status.

Consent queries can use a profile from the environment or an explicitly supplied profile ID, with optional status and scope filters.

## How it works

The package runs as an MCP process and communicates with Apache Unomi using the configured base URL and authentication settings. Install and launch it through `npx @inoyu/mcp-unomi-server`, then register the process in an MCP client configuration.

`UNOMI_VERSION=2` selects the legacy authentication flow, which uses a username, password, and key. Version 3 is the default and uses tenant-based credentials: a tenant ID, public key, and private key. Public and private Unomi endpoints use different authentication methods under V3. Profile operations use tenant authentication, while public context requests use the public API key.

For profile-oriented operations, the server can use `UNOMI_PROFILE_ID` directly or resolve a profile from `UNOMI_EMAIL`. The implementation generates a date-based session ID for the profile tools. Profile data and other exchanges use JSON.

## Setup and configuration

Add the server to the Claude Desktop configuration file at the platform-specific location documented by the project, then restart Claude Desktop. Set `UNOMI_BASE_URL` to the Apache Unomi address and select the matching version. V2 requires `UNOMI_USERNAME`, `UNOMI_PASSWORD`, and `UNOMI_KEY`; V3 requires `UNOMI_TENANT_ID`, `UNOMI_PUBLIC_KEY`, and `UNOMI_PRIVATE_KEY`.

`UNOMI_SOURCE_ID` identifies the source used by the client configuration. `UNOMI_PROFILE_ID` and `UNOMI_EMAIL` determine the default profile context. A custom scope can be supplied to consent operations, while the default scope is `claude-desktop` when no scope is specified.

## Tools and capabilities

sergehuber/inoyu-mcp-unomi-server MCP server provides these documented operations:

- `get_my_profile`: retrieves the configured or email-resolved profile, with optional segment and score data.
- `update_my_profile`: changes properties on the configured or email-resolved profile.
- `get_profile`: retrieves complete profile data by profile ID.
- `search_profiles`: searches first name, last name, and email fields with limit and offset options.
- `create_scope`: creates a scope with optional descriptive metadata.
- `get_tenant_info`: returns tenant details for Unomi V3.
- `update_consent`, `get_consent`, and `list_consents`: manage and inspect consent records, including status, scope, and metadata.

Scopes are required for some profile and event-related operations. The server can create the default scope automatically, or an agent can create a named scope explicitly.

## Limitations and notes

sergehuber/inoyu-mcp-unomi-server MCP server is described as an early implementation. Unomi features such as events, segments, and session properties are not generally implemented, although profile retrieval can request segment and score information.

Authentication configuration differs substantially between Unomi V2 and V3, so credentials must match the selected version. Consent expiration behavior documented by the project sets granted consent to expire after one year and denied or revoked consent to expire immediately.

_Full upstream README: https://allmcps.com/mcp/sergehuber-inoyu-mcp-unomi-server/readme_

