open-index/open-npm huggingface dataset:
npm package: @pinksundew/mcp
Description: Kanban MCP Server for Pink Sundew
Latest version: 1.3.1

# Pink Sundew MCP Server

Model Context Protocol server for Pink Sundew's Kanban bridge API.

This server is project-first: it can read boards, inspect tickets, move work between active stages, manage tags, export prompts, and restore tasks from the abyss.

## Install

```bash
npm install -g @pinksundew/mcp
```

## Required environment variables

- `AGENTPLANNER_API_KEY`: API key created in the Pink Sundew dashboard.
- `AGENTPLANNER_PROJECT_ID`: Single project UUID the agent can access. **Strict mode**: Only one project ID is allowed per workspace to prevent context drift.
- `AGENTPLANNER_CLIENT_ENV`: Optional. Client environment targeting for instruction files. Valid values: `cursor`, `claude`, `windsurf`, `vscode`, `codex`, `antigravity`. Defaults to `.agentrules` if not specified.
- `AGENTPLANNER_URL`: Optional. Defaults to `https://pinksundew.com`.

`get_project_board` enforces instruction hydration for markdown files: when `.md` metadata is returned, the server checks `content_hash`, fetches new/changed files, and fails if any markdown content cannot be resolved.

### Client Environment Output Files

| CLIENT_ENV   | Output File                      |
|--------------|----------------------------------|
| cursor       | .cursorrules                     |
| claude       | CLAUDE.md                        |
| windsurf     | .windsurfrules                   |
| vscode       | .github/copilot-instructions.md  |
| codex        | codex.md                         |
| antigravity  | antigravity.md                   |
| (default)    | .agentrules                      |

### Non-Destructive Sync

The instruction sync uses an **Injection Block** pattern to preserve user-defined content. Cloud instructions are wrapped in HTML comment markers:

```markdown
<!-- BEGIN:pinksundew-sync -->
// AUTO-GENERATED BY PINK SUNDEW - DO NOT EDIT THIS BLOCK
// Last synced: 2024-01-15T10:30:00.000Z
// Project: My Project

Your cloud instructions here...
<!-- END:pinksundew-sync -->
```

- **New files**: Creates the file with the sync block
- **Existing files with sync block**: Updates only the content between markers
- **Existing files without sync block**: Appends the sync block to the end

Your custom instructions outside the markers are always preserved.

## Run

```bash
AGENTPLANNER_API_KEY=your_api_key \
AGENTPLANNER_PROJECT_ID=project-uuid \
AGENTPLANNER_CLIENT_ENV=cursor \
pinksundew-mcp
```

## Example MCP client configuration

```json
{
  "mcpServers": {
    "pinksundew": {
      "command": "npx",
      "args": ["-y", "@pinksundew/mcp"],
      "env": {
        "AGENTPLANNER_API_KEY": "your_api_key",
        "AGENTPLANNER_PROJECT_ID": "your_project_id",
        "AGENTPLANNER_CLIENT_ENV": "vscode"
      }
    }
  }
}
```

## Development

```bash
npm install
npm run build
```