Profile Questions MCP Server

Profile Questions MCP Server

Enables AI agents to create, submit answers, and query profile questions from the White Rabbit Profile Questions API. Supports various question types and batch operations.

Category
Visit Server

README

Profile Questions MCP Server

An MCP (Model Context Protocol) server that allows AI agents to interact with the White Rabbit Profile Questions API. This enables agents to create questions, submit answers, and query existing profile data.

Installation

cd mcp-servers/profile-questions
npm install
npm run build

Configuration

Set the following environment variables:

Variable Description Default
PROFILE_QUESTIONS_API_URL Base URL of the White Rabbit API http://localhost:3000
PROFILE_QUESTIONS_API_KEY API key for authentication (none)

Usage with Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "profile-questions": {
      "command": "node",
      "args": ["/path/to/mcp-servers/profile-questions/dist/index.js"],
      "env": {
        "PROFILE_QUESTIONS_API_URL": "https://your-api-url.com",
        "PROFILE_QUESTIONS_API_KEY": "your-api-key"
      }
    }
  }
}

Available Tools

list_questions

List profile questions by source.

Parameters:

  • source (required): profile_optimizer | admin | onboarding | survey
  • category (optional): Filter by category
  • questionType (optional): free_form | multiple_choice | yes_no | fill_in_blank
  • activeOnly (optional): Only return active questions (default: true)
  • page (optional): Page number (0-indexed)
  • limit (optional): Items per page (default: 50)

create_question

Create a new profile question.

Parameters:

  • questionText (required): The question text (1-500 characters)
  • questionType (required): free_form | multiple_choice | yes_no | fill_in_blank
  • source (required): profile_optimizer | admin | onboarding | survey
  • description (optional): Description for the question (max 1000 characters)
  • options (required for multiple_choice): Array of at least 2 options
  • allowMultiple (optional): Allow selecting multiple options (default: false)
  • fillInBlankTemplate (required for fill_in_blank): Template containing {blank} placeholder
  • category (optional): Category for organizing questions (max 100 characters)
  • displayOrder (optional): Order for displaying questions (default: 0)
  • isActive (optional): Whether the question is active (default: true)

get_my_answers

Get the current user's answers to profile questions.

Parameters:

  • source (optional): Filter answers by source

submit_answer

Submit an answer to a profile question.

Parameters:

  • questionId (required): UUID of the question to answer
  • answerSource (required): profile_optimizer | admin | onboarding | survey
  • textValue (optional): For free_form or fill_in_blank questions
  • booleanValue (optional): For yes_no questions (true/false)
  • selectedOptions (optional): For multiple_choice questions

batch_submit_answers

Submit multiple answers at once (up to 50).

Parameters:

  • answers (required): Array of answer objects (same structure as submit_answer)

Question Types

Type Answer Field Description
free_form textValue Open-ended text responses
multiple_choice selectedOptions Select from predefined options
yes_no booleanValue Binary true/false
fill_in_blank textValue Complete a sentence template

Examples

Create a multiple choice question

{
  "tool": "create_question",
  "arguments": {
    "questionText": "What is your experience level with AI tools?",
    "questionType": "multiple_choice",
    "options": ["Beginner", "Intermediate", "Advanced", "Expert"],
    "source": "profile_optimizer",
    "category": "skills"
  }
}

Submit an answer

{
  "tool": "submit_answer",
  "arguments": {
    "questionId": "123e4567-e89b-12d3-a456-426614174000",
    "selectedOptions": ["Advanced"],
    "answerSource": "profile_optimizer"
  }
}

Batch submit answers

{
  "tool": "batch_submit_answers",
  "arguments": {
    "answers": [
      {
        "questionId": "uuid-1",
        "selectedOptions": ["Advanced"],
        "answerSource": "profile_optimizer"
      },
      {
        "questionId": "uuid-2",
        "textValue": "I have 5 years of experience",
        "answerSource": "profile_optimizer"
      }
    ]
  }
}

Development

# Watch mode for development
npm run dev

# Build for production
npm run build

# Run the server
npm start

Authentication

The server uses bearer token authentication. Set your API key via the PROFILE_QUESTIONS_API_KEY environment variable. The key is passed in the Authorization header as Bearer <key>.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured