huly-mcp-selfhost 2.0.0 → 2.1.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.
- package/README.md +18 -3
- package/dist/connection.js +1 -1
- package/dist/index.js +0 -0
- package/dist/schemas.d.ts +121 -433
- package/dist/schemas.js +36 -1
- package/dist/schemas.js.map +1 -1
- package/dist/server.js +6 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/channels.d.ts +2 -2
- package/dist/tools/comments.d.ts +1 -1
- package/dist/tools/components.d.ts +25 -1
- package/dist/tools/components.js +70 -2
- package/dist/tools/components.js.map +1 -1
- package/dist/tools/documents.d.ts +1 -1
- package/dist/tools/issues.d.ts +2 -2
- package/dist/tools/milestones.d.ts +36 -1
- package/dist/tools/milestones.js +102 -10
- package/dist/tools/milestones.js.map +1 -1
- package/dist/tools/organizations.d.ts +1 -1
- package/dist/tools/projects.d.ts +1 -1
- package/dist/tools/search.d.ts +1 -1
- package/dist/tools/workspaces.d.ts +1 -1
- package/dist/utils/format.d.ts +2 -0
- package/dist/utils/format.js +35 -0
- package/dist/utils/format.js.map +1 -1
- package/package.json +7 -4
package/README.md
CHANGED
|
@@ -31,7 +31,7 @@ This is a fork of [varaprasadreddy9676/huly-mcp](https://github.com/varaprasadre
|
|
|
31
31
|
|
|
32
32
|
---
|
|
33
33
|
|
|
34
|
-
## Tools (
|
|
34
|
+
## Tools (53 total)
|
|
35
35
|
|
|
36
36
|
All tools except `list_workspaces` take a `workspace` argument — required for every change, optional for reads when only one workspace is available.
|
|
37
37
|
|
|
@@ -60,8 +60,13 @@ All tools except `list_workspaces` take a `workspace` argument — required for
|
|
|
60
60
|
| **Members** | `list_members` | List workspace members |
|
|
61
61
|
| **Milestones** | `list_milestones` | List milestones for a project |
|
|
62
62
|
| | `create_milestone` | Create a milestone with a target date and status |
|
|
63
|
+
| | `get_milestone` | Milestone details with progress (done/open/canceled issues) and the open issues |
|
|
64
|
+
| | `update_milestone` | Change name, target date, status or description |
|
|
65
|
+
| | `delete_milestone` | Delete a milestone; its issues are unassigned or moved (`moveIssuesTo`) |
|
|
63
66
|
| **Components** | `list_components` | List components (sub-areas) in a project |
|
|
64
67
|
| | `create_component` | Create a new component with optional lead |
|
|
68
|
+
| | `update_component` | Change name, description or lead |
|
|
69
|
+
| | `delete_component` | Delete a component; its issues are unassigned or moved (`moveIssuesTo`) |
|
|
65
70
|
| **Documents** | `list_teamspaces` | List document teamspaces |
|
|
66
71
|
| | `create_teamspace` | Create a new teamspace (top-level document folder) |
|
|
67
72
|
| | `list_documents` | List documents in a teamspace |
|
|
@@ -147,7 +152,7 @@ A single Huly account can belong to several workspaces — e.g. a personal one a
|
|
|
147
152
|
|
|
148
153
|
- **`list_workspaces`** returns name, slug and id of every available workspace.
|
|
149
154
|
- **Every other tool takes a `workspace` argument** — the slug, the name or the id (case-insensitive):
|
|
150
|
-
`list_projects(workspace="jokeks2023")`, `get_issue(workspace="
|
|
155
|
+
`list_projects(workspace="jokeks2023")`, `get_issue(workspace="acme", identifier="PROJ-1")`, `log_time(workspace="jokeks2023", identifier="WEB-12", hours=2)`.
|
|
151
156
|
- **Changes always require `workspace`.** Every tool that creates, updates, deletes, links, sends, attaches or logs something has `workspace` as a required argument — the server never falls back to an implicit, default or "last used" workspace for a write.
|
|
152
157
|
- **Reads may omit `workspace` only if exactly one workspace is available.** With several, the call fails and lists the options.
|
|
153
158
|
- **IDs are per workspace.** `PROJ-1`, a document id or a comment id identifies something only together with its workspace — the same id can exist in two workspaces. Pass the same `workspace` you got the id from.
|
|
@@ -354,7 +359,7 @@ For network access (HTTP/SSE) use the [Docker image](#docker-network-reachable-s
|
|
|
354
359
|
|
|
355
360
|
**Workspaces:**
|
|
356
361
|
- *"Which Huly workspaces do I have?"*
|
|
357
|
-
- *"List the projects in my
|
|
362
|
+
- *"List the projects in my Acme workspace"*
|
|
358
363
|
- *"In the jokeks2023 workspace, log 2 hours on WEB-12"*
|
|
359
364
|
|
|
360
365
|
**Projects & issues:**
|
|
@@ -371,6 +376,9 @@ For network access (HTTP/SSE) use the [Docker image](#docker-network-reachable-s
|
|
|
371
376
|
- *"List milestones for the PROJ project"*
|
|
372
377
|
- *"Create a component called 'Auth' in PROJ"*
|
|
373
378
|
- *"List all components in PROJ"*
|
|
379
|
+
- *"How far along is milestone v2.0 Launch in PROJ?"*
|
|
380
|
+
- *"Move the v2.0 Launch milestone to 2026-07-15 and set it to In Progress"*
|
|
381
|
+
- *"Delete milestone 'Beta' in PROJ and move its issues to 'v2.0 Launch'"*
|
|
374
382
|
|
|
375
383
|
**Labels & relations:**
|
|
376
384
|
- *"Add the label 'bug' to PROJ-42"*
|
|
@@ -547,6 +555,13 @@ See [`src/connection.ts`](src/connection.ts).
|
|
|
547
555
|
|
|
548
556
|
## Changelog
|
|
549
557
|
|
|
558
|
+
### 2.1.0 — milestones & components, security updates
|
|
559
|
+
|
|
560
|
+
- **New: `get_milestone`, `update_milestone`, `delete_milestone`** — progress overview, edit name/date/status/description, delete with issues unassigned or moved via `moveIssuesTo`
|
|
561
|
+
- **New: `update_component`, `delete_component`** — edit name/description/lead, delete with issues unassigned or moved via `moveIssuesTo`
|
|
562
|
+
- **Changed: `list_components`** renders Markdown/ProseMirror descriptions as text
|
|
563
|
+
- **Security:** all open dependency advisories fixed — `@modelcontextprotocol/sdk` 1.32, `ws` 8.22, `zod` 4, `dompurify` 3.4.17 (override)
|
|
564
|
+
|
|
550
565
|
### 2.0.0 — multi-workspace
|
|
551
566
|
|
|
552
567
|
Breaking: tools that change data require `workspace`; `HULY_WORKSPACE` only restricts the server to one workspace.
|
package/dist/connection.js
CHANGED
|
@@ -36,7 +36,7 @@ class WorkspaceConnectionManager {
|
|
|
36
36
|
workspaces = null;
|
|
37
37
|
// Bumped by closeAll() so calls that were in flight don't hand out or register connections afterwards.
|
|
38
38
|
generation = 0;
|
|
39
|
-
// Keyed by workspace UUID — never by user input, so "
|
|
39
|
+
// Keyed by workspace UUID — never by user input, so "acme" and its UUID share one connection.
|
|
40
40
|
connections = new Map();
|
|
41
41
|
constructor(opts) {
|
|
42
42
|
this.opts = opts;
|
package/dist/index.js
CHANGED
|
File without changes
|