@airready/ast mcp服务器
用于AI代理的最佳Types/JavaScript代码库探索。
此模型上下文协议(MCP)服务器为导航复杂的代码库提供了高精度、AST感知的工具。与标准搜索工具不同,它理解导入、导出、类型和引用。
🚀 主要特点
- 混合索引联合
ripgrep加速ts-morph精度。仅将相关文件加载到内存中以处理大量的monorepos。 - O(1)符号分辨率:使用预构建的磁盘缓存立即查找任何函数、类或类型的定义位置。
- 外科参考发现:使用两阶段查找(Regex+AST)来查找整个项目中符号的每次使用,而不会出现OOM崩溃。
- Monorepo智能:自动发现
tsconfig.json边界和尊重TypeScript项目引用。 - 零配置:捆绑
ripgrep二进制文件,并开箱即用地处理所有TypeScript解析。 - 路径安全:针对路径遍历和恶意代理输入进行加固。
🛠 提供的工具
| 工具 | 目的 |
|---|---|
resolve_definition | 查找符号的定义位置(文件、行、签名、JSDoc)。 |
find_references | 查找项目中符号的所有用法(分页)。 |
find_implementations | 查找实现接口/抽象类的具体类。 |
get_file_structure | 返回文件的结构树(类、方法、枚举)。 |
search_code | 通过捆绑的ripgrep快速搜索正则表达式。 |
get_symbol_docs | 提取任何符号的完整JSDoc/TSDoc元数据。 |
get_call_hierarchy | 查找符号的呼叫者和被呼叫者(传入/传出)。 |
build_symbol_index | 为项目预热磁盘缓存(强烈建议)。 |
📦 安装
npx -y @aiready/ast-mcp-server⚙️ 配置
环境变量
AST_WORKSPACE_ROOT:允许的工作区根的路径(默认值:cwd).AST_MAX_HEAP_MB:AST项目允许的最大内存(默认值:1536).AST_WORKER_POOL_SIZE:用于解析的工作线程数(默认值:2).
代理配置(光标/克劳德桌面)
{
"mcpServers": {
"ast-explorer": {
"command": "npx",
"args": ["-y", "@aiready/ast-mcp-server"],
"env": {
"AST_WORKSPACE_ROOT": "/path/to/your/project"
}
}
}
}🛡 安全
所有工具参数都经过严格验证。代理访问外部文件的任何尝试 AST_WORKSPACE_ROOT 将导致强烈的拒绝。
📄 许可证
MIT© AIReady
