基本视图生成器MCP
sample screenshot generated by Essential View Builder MCP
此MCP(模型上下文协议)服务器提供了使用经过验证的v2.0模式构建高质量Essential Viewer视图(XSL仪表板和报告)的工具和资源。
服务器是完全自包含的——所有文档、模板和Essential Viewer源文件都捆绑在Docker映像中。不需要安装Python。
特性
- 脚手架生成:按照v2.0模式生成完整、可用的XSL视图模板。
- API指南:动态分析可用的Essential API,以建议属性名称和结构。
- 黄金模式:强制执行最佳实践(异步/等待、无CDATA、正确的与号编码)。
- 整合资源:所有必需的文档和模板都与服务器捆绑在一起。
- 基本查看器参考:从MCP中浏览并阅读完整的Essential Viewer源代码树。
工具
| 工具 | 说明 |
|---|---|
generate_view_scaffold | 基于所选API和视图类型创建完整的XSL视图文件 |
generate_api_scaffold | 按照黄金模式生成基本API(XSLT) |
suggest_view_architecture | 分析描述并推荐API和属性映射 |
adapt_external_view | 将外部HTML/JS演示移植到Essential就绪的XSL视图中 |
read_viewer_file | 从捆绑的Essential Viewer源代码树中读取任何XSL文件 |
escape_xsl_content | 正确编码JavaScript以包含XSL |
wrap_in_cdata | 将内容包装在CDATA部分中(谨慎使用——v2.0模式更喜欢XML编码) |
资源
| URI | 描述 |
|---|---|
essential-view://api-docs | 所有具有属性结构的Essential Viewer API目录 |
essential-view://viewer-index | Essential Viewer中所有~686个XSL文件的索引,按域分组 |
essential-view://view-build-docs | 构建v2.0视图的完整指南 |
essential-view://quick-reference | 单页图案参考卡 |
essential-view://deprecated-patterns | 关于禁止模式的严重警告 |
essential-view://view-template | 基本XSL提取器模板 |
essential-view://handlebars-functions | 常见把手助手 |
essential-view://api-property-verification | API属性名称使用前验证指南 |
______________________________________________________________________
快速入门(Docker——推荐)
1.塑造形象
docker build -t eas/essential-view-builder-mcp:v1 .2.运行容器(可选--验证构建是否正常)
docker run -d --name essential-view-builder-mcp eas/essential-view-builder-mcp:v1这 -d flag在后台运行容器。检查它是否干净地开始:
docker logs essential-view-builder-mcp完成后停止并删除它:
docker stop essential-view-builder-mcp && docker rm essential-view-builder-mcp注: 当用作MCP服务器时,AI客户端通过以下方式生成容器本身 docker run -i (stdio传输)。您不需要手动保持容器运行。3.配置您的AI客户端
为您的客户选择以下部分。所有配置都使用相同的Docker命令:
docker run -i --rm --name essential-view-builder-mcp eas/essential-view-builder-mcp:v1______________________________________________________________________
客户端设置指南
光标
添加或创建 ~/.cursor/mcp.json (适用于所有项目):
{
"mcpServers": {
"essential-view-builder": {
"command": "docker",
"args": ["run", "-i", "--rm", "--name", "essential-view-builder-mcp", "eas/essential-view-builder-mcp:v1"]
}
}
}或者,创建 .cursor/mcp.json 在特定的项目文件夹中,将其范围限定到该工作区。
保存后重新启动Cursor。服务器将显示在 设置→ MCP.
______________________________________________________________________
Visual Studio代码(使用GitHub副本或继续)
GitHub副本(VS代码1.99+)
添加到您的VS代码 settings.json (Cmd+Shift+P → *打开用户设置JSON*):
{
"mcp": {
"servers": {
"essential-view-builder": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "--name", "essential-view-builder-mcp", "eas/essential-view-builder-mcp:v1"]
}
}
}
}或者添加一个 .vscode/mcp.json 工作区根目录下用于项目范围配置的文件:
{
"servers": {
"essential-view-builder": {
"type": "stdio",
"command": "docker",
"args": ["run", "-i", "--rm", "--name", "essential-view-builder-mcp", "eas/essential-view-builder-mcp:v1"]
}
}
}继续扩展
添加 ~/.continue/config.json 在...之下 mcpServers:
{
"mcpServers": [
{
"name": "essential-view-builder",
"command": "docker",
"args": ["run", "-i", "--rm", "--name", "essential-view-builder-mcp", "eas/essential-view-builder-mcp:v1"]
}
]
}______________________________________________________________________
克劳德桌面
打开您的Claude Desktop配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 视窗:
%APPDATA%\Claude\claude_desktop_config.json
添加服务器条目:
{
"mcpServers": {
"essential-view-builder": {
"command": "docker",
"args": ["run", "-i", "--rm", "--name", "essential-view-builder-mcp", "eas/essential-view-builder-mcp:v1"]
}
}
}重新启动克劳德桌面。服务器将显示为连接的集成。
______________________________________________________________________
ChatGPT(通过OpenAI桌面应用程序)
OpenAI桌面应用程序支持本地MCP服务器。打开 设置→ 互联工具→ 添加工具 并选择 *本地服务器(stdio)*.
将命令设置为 docker 以及以下论点:
run -i --rm --name essential-view-builder-mcp eas/essential-view-builder-mcp:v1或者,如果您更喜欢配置文件方法,请添加到 ~/Library/Application Support/OpenAI/mcp.json (macOS):
{
"mcpServers": {
"essential-view-builder": {
"command": "docker",
"args": ["run", "-i", "--rm", "--name", "essential-view-builder-mcp", "eas/essential-view-builder-mcp:v1"]
}
}
}保存后重新启动应用程序。
______________________________________________________________________
生成的输出
按照惯例,此MCP生成的视图保存到 output/ 项目根目录。通过以下方式将此文件夹排除在版本控制之外 .gitignore.
______________________________________________________________________
替代方案:Python(不含Docker)
如果你不能使用Docker,你可以直接用Python 3.11+运行服务器。
需求:Python 3.11中列出的包 requirements.txt.
# macOS with Homebrew
brew install python@3.11
/usr/local/bin/python3.11 -m pip install -r requirements.txt
# Run setup verification
bash setup.sh然后更换 command/args 在上述任何客户端配置中,使用:
"command": "python3",
"args": ["/path/to/essential-view-builder-mcp/server.py"]______________________________________________________________________
使用MCP
现在,您可以根据自己的要求创建自己的EA工具。我们开发了一个视图构建器MCP,它可以获取基本结构,并使用数据集API为您创建视图。
我们已经用Open AI 5.3+、Gemini 3 Flash+、Sonnet 4.5+进行了测试,它运行良好。其他模型可能表现不同。思维模式表现最好
安装:
步骤
- 在和IDE(CODEX、Visual Studio、AntiGravity、Claude Code)中加载MCP,并将其连接到您最喜欢的AI工具
- 描述您要创建的视图
- 让它做它的工作
- 将视图上传到Essential
- 使用视图
此版本可以创建一些非常复杂的视图,并且最适合使用我们提供的预定义数据集API中的数据。
示例提示:
方法1:让AI创建视图
“为首席信息官创建一个交互式应用程序仪表板”
“为首席信息官创建一个交互式应用程序仪表板,其中包含处置和生命周期状态的饼图,以及总结所有应用程序的小卡片”
“在弹出窗口中为战略计划创建一个时间线图,其中包含受影响的元素”
方法2-提供一个可用的HTML/JS版本,并在数据中反转
您还可以使用AI创建所需视图的静态HTML/JS版本,然后将该代码提供给MCP,
“使用基本数据实现此功能”
方法3:请求JSON结构,然后创建视图。
- “从基本数据API中为我创建一个JSON结构,让我能够看到生命周期映射到业务能力的应用程序。”
- 一旦JSON结构看起来正常,就说“使用此JSON结构按功能视图创建应用程序,并按生命周期状态计数”
这使用当前的数据集API,如果您已将访问AI的权限授予重要的GitHub存储库,则它可能会尝试创建新的查询,以获取当前无法通过数据集API获得的任何数据。
AI应创建XSL文件,并将其放入用户文件夹中:
云/Docker:配置>系统管理>视图管理 并上传到您正在使用的查看器
开源:将文件放在用户文件夹中
只需将URL更改为.\[YOUR TENANT或Localhost URL\]/reportXML.xml,即可快速测试视图,而无需创建报告实例&XSL=用户/\[您的文件名\]
一旦您满意,在存储库中创建一个报告实例,将XSL路径设置为 用户/\[您的文件名\], 截取屏幕截图,另存为png/jpg格式,并将其放入image文件夹中。将图像路径指向图像文件夹。
潜在问题
有时AI不使用MCP:
- 检查它是否可以看到MCP——问“你能看到什么资源”,它应该列出资源
- 在提示中添加“您必须使用Essential View Builder MCP”
它可能会不时出错。只需将您在浏览器中看到的错误复制到您的AI中,并要求它修复它们。
一个常见的错误是在XSL中使用未转义字符,MCP有资源避免这种情况,但AI并不总是遵守。我们倾向于将XML和JS混合到同一个文件中,您不必这样做,但它更容易管理和测试,MCP将使用这种模式。如果你在JS中有&、\<或\<=并且没有转义,那么视图将失败。只需将错误消息粘贴回AI中,它就会修复它,或者您可以手动搜索并替换为&(&)、\<(\<)或\<=。 (\<=) .
如果您请求的数据不在API或存储库中,那么AI通常会留下占位符
它可能不会返回预期的数据,因为它可能不会使用API,即使它们存在。因此,如果缺少数据,请告诉它使用特定的数据集API,例如项目和计划
它有时可能会使用实例ID而不是名称,只需告诉它“使用名称而不是ID”
任何问题都可以在论坛上提出。
云用户应该关注我们的Essential MCP的发布,因为它与我们的视图构建器MCP相结合,将这一点提升到了另一个层次,因为它将编写新的查询。
______________________________________________________________________
为基本项目而建。
