@xferops/forge-mcp 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,50 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+
8
+ jobs:
9
+ release:
10
+ runs-on: ubuntu-latest
11
+ permissions:
12
+ contents: read
13
+ id-token: write
14
+
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+
18
+ - uses: actions/setup-node@v4
19
+ with:
20
+ node-version: '20'
21
+ registry-url: 'https://registry.npmjs.org'
22
+
23
+ - name: Install dependencies
24
+ run: npm ci
25
+
26
+ - name: Build
27
+ run: npm run build
28
+
29
+ - name: Extract version from tag
30
+ id: version
31
+ run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT
32
+
33
+ - name: Publish to npm
34
+ run: npm publish --access public
35
+ env:
36
+ NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
37
+
38
+ - name: Install ClawHub CLI
39
+ run: npm install -g clawhub
40
+
41
+ - name: Publish skill to ClawHub
42
+ run: |
43
+ clawhub login --token "$CLAWHUB_TOKEN" --no-browser
44
+ clawhub publish ./skill \
45
+ --slug xferops-forge \
46
+ --name "XferOps Forge" \
47
+ --version ${{ steps.version.outputs.VERSION }} \
48
+ --changelog "Release ${{ steps.version.outputs.VERSION }}"
49
+ env:
50
+ CLAWHUB_TOKEN: ${{ secrets.CLAWHUB_TOKEN }}
package/README.md ADDED
@@ -0,0 +1,225 @@
1
+ # ⚒️ Forge MCP Server
2
+
3
+ MCP (Model Context Protocol) server for [Forge](https://forge.xferops.dev) — XferOps' project management system.
4
+
5
+ Works with **Claude Code**, **OpenAI Codex**, **OpenClaw/mcporter**, and any MCP-compatible consumer.
6
+
7
+ > **Migrated from `@xferops/flower-mcp`** — see [Migration Guide](#migration-guide) below.
8
+
9
+ ## Quick Start
10
+
11
+ ### 1. Get Your API Token
12
+
13
+ 1. Go to [forge.xferops.dev/settings](https://forge.xferops.dev/settings)
14
+ 2. Click **New Token** in the API Tokens section
15
+ 3. Give it a descriptive name and click **Create Token**
16
+ 4. Copy the token (it won't be shown again!)
17
+
18
+ ### 2. Install
19
+
20
+ ```bash
21
+ npm install -g @xferops/forge-mcp
22
+ ```
23
+
24
+ Or use with npx (no install needed):
25
+ ```bash
26
+ npx @xferops/forge-mcp
27
+ ```
28
+
29
+ ### 3. Configure Your MCP Consumer
30
+
31
+ See setup instructions below for your specific tool.
32
+
33
+ ---
34
+
35
+ ## Setup Instructions
36
+
37
+ ### Claude Code (`claude_desktop_config.json`)
38
+
39
+ Add to `~/.config/claude/claude_desktop_config.json` (macOS/Linux) or `%APPDATA%\Claude\claude_desktop_config.json` (Windows):
40
+
41
+ ```json
42
+ {
43
+ "mcpServers": {
44
+ "forge": {
45
+ "command": "npx",
46
+ "args": ["-y", "@xferops/forge-mcp"],
47
+ "env": {
48
+ "FORGE_URL": "https://forge.xferops.dev",
49
+ "FORGE_TOKEN": "your-api-token-here"
50
+ }
51
+ }
52
+ }
53
+ }
54
+ ```
55
+
56
+ ### OpenClaw / mcporter
57
+
58
+ Add to `~/.mcporter/mcporter.json`:
59
+
60
+ ```json
61
+ {
62
+ "mcpServers": {
63
+ "forge": {
64
+ "command": "npx",
65
+ "args": ["-y", "@xferops/forge-mcp"],
66
+ "env": {
67
+ "FORGE_URL": "https://forge.xferops.dev",
68
+ "FORGE_TOKEN": "your-api-token-here"
69
+ }
70
+ }
71
+ }
72
+ }
73
+ ```
74
+
75
+ Then use with mcporter:
76
+ ```bash
77
+ mcporter call forge.forge_list_teams
78
+ mcporter call forge.forge_get_project projectId=abc123
79
+ mcporter call forge.forge_search_tasks query="ADM-5"
80
+ ```
81
+
82
+ ### Environment Variables
83
+
84
+ | Variable | Required | Default | Description |
85
+ |----------|----------|---------|-------------|
86
+ | `FORGE_TOKEN` | Yes | — | Your API token from forge.xferops.dev/settings |
87
+ | `FORGE_URL` | No | `https://forge.xferops.dev` | API base URL |
88
+ | `FLOWER_TOKEN` | No | — | Legacy alias for `FORGE_TOKEN` (deprecated) |
89
+ | `FLOWER_URL` | No | — | Legacy alias for `FORGE_URL` (deprecated) |
90
+ | `KANBAN_TOKEN` | No | — | Legacy alias for `FORGE_TOKEN` (deprecated) |
91
+ | `KANBAN_URL` | No | — | Legacy alias for `FORGE_URL` (deprecated) |
92
+
93
+ ---
94
+
95
+ ## Available Tools (26)
96
+
97
+ ### Health
98
+ | Tool | Description |
99
+ |------|-------------|
100
+ | `forge_health_check` | Check API connectivity and configured URL |
101
+
102
+ ### Teams
103
+ | Tool | Description |
104
+ |------|-------------|
105
+ | `forge_list_teams` | List all teams you belong to |
106
+ | `forge_create_team` | Create a new team |
107
+ | `forge_list_team_members` | List team members (get user IDs for assignment) |
108
+ | `forge_add_team_member` | Add a user to a team by email |
109
+
110
+ ### Projects
111
+ | Tool | Description |
112
+ |------|-------------|
113
+ | `forge_list_projects` | List projects in a team |
114
+ | `forge_get_project` | Get project with all columns and tasks |
115
+ | `forge_create_project` | Create a new project |
116
+ | `forge_update_project` | Update project name/prefix |
117
+ | `forge_delete_project` | Delete a project |
118
+
119
+ ### Columns
120
+ | Tool | Description |
121
+ |------|-------------|
122
+ | `forge_create_column` | Create a column (e.g., "Backlog", "Done") |
123
+ | `forge_update_column` | Rename a column |
124
+ | `forge_delete_column` | Delete a column (optionally move tasks) |
125
+ | `forge_reorder_columns` | Reorder columns |
126
+
127
+ ### Tasks
128
+ | Tool | Description |
129
+ |------|-------------|
130
+ | `forge_get_task` | Get a single task by ID |
131
+ | `forge_list_tasks` | List all tasks in a project |
132
+ | `forge_search_tasks` | Search tasks by title/description/ticket ID (e.g., "ADM-5") |
133
+ | `forge_create_task` | Create a new task |
134
+ | `forge_update_task` | Update task or move to different column |
135
+ | `forge_move_task` | Move task to a different column (convenience wrapper) |
136
+ | `forge_delete_task` | Delete a task |
137
+ | `forge_reorder_task` | Move task to specific position within a column |
138
+
139
+ ### Comments
140
+ | Tool | Description |
141
+ |------|-------------|
142
+ | `forge_list_comments` | List comments on a task |
143
+ | `forge_create_comment` | Add a comment |
144
+ | `forge_update_comment` | Edit your comment |
145
+ | `forge_delete_comment` | Delete your comment |
146
+
147
+ ---
148
+
149
+ ## Migration Guide
150
+
151
+ Migrating from `@xferops/flower-mcp`?
152
+
153
+ ### 1. Update your MCP config
154
+
155
+ ```diff
156
+ - "command": "npx",
157
+ - "args": ["-y", "@xferops/flower-mcp"],
158
+ - "env": {
159
+ - "FLOWER_URL": "https://flower.xferops.dev",
160
+ - "FLOWER_TOKEN": "your-token"
161
+ - }
162
+ + "command": "npx",
163
+ + "args": ["-y", "@xferops/forge-mcp"],
164
+ + "env": {
165
+ + "FORGE_URL": "https://forge.xferops.dev",
166
+ + "FORGE_TOKEN": "your-token"
167
+ + }
168
+ ```
169
+
170
+ ### 2. Update tool calls
171
+
172
+ All tools are renamed from `flower_*` to `forge_*`:
173
+
174
+ ```diff
175
+ - flower_search_tasks query="ADM-5"
176
+ + forge_search_tasks query="ADM-5"
177
+ ```
178
+
179
+ **Note:** `FLOWER_URL` / `FLOWER_TOKEN` env vars are still accepted as fallbacks during the transition period.
180
+
181
+ ---
182
+
183
+ ## Development
184
+
185
+ ```bash
186
+ git clone https://github.com/XferOps/forge-mcp.git
187
+ cd forge-mcp
188
+ npm install
189
+ npm run build
190
+
191
+ # Run locally
192
+ FORGE_TOKEN=your-token node dist/index.js
193
+ ```
194
+
195
+ ---
196
+
197
+ ## OpenClaw Skill
198
+
199
+ Install via ClawHub:
200
+
201
+ ```bash
202
+ npx clawhub@latest install xferops-forge
203
+ ```
204
+
205
+ ---
206
+
207
+ ## Versioning
208
+
209
+ | Tag | Version |
210
+ |-----|---------|
211
+ | `v2.x` | Forge MCP (`@xferops/forge-mcp`) |
212
+ | `v1.x` | Flower MCP (`@xferops/flower-mcp`) — deprecated |
213
+
214
+ Tag and release:
215
+ ```bash
216
+ git tag v2.x.x && git push --tags
217
+ ```
218
+
219
+ CI will publish to npm and ClawHub automatically.
220
+
221
+ ---
222
+
223
+ ## License
224
+
225
+ MIT © [XferOps](https://xferops.com)
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Forge MCP Server
4
+ *
5
+ * MCP (Model Context Protocol) server for interacting with the Forge API.
6
+ * Forge is XferOps' project management system (formerly Flower/Kanban).
7
+ *
8
+ * Works with: Claude Code, OpenAI Codex, OpenClaw/mcporter, and any MCP consumer.
9
+ *
10
+ * @see https://forge.xferops.dev/docs for API documentation
11
+ */
12
+ export {};