settings — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited settings (Hook) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
<p align="center"> <img src="./icon.png" alt="Huly MCP" width="160" height="160" /> </p>
<h1 align="center">Huly MCP</h1>
<p align="center"> Talk to your <a href="https://huly.io">Huly</a> workspace from Claude — issues, projects, milestones, documents, calendar, tests, attachments and more, all as MCP tools. </p>
<p align="center"> <b>~130 tools</b> · <b>14 domains</b> · <b>Claude Desktop ready (.mcpb)</b> · <b>4 PM skills included</b> </p>
huly-mcp is a Model Context Protocol server that exposes the Huly workspace API to any MCP-aware client (Claude Desktop, Claude Code, etc.). Once installed, Claude can read and mutate your Huly workspace conversationally — no UI, no CLI, just natural-language requests.
You: create a high-priority issue in PROJ titled "Fix login bug" and assign to me
Claude: ✓ Created PROJ-43 — "Fix login bug" (priority: high, assignee: [email protected])| Domain | Operations |
|---|---|
| Tracker | Projects · Issues (+ sub-issues, relations, labels) · Comments · Milestones · Components · Templates · Statuses · Task types |
| Labels | Global labels CRUD · Tag categories |
| Time | Log time · Start/stop timers · Per-issue and project-wide reports (with assignee breakdown) |
| Documents | Teamspaces · Documents (markdown content via collaborator) · Doc↔issue links · Inline comments |
| Calendar | Events · Recurring events (RFC5545 RRULE) · Work slots |
| Test Management | Suites · Cases · Plans · Plan items · Runs · Results — full CRUD + execute-plan flow |
| Cards | Card spaces · Master tags · Cards (with markdown content) |
| Files | Upload to blob storage · Attach to any object (issue/document/etc.) · Pin · Download URL |
| Custom Fields | List · Read values · Set values (with mixin path) |
| Activity & Search | Audit trail · Fulltext search |
| Notifications | List · Mark-all-read |
For the full per-tool inventory see FEATURES.md, and for input/output schemas see HULY_SPEC.md.
https://huly.app/workbench/`<slug>`The fastest path is the prebuilt .mcpb bundle:
<table> <tr> <td width="120" align="center"><img src="./icon.png" alt="Huly" width="96" height="96" /></td> <td> <b>Huly</b><br/> Huly workspace assistant — manage issues, projects, milestones, time, documents and more from Claude.<br/> <sub>v1.0.0 · ~130 tools · stdio · <code>mcp/huly.mcpb</code></sub> </td> </tr> </table>
mcp/huly.mcpb from this repo (or run npm run bundle to build it yourself).huly.mcpb.https://huly.app (or your self-hosted URL)my-teamme when assigning issuesAdd this to your Claude Code MCP config (see mcp/claude_desktop_config.example.json for the full template):
{
"mcpServers": {
"huly": {
"command": "npx",
"args": ["tsx", "/absolute/path/to/huly-mcp/mcp/server.ts"],
"env": {
"HULY_URL": "https://huly.app",
"HULY_TOKEN": "your-token",
"HULY_WORKSPACE": "your-workspace-slug",
"HULY_EMAIL": "[email protected]"
}
}
}
}git clone <repo-url> huly-mcp && cd huly-mcp
npm install
cp .env.example .env
# edit .env: HULY_URL / HULY_TOKEN / HULY_WORKSPACE / HULY_EMAIL
npm run mcp # starts the MCP server on stdioFour Claude Code skills under skills/ sit on top of the MCP tools and turn the raw API into PM-friendly workflows:
| Skill | What it does |
|---|---|
| `/pm-overview <PROJECT>` | Single-screen project health snapshot — issues by status / priority / assignee, milestone state, recent activity. |
| `/standup <PROJECT>` | Daily standup digest (project-level by default) — yesterday's logged time, today's plate, blockers — paste-ready for Slack. |
| `/pm-risks <PROJECT>` | Risk radar — overdue, sprint-at-risk, unassigned high-priority, stuck in-progress, bottlenecks, over-budget. |
| `/pm-status-report <PROJECT>` | Comprehensive stakeholder report — exec summary, key metrics, milestones, velocity, team performance, full task list grouped by component and broken down by status, bottlenecks, risks, recommendations. |
Install (one-time):
# Globally — available in every Claude Code session
ln -sfn "$(pwd)/skills/pm-overview" ~/.claude/skills/pm-overview
ln -sfn "$(pwd)/skills/standup" ~/.claude/skills/standup
ln -sfn "$(pwd)/skills/pm-risks" ~/.claude/skills/pm-risks
ln -sfn "$(pwd)/skills/pm-status-report" ~/.claude/skills/pm-status-report(For project-local install, replace ~/.claude/skills with <project>/.claude/skills.)
huly-mcp/
├── icon.png # plugin icon
├── core/ # shared command + lib code (imported by the MCP server)
│ ├── commands/ # one file per domain (tracker, comments, calendar, tests, …)
│ └── lib/ # client, env, hcengineering interop, markup, resolvers
├── mcp/
│ ├── server.ts # MCP server source — wires ~130 huly_* tools
│ ├── manifest.json # MCPB manifest (user_config + env wiring)
│ ├── huly.mcpb # prebuilt installable bundle
│ ├── build/ # esbuild output (regenerated by `npm run bundle`)
│ └── claude_desktop_config.example.json
├── skills/
│ ├── pm-overview/SKILL.md
│ ├── standup/SKILL.md
│ ├── pm-risks/SKILL.md
│ └── pm-status-report/SKILL.md
├── FEATURES.md # full tool inventory + coverage matrix
├── HULY_SPEC.md # per-tool JSON schemas
├── package.json
└── tsconfig.jsonAfter editing mcp/server.ts or anything under core/:
npm run bundle # → regenerates mcp/build/ and mcp/huly.mcpbReinstall the new huly.mcpb in Claude Desktop to pick up changes.
Claude Desktop writes logs to ~/Library/Logs/Claude/mcp-server-huly.log (macOS).
The server logs:
HULY_URL, workspace, email, token prefix, and any HTTP_PROXY / NODE_EXTRA_CA_CERTS env vars.If you see SELF_SIGNED_CERT_IN_CHAIN or similar TLS errors:
NODE_EXTRA_CA_CERTS to the path of your proxy's CA bundle.huly_insecure_tls user_config to "1" — disables certificate verification for this MCP server only.| Symptom | Fix |
|---|---|
HULY_* env var not set | Fill in the Claude Desktop install dialog, or set .env (local dev). |
Cannot find module '@hcengineering/api-client' | Run npm install at the repo root. |
Workspace not found | HULY_WORKSPACE must match the slug after /workbench/ exactly (case-sensitive). |
401 / auth error | Token expired — regenerate at Huly → Settings → API Tokens and reinstall the bundle. |
fetch failed | Check mcp-server-huly.log for the caused by → line — surfaces ENOTFOUND / ECONNREFUSED / TLS reasons. |
MIT — feel free to fork, patch, and ship.
<p align="center"> Built for <a href="https://huly.io">Huly</a> · Powered by <a href="https://modelcontextprotocol.io">MCP</a> </p>
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.