Skip to content

fix(mcp): use isDirectory not isContainer on listContainer entries - #492

Merged
melvincarvalho merged 1 commit into
gh-pagesfrom
mcp-fix-isdirectory
May 18, 2026
Merged

fix(mcp): use isDirectory not isContainer on listContainer entries#492
melvincarvalho merged 1 commit into
gh-pagesfrom
mcp-fix-isdirectory

Conversation

@melvincarvalho

Copy link
Copy Markdown
Contributor

Live-fire smoke against `jss start --mcp` caught this: three SKILL.md files seeded at the three scope paths (pod / app / bot), but `list_skills` only returned the pod one.

Cause: `storage.listContainer` returns `{ name, isDirectory, size, modified }` — not `isContainer`. The skill-discovery walker filtered on the wrong field, so the always-false filter dropped every per-app and per-bot entry. `list_resources` had the same bug for its `isContainer` output flag.

Fix is one-character per site: `e.isContainer` → `e.isDirectory`. Plus a regression test that asserts `isContainer=true` on a known directory in a `list_resources` result — would have failed on the old code.

Smoke after the fix:

```
list_skills with all three scopes
[
{ "scope": "pod", "name": "pod", "source": "/SKILL.md" },
{ "scope": "app", "name": "demo", "source": "/public/apps/demo/SKILL.md" },
{ "scope": "bot", "name": "charlie", "source": "/private/bots/charlie/SKILL.md" }
]
```

Test plan

  • 18/18 MCP tests pass
  • Live-fire: 3 SKILL.md files (pod/app/bot) all discovered

storage.listContainer returns { name, isDirectory, size, modified } —
not isContainer. The MCP skill discovery walks /public/apps/ and
/private/bots/ but the filter was always false, so per-app and per-bot
SKILL.md files were never picked up. list_resources had the same wrong
field for its isContainer output flag.

Live-fire smoke caught it: three SKILL.md files seeded (pod, app, bot)
but only the pod one was returned by list_skills until the field was
fixed.

Added a regression test that asserts isContainer=true on a
list_resources result for a known directory entry — would have failed
on the old code.
@melvincarvalho
melvincarvalho merged commit ba26dc5 into gh-pages May 18, 2026
1 check passed
@melvincarvalho
melvincarvalho deleted the mcp-fix-isdirectory branch May 18, 2026 07:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant