MCP ExplorerExplorer

Mcp Cline Personas

@bradfairon 9 months ago
21 MIT
FreeCommunity
AI Systems
An MCP server for managing `.clinerules` files using shared components and persona templates.

Overview

What is Mcp Cline Personas

mcp-cline-personas is an MCP server designed for managing .clinerules files through the use of shared components and persona templates, allowing for efficient organization and reuse of content.

Use cases

Use cases for mcp-cline-personas include creating dynamic user experiences by managing personalized messages, maintaining consistency across applications by reusing components, and simplifying the management of persona templates for various user scenarios.

How to use

To use mcp-cline-personas, clone the repository, install the necessary dependencies using ‘npm install’, and build the project with ‘npm run build’. You can manage components and personas through the ComponentPersonaService class, which provides methods for creating, retrieving, and activating components and personas.

Key features

Key features include component management (CRUD operations), persona templates with variable substitution, dependency validation, an activation system for personas, version tracking for components and personas, and file-based storage in JSON format.

Where to use

undefined

Content

Cline Personas MCP Server

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
  1. 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:

npm start

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers