FAQ (answers come from our records)
How do I install it?
We did not find an install command for this repository (our install coverage is only about 4%). Check its README or releases page.
Who is it for?
We filed it under these tags: MCP ๆๅก. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
first catalogued 2026-10-09๏ผlast seen 2026-10-16ใThere is no official certification or quality rating here โ we record sources and dates only.
Inoyu Apache Unomi MCP Server
ไปฅไธๆๅฝ่ช่ฏฅไปๅบ็ README๏ผ็ๆฎต๏ผ ยท ๅจ GitHub ่ฏปๅฎๆด README โ
A Model Context Protocol server enabling Claude to maintain user context through Apache Unomi profile management.
> โ ๏ธ **Early Implementation Notice**
>
> This is an early implementation intended for demonstration purposes:
> - Not validated for production use
> - Subject to changes
> - Not (yet) officially supported
> - For learning and experimentation only
Current Scope
This implementation provides:
- Profile lookup and creation using email
- Profile property management
- Basic session handling
- Scope management for context isolation
Other Unomi features (events, segments, session properties, etc.) are not currently implemented. Community feedback welcome on future development priorities.
Demo
Watch how the MCP server enables Claude to maintain context and manage user profiles:
Installation
To use with Claude Desktop, add the server config and environment variables:
On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json
On Windows: %APPDATA%/Claude/claude_desktop_config.json
The env section in the configuration allows you to set the required environment variables for the server. Replace the values with your actual Unomi server details.
Make sure to restart Claude Desktop after updating the configuration. You can then click on the tools icon on the lower right of the chat window to make sure it has found all the tools provided by this server.
Features
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
Tools
- get_my_profile - Get your profile using environment variables
- Uses UNOMI_PROFILE_ID from environment or email lookup
- Automatically generates a session ID based on the current date
- Optional parameters:
- requireSegments: Include segment information
- requireScores: Include scoring information
- update_my_profile - Update properties of your profile
- Uses UNOMI_PROFILE_ID from environment or email lookup
- Takes a properties object with key-value pairs to update
- Supports string, number, boolean, and null values
- Example:
- get_profile - Retrieve a specific profile by ID
- Takes profileId as required parameter
- Returns full profile data from Unomi
- search_profiles - Search for profiles
- Takes query string and optional limit/offset parameters
- Searches across firstName, lastName, and email fields
- create_scope - Create a new Unomi scope
- Takes scope identifier and optional name/description
- Required for event tracking and profile updates
- Example:
- get_tenant_info - Get information about the current tenant (V3 only)
- Returns tenant details, version information, and key status
- Only available when using Unomi V3
- No parameters required
Consent Management Tools
- update_consent - Update a user's consent status using the modifyConsent event
- Uses the Apache Unomi Consent API as described in the official documentation
- Required parameters:
- consentId: Unique identifier for the consent
- status: Consent status (GRANTED, DENIED, or REVOKED)
- Optional parameters:
- typeIdentifier: Type identifier of the consent
- scope: Scope for the consent (defaults to claude-desktop)
- metadata: Additional metadata for the consent
- GDPR Compliance:
- GRANTED consents expire after 1 year (GDPR recommendation)
- DENIED/REVOKED consents expire immediately
- Example:
- get_consent - Get specific consent information for a profile
- Takes consentId as required parameter
- Returns consent details including status, timestamp, and metadata
- Uses your profile by default (from environment or email lookup)
- Example:
- list_consents - List all consents for a profile with optional filtering
- Optional parameters:
- profileId: Profile ID to list consents for (uses your profile if not provided)
- status: Filter by consent status (GRANTED, DENIED, or REVOKED)