@mcell/stack-mcp
v0.2.1
Published
MCP server for multi-resource static datasets
Readme
@mcell/stack-mcp
A local MCP server that reads multi-resource static datasets (blog posts, topics, topic articles, site pages, profile).
Usage
npx -y @mcell/stack-mcpBy default it reads index data from:
https://stack.mcell.top/mcp/index.json
Configure in MCP clients (example)
{
"mcpServers": {
"cellstack": {
"command": "npx",
"args": ["-y", "@mcell/stack-mcp"]
}
}
}The defaults are already built in:
STACK_MCP_INDEX_URL=https://stack.mcell.top/mcp/index.jsonSTACK_MCP_CACHE_DIR=~/.cache/stack-mcp
Tools
read_last: Latest content entries (blog+topic_articleby default).read_latest: Alias ofread_last.list_resources: General list/search tool across all resource types.list_topics: Topic overview list.read_resource: Read one resource byidorslug.read_site_info: Read site intro and profile resources.search_articles: Compatibility alias for content search.read_article: Compatibility alias forread_resource.refresh_index: Force refresh remote index cache.
Environment Variables
STACK_MCP_INDEX_URL: Static index JSON URL.STACK_MCP_CACHE_DIR: Local cache directory. Default:~/.cache/stack-mcp.STACK_MCP_CACHE_TTL_SECONDS: Cache TTL (seconds). Default:1800.STACK_MCP_REQUEST_TIMEOUT_SECONDS: HTTP timeout (seconds). Default:20.STACK_MCP_DEBUG: Optional debug log switch (1/true/yesto enable).
Static Data Format
index.json:
{
"version": 2,
"generatedAt": "2026-02-10T00:00:00.000Z",
"stats": {
"blog": 10,
"topic": 3,
"topic_article": 30,
"site_page": 1,
"profile": 1
},
"entries": [
{
"id": "blog:2026/example",
"type": "blog",
"slug": "2026/example",
"title": "Example",
"description": "Example summary",
"url": "/blog/2026/example",
"document": "articles/blog_2026_example.json",
"extra": {
"section": "blog",
"contentFormat": "markdown"
}
}
]
}Document JSON:
{
"id": "blog:2026/example",
"type": "blog",
"slug": "2026/example",
"title": "Example",
"url": "/blog/2026/example",
"document": "articles/blog_2026_example.json",
"sourcePath": "content/blog/2026/example.md",
"metadata": {},
"content": "markdown body",
"extra": {}
}Other generated files:
latest.json: precomputed latest content entries.catalog.json: ids grouped by type pluscontentIds.
Build Data in This Repository
The site repository generates static data during build:
pnpm run mcp:build-dataGenerated files are written to public/mcp/.
