Cline Personas
About
Implements a persona management system for dynamic AI behavior adjustment using reusable components and templates defined in .clinerules files.
Details
- Repository
- bradfair/mcp-cline-personas
- License
- MIT
Explore
- Component Management: Create, read, update and delete reusable components
- Persona Templates: Define persona templates with mustache-style variable substitution
- Dependency Validation: Ensure persona templates only reference existing components
- Activation System: Activate personas by writing to .clinerules file
- Version Tracking: Track versions for both components and personas
- File-based Storage: Store components and personas as JSON files
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
Cline PersonasCommand (node, npx, python, etc.)npxArguments-
Argument 1
-y -
Argument 2
@highlight/mcp-server
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
1. Clone the repository
2. Install dependencies:
npm install
3. Build the project:
npm run build
setComponent
Create or update a component with the specified name, description, text, and version.
getComponent
Retrieve a component by its name.
listComponents
List all components available in the system.
deleteComponent
Delete a component by its name.
setPersona
Create or update a persona with the specified name, description, template, and version.
getPersona
Retrieve a persona by its name.
listPersonas
List all personas available in the system.
deletePersona
Delete a persona by its name.
activatePersona
Activate a persona by its name, writing to the .clinerules file.
getActivePersona
Retrieve the currently active persona.
renderPersona
Render a persona's template by its name.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"cline personas": {
"env": {},
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
}
}
Linux
{
"env": [],
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
Macos
{
"env": [],
"args": [
"-y",
"@highlight/mcp-server"
],
"command": "npx"
}
Windows
{
"env": [],
"args": [
"/c",
"npx",
"-y",
"@highlight/mcp-server"
],
"command": "cmd"
}
An MCP server for managing .clinerules files using shared components and persona templates.
Features
- Component Management: Create, read, update and delete reusable components
- Persona Templates: Define persona templates with mustache-style variable substitution
- Dependency Validation: Ensure persona templates only reference existing components
- Activation System: Activate personas by writing to .clinerules file
- Version Tracking: Track versions for both components and personas
- File-based Storage: Store components and personas as JSON files
Installation
1. Clone the repository
2. Install dependencies:
npm install
3. Build the project:
npm run build
Usage
Managing Components
import { ComponentPersonaService } from './src/service';
const service = new ComponentPersonaService(process.cwd());
// Create a new component
service.setComponent('greeting', 'Welcome message', 'Hello {{name}}!', 1);
// Get a component
const component = service.getComponent('greeting');
// List all components
const components = service.listComponents();
Managing Personas
// Create a new persona
service.setPersona(
'welcome',
'Welcome persona',
'{{greeting}}\nPlease enjoy your stay!',
1
);
// Activate a persona
service.activatePersona('welcome');
// Get active persona
const active = service.getActivePersona();
File Structure
.cline-personas/
components/
[component-name].json
personas/
[persona-name].json
src/
component.ts # Component class and operations
persona.ts # Persona class and template rendering
service.ts # Main service implementation
index.ts # MCP server entry point
test/ # Unit tests
API Documentation
ComponentPersonaService
The main service class providing all operations:
- Component Operations:
- setComponent(name, description, text, version)
- getComponent(name)
- listComponents()
- deleteComponent(name)
- Persona Operations:
- setPersona(name, description, template, version)
- getPersona(name)
- listPersonas()
- deletePersona(name)
- activatePersona(name)
- getActivePersona()
- renderPersona(name)
Development
Run tests:
npm test
Build the project:
npm run build
Run the MCP server:
```bash
npm start
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.



