项目简介

DollhouseMCP服务器是一个基于Model Context Protocol (MCP) 构建的后端应用,旨在为大型语言模型(LLM)客户端提供丰富的上下文信息、可调用的外部工具和灵活的Prompt模板。它通过标准化方式管理和提供多种“自定义元素”(如角色、技能、模板、代理和记忆),并通过JSON-RPC协议与LLM客户端进行通信,从而实现AI能力的深度定制和扩展。

主要功能点

  • 上下文管理: 托管和管理AI的“自定义元素”,包括:
    • 角色(Personas): 定义AI的行为和回应风格。
    • 技能(Skills): 赋予AI专业能力,如代码审查、数据分析、API集成等。
    • 模板(Templates): 确保AI输出内容的一致性和高质量,如项目提案、报告格式等。
    • 代理(Agents): 使AI能够自主完成复杂任务,如自动化代码审查、研究助理等。
    • 记忆(Memory): 提供跨会话的持久化上下文存储,支持智能组织和快速查询。
  • 工具集成: 支持LLM调用外部功能,目前已集成41个专业工具,用于元素的创建、编辑和管理。
  • Prompt模板: 支持未来定义和渲染可定制的LLM交互模式(Prompt模板功能计划中)。
  • 会话管理与能力声明: 负责客户端会话的生命周期管理,并向客户端声明其所支持的功能。
  • 多传输协议: 支持Stdio等多种传输协议,方便与各类LLM客户端集成。
  • 安全与可扩展性: 采用企业级安全措施,确保数据保护和服务的可扩展性。

安装步骤

DollhouseMCP服务器推荐使用npm进行本地安装,以获得最佳的灵活性和多配置支持。

  1. 创建MCP服务器专用目录:
    mkdir ~/mcp-servers
    cd ~/mcp-servers
  2. 安装DollhouseMCP服务器:
    npm install @dollhousemcp/mcp-server
    这将把DollhouseMCP服务器安装到您指定目录下的'node_modules'文件夹中。

服务器配置

安装完成后,您需要配置您的MCP客户端(例如Claude Desktop)来连接DollhouseMCP服务器。配置通常是一个JSON文件,您需要在其中指定服务器的启动命令和参数。

以下是Claude Desktop的示例配置路径,请根据您的操作系统找到对应的文件:

  • macOS: '~/Library/Application Support/Claude/claude_desktop_config.json'
  • Windows: '%APPDATA%\Claude\claude_desktop_config.json'
  • Linux: '~/.config/Claude/claude_desktop_config.json'

在配置中,您需要为DollhouseMCP服务器添加一个条目。以下是一个示例配置:

{
  "mcpServers": {
    "dollhousemcp": {
      "command": "node",
      "args": ["/Users/YOUR_USERNAME/mcp-servers/node_modules/@dollhousemcp/mcp-server/dist/index.js"]
    }
  }
}
  • 'server name' ('"dollhousemcp"'): 这是您在MCP客户端中识别该服务器的名称。
  • 'command' ('"node"'): 用于启动MCP服务器的执行命令,此处为Node.js运行时。
  • 'args' ('["/Users/YOUR_USERNAME/mcp-servers/node_modules/@dollhousemcp/mcp-server/dist/index.js"]'): 传递给'command'的参数。这里是DollhouseMCP服务器主程序的路径。请将'/Users/YOUR_USERNAME'替换为您的实际用户主目录路径。

💡 提示: 确保在修改配置文件后重启您的MCP客户端,以便新的服务器配置生效。您也可以选择使用'npx'或全局安装方式启动服务器,详情请参考项目README。

基本使用方法

配置完成后,您可以在MCP客户端的聊天界面中通过自然语言或直接命令来与DollhouseMCP服务器交互:

  • 浏览可用角色(Personas):
    • 自然语言:'"Show me all available personas"'
    • 直接命令:'list_elements type="personas"'
  • 激活特定角色:
    • 自然语言:'"Activate the creative writer persona"'
    • 直接命令:'activate_element name="creative-writer" type="personas"'
  • 从社区集合安装元素:
    • 自然语言:'"Install the storyteller persona from the collection"'
    • 直接命令:'install_content path="library/personas/storyteller.md"'
  • 创建自定义元素:
    • 自然语言:'"Create a new persona for science fiction writing"'
    • 直接命令(通过LLM引导):LLM将与您对话以收集所需特性并创建角色。
  • 管理您的个人元素库:
    • 自然语言:'"What's in my portfolio?"'
    • 直接命令:'portfolio_status'

信息

分类

AI与计算