README.npm.mdā¢9.8 kB
# DollhouseMCP
[](https://www.npmjs.com/package/@dollhousemcp/mcp-server)
[](https://modelcontextprotocol.io)
[](https://www.gnu.org/licenses/agpl-3.0)
[](https://github.com/DollhouseMCP/mcp-server/actions/workflows/core-build-test.yml)
A comprehensive Model Context Protocol (MCP) server that enables dynamic AI persona management with an integrated GitHub-powered collection. DollhouseMCP allows Claude and other compatible AI assistants to activate different behavioral personas while supporting community sharing and monetization.
**š Repository**: https://github.com/DollhouseMCP/mcp-server
**šŖ Collection**: https://github.com/DollhouseMCP/collection
**š¦ NPM Package**: https://www.npmjs.com/package/@dollhousemcp/mcp-server
**š Website**: https://dollhousemcp.com
## š¦ Installation
### Choose Your Installation Method
<table>
<tr>
<th>Method</th>
<th>Best For</th>
<th>Pros</th>
<th>Cons</th>
</tr>
<tr>
<td><strong>Local Install</strong><br>(Recommended)</td>
<td>Most users, multiple configs, customization</td>
<td>ā
Multiple setups<br>ā
Easy backup<br>ā
No permissions</td>
<td>ā Longer path in config</td>
</tr>
<tr>
<td><strong>npx</strong></td>
<td>Quick testing, always latest</td>
<td>ā
No install<br>ā
Always updated</td>
<td>ā Slower startup<br>ā Needs internet</td>
</tr>
<tr>
<td><strong>Global Install</strong></td>
<td>Single shared instance</td>
<td>ā
Short command</td>
<td>ā Only one version<br>ā Needs sudo/admin</td>
</tr>
</table>
---
### Method 1: Local Installation (Recommended)
Create a dedicated folder for your MCP servers and install there:
```bash
# Create MCP servers directory
mkdir ~/mcp-servers
cd ~/mcp-servers
# Install DollhouseMCP
npm install @dollhousemcp/mcp-server
```
**Configure Claude Desktop:**
Add to your config file:
- **macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`
- **Windows**: `%APPDATA%\Claude\claude_desktop_config.json`
- **Linux**: `~/.config/Claude/claude_desktop_config.json`
```json
{
"mcpServers": {
"dollhousemcp": {
"command": "node",
"args": ["/Users/YOUR_USERNAME/mcp-servers/node_modules/@dollhousemcp/mcp-server/dist/index.js"]
}
}
}
```
š” **Pro tip**: Replace `/Users/YOUR_USERNAME` with your actual home directory path.
---
### Method 2: Always Latest with npx
No installation needed! Configure Claude Desktop to always use the latest version:
```json
{
"mcpServers": {
"dollhousemcp": {
"command": "npx",
"args": ["@dollhousemcp/mcp-server@latest"]
}
}
}
```
š **Note**: The `@latest` tag ensures you always get the newest version. Remove it to use npm's cached version.
---
### Method 3: Global Installation
```bash
# Install globally (may require sudo/admin)
npm install -g @dollhousemcp/mcp-server
```
**Configure Claude Desktop:**
```json
{
"mcpServers": {
"dollhousemcp": {
"command": "dollhousemcp"
}
}
}
```
ā ļø **Warning**: Only one version system-wide. Consider local installation for more flexibility.
---
### šÆ Advanced: Multiple Configurations
Want separate portfolios for different contexts? Create multiple local installations:
```bash
# Personal assistant
mkdir ~/mcp-servers/personal
cd ~/mcp-servers/personal
npm install @dollhousemcp/mcp-server
# Work assistant
mkdir ~/mcp-servers/work
cd ~/mcp-servers/work
npm install @dollhousemcp/mcp-server
# Creative writing
mkdir ~/mcp-servers/creative
cd ~/mcp-servers/creative
npm install @dollhousemcp/mcp-server
```
**Configure each with its own portfolio:**
```json
{
"mcpServers": {
"dollhouse-personal": {
"command": "node",
"args": ["/Users/YOU/mcp-servers/personal/node_modules/@dollhousemcp/mcp-server/dist/index.js"],
"env": {
"DOLLHOUSE_PORTFOLIO_DIR": "/Users/YOU/portfolios/personal"
}
},
"dollhouse-work": {
"command": "node",
"args": ["/Users/YOU/mcp-servers/work/node_modules/@dollhousemcp/mcp-server/dist/index.js"],
"env": {
"DOLLHOUSE_PORTFOLIO_DIR": "/Users/YOU/portfolios/work"
}
}
}
}
```
Now you can enable/disable different configurations in Claude Desktop as needed!
---
### ā
Verify Installation
After configuring and restarting Claude Desktop, test with:
```
list_elements type="personas"
```
You should see your available personas. If not, check the [Troubleshooting](#-troubleshooting) section.
---
### š Default Portfolio Location
By default, your elements are stored in:
- **macOS/Linux**: `~/.dollhouse/portfolio/`
- **Windows**: `%USERPROFILE%\.dollhouse\portfolio\`
Use the `DOLLHOUSE_PORTFOLIO_DIR` environment variable to customize this location.
## š Quick Start
Once installed, try these commands in Claude:
```bash
# Browse available personas
list_elements type="personas"
# Activate a persona
activate_element name="creative-writer" type="personas"
# Browse the community collection
browse_collection type="personas"
# Search for specific content
search_collection query="python" type="skills"
```
> **š New User?** Follow our [Roundtrip Workflow Guide](docs/guides/ROUNDTRIP_WORKFLOW_USER_GUIDE.md) for a complete walkthrough of discovering, customizing, and sharing AI elements with the community.
## ⨠Key Features
| Feature | Description |
|---------|-------------|
| š **41 MCP Tools** | Complete portfolio element management through chat interface |
| šŖ **GitHub Collection** | Browse, search, install, and submit personas to community collection |
| š **Roundtrip Workflow** | Complete cycle: discover ā customize ā share ā collaborate |
| š **GitHub Portfolio** | Personal repository for storing and versioning your AI elements |
| š¤ **User Identity System** | Environment-based attribution for persona creators |
| š **Unique ID System** | Advanced ID generation: `{type}_{name}_{author}_{YYYYMMDD}-{HHMMSS}` |
| š¬ **Chat-Based Management** | Create, edit, and validate personas through conversational interface |
| š **Real-time Operations** | Live editing with automatic version bumping and validation |
| š¦ **NPM Installation** | Install MCP servers from npm with cross-platform support and atomic operations |
| š”ļø **Data Protection** | Copy-on-write for default personas, comprehensive backup system |
| š **Local-First Architecture** | Full functionality without cloud dependency |
## šØ Portfolio Elements
DollhouseMCP supports multiple element types for customizing AI behavior:
| Element | Purpose | Status |
|---------|---------|--------|
| š **Personas** | Define AI personality, tone, and behavioral characteristics | ā
Available |
| š ļø **Skills** | Add specific capabilities like code review, data analysis, or creative writing | ā
Available |
| š **Templates** | Create reusable response formats for emails, reports, documentation | ā
Available |
| š¤ **Agents** | Build autonomous assistants that can pursue goals and make decisions | ā
Available |
| š¬ **Prompts** | Pre-configured conversation starters and structured interactions | š Coming Soon |
| š§ **Memory** | Persistent context storage with retention policies and search capabilities | š Coming Soon |
| šÆ **Ensemble** | Orchestrate multiple elements together as one unified entity | š Coming Soon |
Your portfolio lives in `~/.dollhouse/portfolio/` with elements organized by type.
## š§ Troubleshooting
### Common Issues
| Issue | Solution |
|-------|----------|
| **Personas not loading** | Check `~/.dollhouse/portfolio/personas/` directory exists |
| **Server won't start** | Ensure Node.js v20+ is installed: `node --version` |
| **Collection not working** | Check internet connection and GitHub API access |
| **Tools not appearing in Claude** | Restart Claude Desktop completely after config changes |
| **"Cannot find module" errors** | Reinstall: `npm install -g @dollhousemcp/mcp-server@latest` |
| **Rate limit errors** | Wait 60 seconds; GitHub API has hourly limits |
### Need Help?
- š [Full Troubleshooting Guide](docs/TROUBLESHOOTING.md)
- š¬ [GitHub Issues](https://github.com/DollhouseMCP/mcp-server/issues)
- š [GitHub Discussions](https://github.com/DollhouseMCP/mcp-server/discussions)
## š Resources
### Documentation
- [Roundtrip Workflow Guide](docs/guides/ROUNDTRIP_WORKFLOW_USER_GUIDE.md)
- [Portfolio Setup Guide](docs/guides/PORTFOLIO_SETUP_GUIDE.md)
- [Element Detection Guide](docs/guides/ELEMENT_DETECTION_GUIDE.md)
- [PersonaTools Migration Guide](docs/PERSONATOOLS_MIGRATION_GUIDE.md)
- [API Documentation](docs/API.md)
### Community
- [GitHub Repository](https://github.com/DollhouseMCP/mcp-server)
- [NPM Package](https://www.npmjs.com/package/@dollhousemcp/mcp-server)
- [Community Collection](https://github.com/DollhouseMCP/collection)
- [Discord Community](https://discord.gg/dollhousemcp) (coming soon)
### Development
- [Contributing Guide](CONTRIBUTING.md)
- [Security Policy](SECURITY.md)
- [Full Changelog](CHANGELOG.md)
## š License
DollhouseMCP is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).
### What this means:
- ā
**Free to use** for personal and commercial purposes
- ā
**Modify and distribute** with the same license
- ā
**Network use** requires source code disclosure
- ā
**Platform stability** commitments protect users
See [LICENSE](LICENSE) for full terms.
---
*Built with ā¤ļø by the DollhouseMCP team*