open-index/open-npm huggingface dataset:
npm package: @lorikeetai/mcp
Description: Lorikeet MCP
Latest version: 1.0.0

# Lorikeet MCP

## Setup

```bash
pnpm install
```

## Build

```bash
pnpm build
```

## Setup Claude desktop

Add the following to your `~/.config/claude/claude_desktop_config.json` file:

(Actual path may vary)

```json
{
  "mcpServers": {
    "lorikeet-mcp": {
      "command": "node",
      "args": [
        "--env-file",
        "~/repos/support/apps/lorikeet-mcp/.env",
        "~/repos/support/apps/lorikeet-mcp/dist/index.js"
      ]
    }
  }
}
```
npm package: @lorikeetai/mcp-server
Description: Lorikeet MCP
Latest version: 1.0.0

# Lorikeet MCP Server

A Model Context Protocol (MCP) server that provides access to Lorikeet workflows and resources through a standardized interface. This server allows AI assistants and other MCP clients to interact with Lorikeet's workflow management system.

## Prerequisites

- Node.js 22+
- pnpm package manager
- Lorikeet API credentials

## Setup

1. **Install dependencies**:

   ```bash
   pnpm install
   ```

2. **Configure environment variables**:
   Create a `.env` file with your Lorikeet credentials:

   ```env
   LORIKEET_CLIENT_ID=your_client_id
   LORIKEET_CLIENT_SECRET=your_client_secret
   ```

3. **Build the project**:
   ```bash
   pnpm build
   ```

## Usage

### Development

Start the development server with hot reloading:

```bash
pnpm watch
```

### Production

Start the production server:

```bash
pnpm start
```

### Using the MCP Inspector

For debugging and testing MCP connections:

```bash
pnpm dev
```

This will start the server and launch the MCP Inspector, allowing you to interact with the server through a web interface.

## API Endpoints

### MCP Endpoint

- **POST** `/mcp` - Main MCP communication endpoint
- **GET** `/mcp` - Returns 405 Method Not Allowed (per MCP spec)

### Health Check

- **GET** `/health` - Returns server status and active session count

## MCP Resources

### Workflow Resource

- **URI Pattern**: `lorikeet://workflow/{id}`
- **Description**: Retrieves a specific workflow by ID
- **Content Type**: JSON

### Workflow List Tool

- **Tool Name**: `getWorkflows`
- **Description**: Returns all workflows belonging to the user
- **Returns**: Array of workflow resources

## Example Usage

### Connecting with an MCP Client

```javascript
// Example MCP client connection
const client = new McpClient({
  server: {
    command: 'node',
    args: ['dist/index.js'],
    env: {
      LORIKEET_CLIENT_ID: 'your_client_id',
      LORIKEET_CLIENT_SECRET: 'your_client_secret',
    },
  },
})

// Initialize connection
await client.initialize()

// List workflows
const workflows = await client.listResources('lorikeet://workflow/*')

// Get specific workflow
const workflow = await client.readResource(
  'lorikeet://workflow/dd96a0cc-01db-4f67-b0ac-8213bcc66ff8',
)
```

### HTTP API Usage

```bash
# Health check
curl http://localhost:3000/health

# MCP initialization
curl -X POST http://localhost:3000/mcp \
  -H "Content-Type: application/json" \
  -d '{
    "jsonrpc": "2.0",
    "id": 1,
    "method": "initialize",
    "params": {
      "protocolVersion": "2024-11-05",
      "capabilities": {},
      "clientInfo": {
        "name": "test-client",
        "version": "1.0.0"
      }
    }
  }'
```