chore(skills): document that allowed_tools has no effect for MCP-served skills
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 39.9k
- Forks
- 3.4k
- Avg merge
- 6h 51m
- Merged PRs (30d)
- 232
Description
Part of #99933.
Problem
LLMSkill.allowed_tools (products/skills/backend/models/skills.py) is exported as the Agent Skills allowed-tools frontmatter field by render_frontmatter in products/skills/backend/marketplace/packaging.py. The MCP Skills extension requires hosts to ignore allowed-tools for skills that arrive over MCP unless the user explicitly approves that grant for that skill. Once store skills are served over the extension, the field will keep working for zip export, the git marketplace, and the bundle install, but not for MCP delivery. Authors should know that before they rely on it.
Change
Docs and help text only. No behavior change.
- Update the
help_texton theallowed_toolsfield inLLMSkillSerializerand the create and update serializers inproducts/skills/backend/api/skill_serializers.pyto say the list is honored when the skill is installed locally (zip, marketplace, bundle) and ignored by hosts when the skill is loaded over MCP. Keep it to one or two sentences. Runhogli build:openapiso the generated types carry the new text. - Update the
skill-createandskill-updatetool descriptions inproducts/skills/mcp/tools.yamlif they mentionallowed_tools, then regenerate the MCP tool definitions with the script inservices/mcp/scripts/and check in the updatedservices/mcp/schema/*.json. - Add a short section to
docs/internal/skills/(the bundle API doc or a newskills-over-mcp.md) explaining the difference and linking to the extension spec: https://modelcontextprotocol.io/extensions/skills/overview - If
products/skills/skills/skills-store/SKILL.mddescribesallowed_tools, update it to match and runhogli lint:skills.
Tests
None beyond the existing schema drift checks in CI (hogli build:openapi and the MCP schema check).
Notes
- Skills:
/writing-user-facing-copyfor the help text.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the allowed_tools help_text in products/skills/backend/api/skill_serializers.py and the tool descriptions in products/skills/mcp/tools.yaml. Run hogli build:openapi, regenerate MCP definitions with the script in services/mcp/scripts/, and review docs/internal/skills/ plus products/skills/skills/skills-store/SKILL.md. Done means the local-versus-MCP distinction is documented and generated schemas pass the existing checks.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- openapi, python
- Domain
- api, backend, documentation
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 68/100