mbti-mcp
v1.0.0
Published
MCP server for MBTI personality testing with AI assistance
Maintainers
Readme
MBTI MCP Server
一个用于MBTI人格测试的MCP服务器,支持AI助手引导用户完成人格测试并给出结果分析。
功能特性
两种测试模式
- 简化版(28题):基于四个维度(E/I, S/N, T/F, J/P)的快速测试
- 认知功能版(48题):基于Jung的8种认知功能的深度测试
无状态设计:所有测试状态通过JSON在工具调用间传递,无需服务端持久化
完整的测试流程
- 开始测试并选择类型
- 逐题回答(1-5分李克特量表)
- 查询测试进度
- 计算最终MBTI类型
配置
方式1:使用npx(推荐,无需安装)
在MCP客户端配置文件中添加(如 Claude Desktop 的 claude_desktop_config.json):
{
"mcpServers": {
"mbti": {
"command": "npx",
"args": ["-y", "mbti-mcp"]
}
}
}方式2:全局安装
npm install -g mbti-mcp然后在MCP配置文件中添加:
{
"mcpServers": {
"mbti": {
"command": "mbti-mcp"
}
}
}方式3:从源码安装
git clone https://github.com/wenyili/mbti-mcp.git
cd mbti-mcp
pnpm install
pnpm build在MCP配置文件中添加:
{
"mcpServers": {
"mbti": {
"command": "node",
"args": ["<项目路径>/dist/index.js"]
}
}
}注意:将 <项目路径> 替换为你的实际项目路径。
使用方法
1. 开始测试
使用 start_mbti_test 工具,选择测试类型:
{
"testType": "simplified"
}或
{
"testType": "cognitive"
}服务器将返回第一道题目和测试会话状态(session)。
2. 回答问题
使用 answer_question 工具提交答案:
{
"session": { /* 上一步返回的session对象 */ },
"score": 4
}评分标准:
- 1 = 强烈不同意
- 2 = 不同意
- 3 = 中立
- 4 = 同意
- 5 = 强烈同意
服务器将返回下一道题目和更新后的session。
3. 查询进度(可选)
使用 get_progress 工具查看当前进度:
{
"session": { /* 当前的session对象 */ }
}4. 计算结果
完成所有题目后,使用 calculate_mbti_result 工具:
{
"session": { /* 包含所有答案的session对象 */ }
}服务器将返回:
- MBTI类型(如INTJ、ENFP等)
- 各维度或认知功能的得分
- 类型描述
AI助手使用示例
用户可以这样与AI助手交互:
用户:我想做一个MBTI测试
AI:好的!我们提供两种测试:
1. 简化版(28题)- 快速评估
2. 认知功能版(48题)- 深度分析
你想选择哪一种?
用户:简化版
AI:[调用 start_mbti_test]
测试已开始!第1题:我在社交聚会上感到精力充沛
请从1-5分选择你的同意程度...
用户:4分
AI:[调用 answer_question]
答案已记录。第2题:独处时我能更好地恢复精力...项目结构
mbti/
├── src/
│ ├── index.ts # MCP服务器主文件
│ ├── types.ts # TypeScript类型定义
│ ├── questions.ts # 题库数据
│ └── calculator.ts # MBTI类型计算算法
├── dist/ # 编译输出
├── package.json
├── tsconfig.json
└── README.md技术栈
- TypeScript
- @modelcontextprotocol/sdk
- Node.js
16种MBTI类型
- 分析师: INTJ(建筑师), INTP(逻辑学家), ENTJ(指挥官), ENTP(辩论家)
- 外交官: INFJ(提倡者), INFP(调停者), ENFJ(主人公), ENFP(竞选者)
- 守护者: ISTJ(物流师), ISFJ(守卫者), ESTJ(总经理), ESFJ(执政官)
- 探险家: ISTP(鉴赏家), ISFP(探险家), ESTP(企业家), ESFP(表演者)
许可证
MIT
