使用说明(Markdown 格式)

  • 项目简介

    • sqlew 是一个面向 AI Agent 的后端服务,基于模型上下文协议(MCP)实现。它通过标准化的 JSON-RPC 接口向 AI 客户端暴露资源、工具和提示模版等核心能力,支持会话管理、多数据库后端以及跨数据库兼容性等特性,目标是在 AI 任务中提供高效的上下文记忆和外部功能调用能力。
  • 主要功能点

    • 资源与数据访问:以 SQL/关系型数据库为后端,组织和检索 ADR、资源、上下文等结构化数据。
    • 工具注册与执行:注册可由 AI 调用的 Tools(工具),实现外部功能的扩展调用。
    • Prompt 模板与渲染:定义并渲染可定制的 Prompt 模板,支持多种交互模式。
    • MCP 协议通信:通过 JSON-RPC 与 LLM 客户端通信,支持命名、请求处理、事件通知等标准流程。
    • 会话与能力声明:服务器端维护会话、能力声明与跨数据库的能力组合。
    • 多传输协议支持:默认为标准输入输出(stdio),未来可扩展为 SSE、WebSocket 等传输。
    • 多数据库后端:默认使用 SQLite,支持 MySQL、PostgreSQL 等数据库后端,具备跨数据库的兼容性处理。
    • 安全与扩展性:以模块化设计实现资源、工具、模板的可扩展组织,便于集成到 AI 代理工作流中。
  • 安装步骤

    • 先确保环境中 Node.js 版本为 20.0.0 或更高版本。
    • 全局安装(推荐,这样 Claude Code Hooks 能直接调用 sqlew):npm install -g sqlew
    • 运行与配置(以 MCP 客户端连接为出发点,具体客户端无需改动 sqlew,只需在 MCP 配置中指向本服务器即可):
      • 将服务器注册到你的 MCP 配置中,命名为 sqlew,启动命令为 sqlew
      • 如需本地调试,直接在终端运行 sqlew,会以标准输出输出 MCP 协议消息,供 MCP 客户端连接
    • 首次启动会创建并初始化数据库,后续如需自定义数据库路径,请在客户端配置中通过参数传入。
  • 服务器配置(给 MCP 客户端的连接信息,示例以 JSON 表达,非代码块,便于理解)

    • serverName: "sqlew"
    • command: "sqlew"
    • args: []
    • 注释说明:
      • serverName:服务器在 MCP 客户端中的名称,客户端通过该名称识别并连接该 MCP 服务器。
      • command:启动该 MCP 服务器的系统命令。当前实现中使用的命令是 sqlew。
      • args:传给启动命令的参数。若需要指定数据库路径,可将路径作为第二个参数传入,如 ["/path/to/db.db"];默认路径为项目根目录下的 .sqlew/sqlew.db。
    • 备注:MCP 客户端本身并不需要您的客户端代码,只需要知道服务器名称、启动命令与必要的参数即可建立连接。
  • 基本使用方法

    • 启动与连接
      • 启动 sqlew 服务器后,MCP 客户端通过规定的传输通道(默认 stdio)与服务器进行 JSON-RPC 交互。
    • 调用与查询
      • 客户端可以通过 MCP 的工具集合读取资源、执行工具、获取并渲染 Prompts。
      • 支持计划化工作流中的 ADR 捕获、相似性检测、以及跨会话的上下文记忆。
    • 实践场景
      • 通过 Plan Mode 自动捕获 Architecture Decision Records,命中 ADR 的存储、检索和查询能力。
      • 使用内置的“sugges t”相关工具进行重复决策的检测和关联决策的发现。
  • 进一步信息

    • 官方主页和仓库地址包含详细的架构概念、工具列表以及更多使用场景。
    • 该实现基于 MCP SDK 提供的服务器端能力,包含对工具的注册、执行、以及对客户端请求的 JSON-RPC 响应。

信息

分类

AI与计算