#!/usr/bin/env node
/**
 * HarmonyOS MCP Server
 *
 * 为 HarmonyOS 系统软件开发和商用提供智能文档检索服务。
 * 基于本地 10,846 篇华为官方 HarmonyOS NEXT 开发文档构建。
 *
 * 工具列表:
 *   harmonyos_search_docs    — 全文搜索知识库
 *   harmonyos_get_document   — 获取文档内容
 *   harmonyos_list_kits      — 列出所有 Kit
 *   harmonyos_get_kit_docs   — 获取 Kit 下的文档
 *   harmonyos_get_api_ref    — 查找 @ohos.* API
 *   harmonyos_search_index   — 搜索文档路径索引
 *   harmonyos_setup          — 下载/管理知识库
 *
 * 传输:stdio(本地 spawn 模式)
 */
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import { getTotalDocCount, getReferencesRoot } from './lib/knowledge.js';
import { registerSearchTool } from './tools/search.js';
import { registerGetDocTool } from './tools/document.js';
import { registerListKitsTool, registerGetKitDocsTool } from './tools/kits.js';
import { registerApiRefTool, registerSearchIndexTool } from './tools/api-ref.js';
import { registerGraphSearchTool, registerGraphNeighborsTool, registerGraphPathTool, registerGraphStatsTool } from './tools/graph.js';
import { registerSetupTool } from './tools/setup.js';
import { registerPrompts } from './prompts.js';
// ============================================================
// Server 初始化
// ============================================================
const server = new McpServer({
    name: 'harmonyos-mcp-server',
    version: '1.0.0',
});
// 注册所有工具
registerSearchTool(server);
registerGetDocTool(server);
registerListKitsTool(server);
registerGetKitDocsTool(server);
registerApiRefTool(server);
registerSearchIndexTool(server);
registerGraphSearchTool(server);
registerGraphNeighborsTool(server);
registerGraphPathTool(server);
registerGraphStatsTool(server);
registerSetupTool(server);
// 注册 Prompts(提示词模板)
registerPrompts(server);
// ============================================================
// 启动
// ============================================================
async function main() {
    const transport = new StdioServerTransport();
    console.error('╔══════════════════════════════════════════════════╗');
    console.error('║   HarmonyOS MCP Server v1.0.0                    ║');
    console.error('║   华为鸿蒙开发文档知识库                          ║');
    console.error('╚══════════════════════════════════════════════════╝');
    console.error(`  知识库路径: ${getReferencesRoot()}`);
    console.error(`  文档总数:   ${getTotalDocCount().toLocaleString()}`);
    console.error(`  工具数量:   11`);
    console.error('');
    await server.connect(transport);
}
main().catch(error => {
    console.error('Fatal error:', error);
    process.exit(1);
});
//# sourceMappingURL=index.js.map