Skip to content

MCP server and skills

Blasdoc as tools an AI agent can use, and the skills that teach it.

@blasdoc/mcp is a Model Context Protocol server. It gives an AI agent the four things it cannot guess about Blasdoc: what the library can actually do, whether the Markdown it just wrote parses, the exact shape of a page, and how a theme is expressed.

Running it

.mcp.json
{
  "mcpServers": {
    "blasdoc": {
      "command": "npx",
      "args": ["-y", "@blasdoc/mcp"]
    }
  }
}

That file is read by Claude Code and by any other MCP client. Inside this repository the server points at the local package instead.

The tools

ToolWhat it does
blasdoc_search_docsfinds the documentation pages that answer a question
blasdoc_read_docreads one page in full, by slug
blasdoc_checkparses Markdown through the real @blasdoc/core and reports its diagnostics
blasdoc_scaffold_pageproduces the .ts and .md for a page, in any of the three forms
blasdoc_themeturns a few colours into a theme stylesheet
text
1 diagnostic(s):
  [error] BLASDOC_UNCLOSED_BLOCK (line 5): @if was never closed.
 
Components used but not listed as registered: app-missing.
 
Outline:
    #title — Title

The skills

The server also publishes three skills as MCP prompts — bodies of instruction an agent can load when it needs them:

SkillCovers
blasdoc_writing_contentcomponents, the four binding channels, interpolation, control flow, and the two parsing rules that catch people out
blasdoc_building_pagesthe three page forms, and which one a project can actually use
blasdoc_themingtokens, dark mode, generating and installing a theme, replacing components

They ship as Markdown in the package, so the same files work as Claude Code skills:

text
.claude/skills/blasdoc-writing-content/SKILL.md
.claude/skills/blasdoc-building-pages/SKILL.md
.claude/skills/blasdoc-theming/SKILL.md

Why a server rather than a prompt

Because two of the five tools have to run. A summary of the documentation goes stale and a summary of the parser is a guess; blasdoc_check executes the parser, and blasdoc_search_docs reads the same files this site publishes. An agent using them is reading Blasdoc, not a description of it.

What it does not do

It does not write files, install packages or run builds. It answers questions and produces text — the editing is the agent's, and the review is yours.