Skip to main content
Glama

MCP User Profile Management Server

by SLdragon

MCP User Profile Management Server Showcasing Elicitation Capabilities

A demonstration Model Context Protocol (MCP) server showcasing elicitation capabilities.

Demo

https://github.com/user-attachments/assets/ce89872b-a015-48a6-b56f-6be6fee44ff0

Related MCP server: MCP Anthropic Server

Key Point

Ask response from user:

Collect info using command palette:

Success:

Project Overview

This project implements an MCP server with interactive elicitation capabilities, allowing clients to create and manage user profiles. When information is missing, the server uses MCP's elicitation feature to prompt users for required data.

Available Tools

create_user_profile

Creates a new user profile with interactive elicitation support for missing fields.

Parameters (all optional):

  • name (string): User's full name

  • email (string): User's email address

  • age (number): User's age

  • role (string): User's role

Validation Rules:

  • Name: 2-100 characters

  • Email: 5-100 characters, must follow email format

  • Age: Between 13-120 years

  • Role: Select from predefined options (developer, designer, manager, analyst, tester)

list_users

Lists all user profiles currently stored in the system.

Installation & Setup

1. Install Dependencies

npm install

2. Start the Server

Development Mode (with file watching):

npm run dev

Production Mode:

npm start

Direct execution:

node index.js

VS Code Integration

The project comes pre-configured for VS Code MCP integration. Configuration file is located at .vscode/mcp.json:

{ "servers": { "elicitationDemo": { "type": "stdio", "command": "node", "args": ["index.js"], "cwd": "${workspaceFolder}", "dev": { "watch": "*.js", "debug": { "type": "node" } } } } }

Usage Examples

Create Complete Profile

create_user_profile({ name: "John Doe", email: "john@example.com", age: 28, role: "developer" })

Create Profile with Interactive Prompts

// Provide partial information, system will prompt for missing data create_user_profile({ name: "Jane Smith" // Missing email, age, role - will trigger interactive elicitation })

List All Users

list_users()
One-click Deploy
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/SLdragon/mcp-elicitation-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server