| name | using-the-mcp-server |
| description | Use when parsing source, extracting code structure, or detecting a language through the tree-sitter-language-pack MCP server's tools, rather than shelling out to the ts-pack CLI. Covers the tool surface, the auto-installing launcher, and when MCP beats the CLI or SDK. |
Using the MCP Server
The tree-sitter-language-pack MCP server exposes ts-pack's parsing and
code-intelligence capabilities as MCP tools, so an MCP-compatible client (Claude
Code, Claude Desktop) can parse source, extract structure, and detect languages
directly, with no CLI invocation or glue code.
How it runs in this plugin
The plugin auto-registers the server. Its command is the bundled launcher
scripts/mcp-launch.sh, which execs ts-pack mcp. On first run the launcher
resolves a ts-pack binary: it reuses one already on PATH or cached in the
plugin's bin/, then tries npx/uvx, then Homebrew, then downloads a prebuilt
from the tool's latest GitHub release. Override the channel with
TS_PACK_LAUNCHER=auto|npx|uvx|brew|download.
The mcp subcommand ships in a recent release of the tool. If an older
ts-pack is already on PATH, it may not expose mcp yet — upgrade the binary
(brew upgrade, re-download, or rebuild) to pick it up.
To run it manually:
ts-pack mcp
The tools
Parsing and code intelligence:
- parse — syntax tree (s-expression or JSON), auto-detecting language from path or explicit.
- process — code intelligence: structure, imports, exports, symbols, docstrings, comments, diagnostics, chunks. Use
all flag to enable all features.
- detect_language — identify language by path, extension, or content.
Language and cache management:
- list_languages — available, downloaded, or manifest languages; optional filter by name.
- info — show language availability and cache status.
- download — prefetch parsers: specific languages, language groups, all, or fresh updates.
- cache_dir — return the cache directory path.
- clean_cache — remove all cached parsers.
Resources
ts-pack://languages — catalog of all known languages.
ts-pack://languages/downloaded — currently cached languages.
ts-pack://language/{name} — per-language metadata template.
Prompt and completions
- analyze-code — code-analysis prompt (args:
language, optional focus).
- Language-name autocomplete — available language names in completions.
When to prefer MCP over the CLI or SDK
- Prefer MCP inside an agent session: the agent calls parsing directly as a
tool, with no shell-out and no process management.
- Prefer the CLI for one-shot parsing/extraction and shell/CI pipelines.
- Prefer the SDK when embedding parsing in application code or running custom
tree-sitter queries.