项目简介

ArchiScribe MCP 服务器旨在为AI编码助手和代理提供软件开发生命周期(SDLC)中的架构上下文信息。它通过 Model Context Protocol (MCP) 标准化地向大型语言模型(LLM)客户端提供服务,将复杂的 ArchiMate 模型数据转化为易于理解的 Markdown 格式。

主要功能点

  • 架构信息提取: 从标准的 ArchiMate Exchange File (.xml) 模型文件中读取和解析架构数据。
  • 上下文提供: 通过MCP协议向LLM客户端提供模型中的视图、元素和关系等上下文信息。
  • 工具调用: 提供 'SearchViews' (搜索视图) 和 'GetViewDetails' (获取视图详情) 两个核心工具,支持LLM按需查询架构信息。
  • Markdown输出: 将查询到的架构信息格式化为Markdown文本,方便LLM理解和处理。
  • 本地部署: 专为本地部署设计,方便用户在自己的开发环境中集成。
  • 实时更新: 支持监听模型文件变化并自动重新加载。
  • 可配置性: 允许用户通过配置文件或环境变量自定义服务器端口、模型路径、视图过滤等。
  • 审计日志: 记录所有MCP工具调用和HTTP请求,便于审计和监控。

安装步骤

  1. 确保您的系统已安装 Node.js 和 npm。
  2. 克隆或下载本仓库到您的本地目录。
  3. 打开终端,导航到仓库根目录。
  4. 运行 'npm install' 命令安装所有项目依赖。

服务器配置

MCP客户端通常需要以下信息才能与 ArchiScribe MCP 服务器建立连接并进行通信。这些配置通常以JSON格式提供给MCP客户端。

// 这是一个MCP客户端配置示例。请根据您的MCP客户端(例如VS Code插件)的具体要求进行调整。
// 实际配置可能是一个JSON对象,其中包含服务器名称、启动命令和参数等。
{
  "name": "ArchiScribe",          // 服务器的友好名称,用于客户端显示
  "command": "npm",               // 启动MCP服务器的命令行程序
  "args": ["start"],              // 启动命令的参数。在生产模式下,您可能需要先运行 'npm run build' 来编译项目
  "url": "http://localhost:3030/mcp", // MCP服务器的通信地址,通常是本地IP和端口加上 '/mcp' 路径
  "type": "http"                  // 通信协议类型,这里是 HTTP
}

重要提示:

  • 服务器默认监听端口 '3030',您可以通过环境变量 'SERVER_PORT' 或修改 'config/settings.json' 文件来更改。
  • 模型文件路径默认为 'data/archimate-scribe-demo-model.xml'。您可以通过环境变量 'MODEL_PATH' 或修改 'config/settings.json' 文件来指定您的 ArchiMate 模型文件(XML格式)。
  • MCP服务器的HTTP测试API默认是禁用的,仅 '/mcp' 路径用于MCP通信。

基本使用方法

  1. 准备模型文件: 将您的 ArchiMate 模型文件(.xml 格式)放置在服务器配置指定的路径。
  2. 启动服务器:
    • 生产模式 (推荐):
      npm run build  # 编译项目
      npm start      # 启动服务器
    • 开发模式 (带自动重启):
      npm run dev
  3. 验证服务器启动: 成功启动后,您将在终端看到类似以下输出:
    MCP SDK: using high-level McpServer API
    MCP: registered tool: SearchViews
    MCP: registered tool: GetViewDetails
    Server listening on port 3030
  4. 在MCP客户端中使用: 将上述“服务器配置”信息集成到您的MCP客户端(例如VS Code插件)中。客户端即可通过 'SearchViews' 和 'GetViewDetails' 工具调用服务器功能,获取 ArchiMate 模型中的架构上下文。

信息

分类

AI与计算