MemberVault MCP by usefulapi
List courses; add users to courses, remove course access or delete users in MemberVault.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"membervault": {
"url": "https://membervault.usefulapi.io/mcp"
}
}
}Remote endpoints
https://membervault.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (4)
🟢membervault_list_courses
Lists the products (courses) in the MemberVault account with their ids. Read-only. Call this first: use one of these ids as course_id in the other tools. The vendor documents no reply fields, so the reply is the vendor's JSON as it is. MemberVault API: GET /api/get_courses.
Input Schema
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟡membervault_add_user(email, course_id, first_name, last_name)
Adds a user to a course (product). MemberVault finds an existing user with that email and does not create a duplicate, so the call is safe to repeat. Use course_id -1 to add the user with no product access. This changes the account. MemberVault API: GET /api/add_user.
Input Schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$",
"description": "The user's email address (the user's login in MemberVault)."
},
"course_id": {
"anyOf": [
{
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^-?\\d+$"
}
],
"description": "The course id from membervault_list_courses. Use -1 to add the user with no product access."
},
"first_name": {
"description": "The user's first name (used when the user is new).",
"type": "string",
"maxLength": 100
},
"last_name": {
"description": "The user's last name (used when the user is new).",
"type": "string",
"maxLength": 100
}
},
"required": [
"email",
"course_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴membervault_remove_user(email, course_id)
Removes a user's access to one course (product). The user stays in the MemberVault account, with their other courses and their progress. This changes the account at once. To delete the user entirely, use membervault_delete_user. MemberVault API: GET /api/remove_user.
Input Schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$",
"description": "The user's email address (the user's login in MemberVault)."
},
"course_id": {
"anyOf": [
{
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
{
"type": "string",
"pattern": "^[1-9]\\d*$"
}
],
"description": "The course id from membervault_list_courses (a real course, not -1)."
}
},
"required": [
"email",
"course_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🔴membervault_delete_user(email)
IRREVERSIBLE: permanently deletes a user from the MemberVault account, with all of their data, progress and quiz answers. MemberVault cannot undo it. Only call this when the user must be removed completely; to remove course access only, use membervault_remove_user. MemberVault API: GET /api/delete_user.
Input Schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"minLength": 3,
"maxLength": 254,
"pattern": "^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$",
"description": "The user's email address (the user's login in MemberVault)."
}
},
"required": [
"email"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence