mcp-data-extractor MCP 服务器
模型上下文协议服务器将嵌入数据(例如 i18n 翻译或键/值配置)从 TypeScript/JavaScript 源代码提取到结构化的 JSON 配置文件中。
特征
- 数据提取:
- 提取字符串文字、模板文字和复杂嵌套对象
- 保留模板变量(例如,
Hello, {{name}}!
) - 支持嵌套对象结构和数组
- 使用点符号维护分层密钥结构
- 通过 JSX 支持处理 TypeScript 和 JavaScript 文件
- 成功提取后,用“MIGRATED TO”替换源文件内容(可配置)
- SVG提取:
- 从 React/TypeScript/JavaScript 文件中提取 SVG 组件
- 保留 SVG 结构和属性
- 删除特定于 React 的代码和道具
- 创建以其组件命名的单个 .svg 文件
- 成功提取后,用“MIGRATED TO”替换源文件内容(可配置)
用法
添加到您的 MCP 客户端配置:
基本用法
服务器提供了两个工具:
1.数据提取
使用extract_data
从源文件中提取数据(如 i18n 翻译):
2. SVG提取
使用extract_svg
将 SVG 组件提取到单独的文件中:
源文件替换
默认情况下,提取成功后,服务器将用以下内容替换源文件的内容:
- “MIGRATED TO” 用于数据提取
- 用于 SVG 提取的“迁移至”
这有助于追踪哪些文件已被处理,并防止重复提取。此外,LLM 和开发人员在稍后遇到源文件时,也可以轻松查看提取数据所在的位置。
要禁用此行为,请在 MCP 配置中将DISABLE_SOURCE_REPLACEMENT
环境变量设置为true
:
支持的模式
数据提取模式
数据提取器支持 TypeScript/JavaScript 应用程序中常用的各种模式:
- 简单对象导出:
- 嵌套对象:
- 具有数组的复杂结构:
- 带有变量的模板文字:
输出格式
数据提取输出
提取的数据保存为 JSON 文件,并使用点符号表示嵌套结构:
SVG提取输出
SVG 组件被提取到单独的 .svg 文件中,并删除了 React 特有的代码。例如:
输入(React 组件):
输出(InspectionIcon.svg):
扩展支持的模式
提取器使用 Babel 解析并遍历源文件的 AST(抽象语法树)。您可以通过修改源代码来扩展支持的模式:
- 添加新的节点类型:
src/index.ts
中的extractStringValue
方法处理不同类型的字符串值。扩展它以支持新的节点类型:
- 自定义值处理:
processValue
方法可以处理不同的值类型(字符串、数组、对象)。您可以扩展它以支持新的值类型或自定义处理方式:
- 自定义 AST 遍历:服务器使用 Babel 的遍历函数来遍历 AST。您可以添加新的访问者来处理不同的节点类型:
发展
安装依赖项:
构建服务器:
对于使用自动重建的开发:
调试
由于 MCP 服务器通过 stdio 进行通信,调试起来可能比较困难。我们推荐使用MCP Inspector ,它以包脚本的形式提供:
检查器将提供一个 URL 来访问浏览器中的调试工具。
执照
该项目根据 MIT 许可证获得许可 - 有关详细信息,请参阅LICENSE文件。
You must be authenticated.
local-only server
The server can only run on the client's local machine because it depends on local resources.
模型上下文协议服务器将嵌入数据(例如 i18n 翻译或键/值配置)从 TypeScript/JavaScript 源代码提取到结构化的 JSON 配置文件中。
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA production-ready template for creating Model Context Protocol servers with TypeScript, providing tools for efficient testing, development, and deployment.Last updated -1112JavaScriptMIT License
- AsecurityFlicenseAqualityA TypeScript-based template for developing Model Context Protocol servers with features like dependency injection and service-based architecture, facilitating the creation and integration of custom data processing tools.Last updated -12TypeScript
- -securityAlicense-qualityA TypeScript implementation of a Model Context Protocol server that provides a frictionless framework for developers to build and deploy AI tools and prompts, focusing on developer experience with zero boilerplate and automatic tool registration.Last updated -6TypeScriptMIT License
- AsecurityAlicenseAqualityA TypeScript implementation of a Model Context Protocol server that provides marketing tools based on Open Strategy Partners' methodologies, enabling content creation, optimization, and product positioning through tools like value map generation, meta information creation, and content editing.Last updated -6491TypeScriptCC BY-SA 4.0