open-index/open-npm huggingface dataset:
npm package: @iflow-mcp/clerk-mcp-demo-express
Description: A demo MCP server using Clerk andexpress
Author: Jeff Escalante
Latest version: 0.2.2

# Express & Clerk MCP Server Demo

The simplest, most bare bones implementation of an MCP server, using express. At the moment, it only exposes a streamable http handler. It could be adapted to handle SSE as well if necessary though. The purpose of this example is to serve as a proof of concept!

### Getting started

- Run `npm i` to install dependencies
- Run `cp .env.sample .env` and copy your Clerk API keys [from your dashboard](https://dashboard.clerk.com/last-active?path=api-keys) into the `.env` file
- Run `npm start` to start the server
- You should be able to connect to it now from any client that supports tha latest version of the MCP spec. A cursor configuration is provided as a test.

### HTTPS Setup (Optional)

By default, the server runs on HTTP only. To enable HTTPS for development (useful for testing with some clients), you'll need to generate locally trusted certificates:

1. **Install mkcert** (if not already installed):

   ```bash
   # macOS
   brew install mkcert

   # Windows (using Chocolatey)
   choco install mkcert

   # Linux
   # See https://github.com/FiloSottile/mkcert#installation
   ```

2. **Setup local certificate authority**:

   ```bash
   mkcert -install
   ```

3. **Generate certificates**:

   ```bash
   mkcert localhost 127.0.0.1 ::1
   mkdir -p cert
   mv localhost+2*.pem cert/
   ```

4. **Restart the server** - it will automatically detect the certificates and start both HTTP (port 3000) and HTTPS (port 3001) servers.

The certificates are gitignored, so each developer needs to generate their own locally trusted certificates.
npm package: @iflow-mcp/cline-personas
Description: An MCP Server that lets you implement personas in Cline via the `.clinerules` file.
Author: Brad Fair
Latest version: 0.1.0

# 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:
```bash
npm install
```
3. Build the project:
```bash
npm run build
```

## Usage

### Managing Components

```typescript
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

```typescript
// 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:
```bash
npm test
```

Build the project:
```bash
npm run build
```

Run the MCP server:
```bash
npm start