@xferops/flower-mcp
v1.0.4
Published
MCP server for Flower (XferOps project management) - works with Claude Code, Codex, OpenClaw, and any MCP consumer
Downloads
376
Readme
🌸 Flower MCP Server
MCP (Model Context Protocol) server for Flower — XferOps' project management system.
Works with Claude Code, OpenAI Codex, OpenClaw/mcporter, and any MCP-compatible consumer.
Quick Start
1. Get Your API Token
- Go to flower.xferops.com/settings
- Click New Token in the API Tokens section
- Give it a descriptive name and click Create Token
- Copy the token (it won't be shown again!)
2. Install
npm install -g @xferops/flower-mcpOr clone and build:
git clone https://github.com/XferOps/flower-mcp.git
cd flower-mcp
npm install
npm run build3. Configure Your MCP Consumer
See setup instructions below for your specific tool.
Setup Instructions
Claude Code (claude_desktop_config.json)
Add to ~/.config/claude/claude_desktop_config.json (macOS/Linux) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"flower": {
"command": "npx",
"args": ["-y", "@xferops/flower-mcp"],
"env": {
"FLOWER_URL": "https://flower.xferops.com",
"FLOWER_TOKEN": "your-api-token-here"
}
}
}
}Or if installed locally:
{
"mcpServers": {
"flower": {
"command": "node",
"args": ["/path/to/flower-mcp/dist/index.js"],
"env": {
"FLOWER_URL": "https://flower.xferops.com",
"FLOWER_TOKEN": "your-api-token-here"
}
}
}
}OpenClaw / mcporter
Add to ~/.mcporter/mcporter.json:
{
"mcpServers": {
"flower": {
"command": "npx",
"args": ["-y", "@xferops/flower-mcp"],
"env": {
"FLOWER_URL": "https://flower.xferops.com",
"FLOWER_TOKEN": "your-api-token-here"
}
}
}
}Then use with mcporter:
mcporter call flower.flower_list_teams
mcporter call flower.flower_get_project projectId=abc123OpenAI Codex / Generic MCP
Set environment variables and run:
export FLOWER_URL="https://flower.xferops.com"
export FLOWER_TOKEN="your-api-token-here"
# Run directly
npx @xferops/flower-mcp
# Or if built locally
node dist/index.jsEnvironment Variables
| Variable | Required | Default | Description |
|----------|----------|---------|-------------|
| FLOWER_TOKEN | Yes | - | Your API token from flower.xferops.com/settings |
| FLOWER_URL | No | https://flower.xferops.com | API base URL |
| KANBAN_TOKEN | No | - | Legacy alias for FLOWER_TOKEN |
| KANBAN_URL | No | - | Legacy alias for FLOWER_URL |
Available Tools
Health
| Tool | Description |
|------|-------------|
| flower_health_check | Check API connectivity |
Teams
| Tool | Description |
|------|-------------|
| flower_list_teams | List all teams you belong to |
| flower_create_team | Create a new team |
| flower_list_team_members | List team members (get user IDs for assignment) |
| flower_add_team_member | Add a user to a team by email |
Projects
| Tool | Description |
|------|-------------|
| flower_list_projects | List projects in a team |
| flower_get_project | Get project with all columns and tasks |
| flower_create_project | Create a new project |
| flower_update_project | Update project name/prefix |
| flower_delete_project | Delete a project |
Columns
| Tool | Description |
|------|-------------|
| flower_create_column | Create a column (e.g., "Backlog", "Done") |
| flower_update_column | Rename a column |
| flower_delete_column | Delete a column (optionally move tasks) |
| flower_reorder_columns | Reorder columns |
Tasks
| Tool | Description |
|------|-------------|
| flower_get_task | Get a single task by ID |
| flower_list_tasks | List all tasks in a project |
| flower_search_tasks | Search tasks by title/description/ticket ID |
| flower_create_task | Create a new task |
| flower_update_task | Update task or move to different column |
| flower_delete_task | Delete a task |
| flower_reorder_task | Move task to specific position |
Comments
| Tool | Description |
|------|-------------|
| flower_list_comments | List comments on a task |
| flower_create_comment | Add a comment |
| flower_update_comment | Edit your comment |
| flower_delete_comment | Delete your comment |
Examples
List your teams and their projects
User: What teams am I in?
Assistant: [calls flower_list_teams]View a project board
User: Show me the v0.1 board
Assistant: [calls flower_get_project with projectId]Create a task
User: Create a bug ticket for the login issue
Assistant: [calls flower_create_task with type="BUG"]Move a task
User: Move ticket #123 to "In Progress"
Assistant: [calls flower_update_task with columnId]Search for tasks
User: Find all tasks about authentication
Assistant: [calls flower_search_tasks with query="authentication"]Add a comment
User: Add a comment to ticket #45 saying "Fixed in PR #67"
Assistant: [calls flower_create_comment with content]Development
# Install dependencies
npm install
# Build
npm run build
# Run in development (with hot reload)
npm run dev
# Test locally
FLOWER_TOKEN=your-token node dist/index.jsAPI Documentation
Full API documentation is available at flower.xferops.com/docs
Troubleshooting
"FLOWER_TOKEN environment variable not set"
Make sure you've set the token in your MCP consumer's configuration.
"Unauthorized" errors
- Check that your token is correct
- Ensure the token hasn't been revoked
- Generate a new token at flower.xferops.com/settings
Tool not found
Ensure you're using the correct tool names with the flower_ prefix.
OpenClaw Skill
This repo includes an OpenClaw skill in the skill/ directory.
Install the skill:
npx clawhub@latest install flowerThe skill is published to ClawHub and versioned alongside the MCP.
Versioning
This package follows semver. The version is kept in sync across:
- npm package (
@xferops/flower-mcp) - Git tags (
v1.0.0,v1.1.0, etc.) - OpenClaw skill (published to ClawHub)
When the Flower API changes:
- Update MCP tools in
src/ - Update skill docs in
skill/SKILL.md - Bump version in
package.json - Tag release:
git tag v1.x.x && git push --tags - Publish to npm:
npm publish - Publish skill:
clawhub publish ./skill --slug flower --version 1.x.x
License
MIT © XferOps
