Profiles MCP Server

Profiles MCP Server

Enables building RudderStack Profiles projects using natural language through AI assistants, supporting data discovery, identity resolution, feature engineering, and propensity modeling.

Category
访问服务器

README

Profiles MCP Server

What is This?

The Profiles MCP Server enables you to build RudderStack Profiles projects using natural language through AI assistants. Simply describe what you want to accomplish, and the AI will guide you through data discovery, identity resolution, feature engineering, and propensity modeling - all through conversational interactions.

Prerequisites

  • Python 3.10.x installed on your system
  • Data Warehouse Access with appropriate permissions:
    • Snowflake: Read access to input tables and write access to output schema
    • BigQuery: Read access to input datasets and write access to output dataset
    • Databricks: SQL warehouse or cluster access with read/write permissions
    • Redshift: Cluster or Serverless access with read/write permissions
  • RudderStack Personal Access Token: Generate one from your RudderStack dashboard
  • AI Client with MCP Support: See AI Client Support section below
  • Pb CLI: pb (from profiles-rudderstack) is installed as part of setup and used by default for warehouse query execution.

Authentication Requirements

  • Snowflake: MFA (Multi-Factor Authentication) is not supported. If your account has MFA enabled, use key-pair authentication instead
  • BigQuery: Supports Service Account JSON files and Application Default Credentials
  • Databricks: Supports Personal Access Token (PAT) and M2M OAuth authentication
  • Redshift: Supports Username/Password and IAM Role (with AWS Secrets Manager)

AI Client Support

The Profiles MCP server works with any AI client that supports the Model Context Protocol (MCP).

Automatic Integration

Running the setup script (./setup.sh) will automatically:

  1. Create the MCP server startup script (scripts/start.sh)
  2. Configure MCP integration for supported AI clients:
    • Cursor IDE
    • Claude Code (claude.ai/code)
    • Cline (VSCode extension)

If the automatic integration doesn't work or you encounter issues, you can manually configure the integration (see below).

Manual Integration

For other AI clients or if automatic integration fails:

  1. First, run setup: Ensure you've run ./setup.sh to create the scripts/start.sh file and install dependencies

  2. Configure your AI client's MCP settings to point to:

    /absolute/path/to/profiles-mcp/scripts/start.sh
    

    Replace /absolute/path/to/profiles-mcp/ with the actual full path to your cloned repository

  3. Refer to your specific AI client's documentation for MCP server configuration. Make sure you update the client to its latest version

  4. Restart your AI client after configuration

Recommended Model: For the best experience, we recommend using high-capability models such as the latest Claude Sonnet, GPT-5 class, or similar advanced reasoning models. While the server works with most LLMs, advanced reasoning models provide optimal performance for complex profiles project workflows

Quick Start

  1. Clone this repository and navigate to the directory:

    cd profiles-mcp
    
  2. Run the setup script:

    ./setup.sh
    

    This will:

    • Check for Python 3.10.x and uv package manager
    • Install uv if not found
    • Create .env file if missing
    • Install all dependencies
    • Verify/install pb CLI (profiles-rudderstack) required for default pb-query execution
    • Download and extract embeddings to src/data/
    • Automatically configure MCP integration for supported AI clients (Cursor, Claude Code, Cline)
  3. Restart your AI client to apply the configuration changes

Usage

Once configured, you can interact with the AI using natural language to build profiles projects. The AI will guide you through the entire process. If you have multiple MCP servers running, or you are working in a blank project, the AI may need to be prompted to use Rudderstack Profiles, so it knows to call the Profiles MCP server.

Example prompts to start a conversation

Predictive Analytics:

"Build a churn prediction model for my subscription users in Snowflake using Rudderstack Profiles"
"Add a customer lifetime value prediction model to my profiles project"

Feature Engineering:

"Build a customer profiles project with purchase behavior features"
"Generate features for my marketing campaigns using Rudderstack Profiles"

Identity Resolution:

"Stitch together user identities across email, phone, and user_id, using Rudderstack Profiles"
"Create unified customer profiles from multiple data sources"

The AI will:

  1. Discover relevant tables in your warehouse
  2. Guide you through configuration decisions
  3. Generate the necessary YAML files
  4. Validate your setup
  5. Help you run and troubleshoot the project

Troubleshooting

Verifying MCP Server Status

For Cursor Users: In Cursor MCP settings, you should see the profiles mcp tool active with a green indicator. See the reference image: Cursor Settings

For All AI Clients: If the MCP tools are not available or the server appears inactive:

  1. Test the server directly by running in your terminal:

    cd profiles-mcp
    ./scripts/start.sh
    
  2. Check for errors in the output or review the log file:

    cat profiles-mcp.log
    
  3. Common issues:

    • Python version: Ensure Python 3.10.x is installed and in your PATH
    • Missing dependencies: Re-run ./setup.sh
    • Environment variables: Verify .env file exists with your RudderStack PAT
    • Permissions: Ensure scripts/start.sh is executable (chmod +x scripts/start.sh)
  4. If issues persist, manually verify the MCP configuration in your AI client points to the correct path for scripts/start.sh

How It Works

The MCP Server provides a comprehensive toolkit that enables AI assistants to build profiles projects:

Tool Categories

  1. Knowledge Tools - Provide the AI with RudderStack Profiles concepts, syntax, and best practices

    • about_profiles: Static documentation on core concepts
    • search_profiles_docs: RAG-powered search for answering specific questions
  2. Data Discovery Tools - Explore and analyze your warehouse data

    • run_query: Execute SQL queries on your warehouse
    • describe_table: Examine table schemas and structure
    • input_table_suggestions: Identify relevant tables for your project
  3. Project Management Tools - Set up and configure profiles projects

    • get_existing_connections: List available warehouse connections
    • setup_new_profiles_project: Initialize Python environment and project structure
    • validate_propensity_model_config: Validate predictive model configurations
  4. Output Analysis Tools - Work with profiles project results

    • get_profiles_output_details: Analyze generated feature tables and model outputs

Supported Data Warehouses

Warehouse Status Authentication Methods Notes
Snowflake ✅ Fully Supported Username/Password, Key Pair, SSO MFA not supported, use key-pair auth instead
BigQuery ✅ Fully Supported Service Account JSON, Application Default Credentials Project-based permissions required
Databricks ✅ Fully Supported Personal Access Token (PAT), M2M OAuth Supports both Unity Catalog and legacy 2-level namespace
Redshift ✅ Fully Supported Username/Password, IAM Role (Secrets Manager) Supports both provisioned clusters and serverless workgroups

Roadmap

We're continuously improving the Profiles MCP Server. Upcoming features include:

  • Enhanced analysis tools for profiles output tables
  • Advanced debugging and validation capabilities

Advanced Configuration

Manual MCP Configuration

If you need to manually configure your AI client's MCP settings, use the following configuration template:

For Cursor (~/.cursor/mcp.json):

{
  "mcpServers": {
    "profiles": {
      "command": "/absolute/path/to/profiles-mcp/scripts/start.sh",
      "args": []
    }
  }
}

For Claude Code: Configuration is handled automatically by setup.sh

For Cline: Configuration is handled automatically by setup.sh

For other MCP-compatible clients: Refer to your client's documentation and point to scripts/start.sh as the server command

For Developers

Contributing: Contributions are welcome! Please ensure Python 3.10.x compatibility and follow the existing code patterns

License

This project is licensed under the Elastic License v2.0 - see the LICENSE file for details.

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选