Unison MCP 服务

Unison MCP 服务是一个用于与 Unison 代码库管理器交互的模型上下文协议(MCP)服务器。它提供了一个接口,允许大型语言模型(LLMs)通过 Unison API 与 Unison 代码库进行交互,主要功能包括查询代码库中的定义、浏览命名空间、查找术语和类型等。该服务适用于需要与 Unison 代码库进行交互的开发场景,特别是那些需要自动化查询和检索代码库信息的任务。

  • by fwip
  • 3 星标
  • 更新于
在 GitHub 查看 fwip/unison-mcp-demo

使用说明

基本能力

产品定位

Unison MCP 服务是一个用于与 Unison 代码库管理器交互的模型上下文协议(MCP)服务器。

核心功能

  • 浏览项目中的命名空间
  • 检索术语和类型的定义
  • 通过子字符串匹配查找术语和类型
  • 列出 Unison 代码库中的所有项目/分支
  • 项目/分支选择(自动到当前 UCM 上下文,但可以手动设置)

适用场景

  • 需要与 Unison 代码库进行交互的开发场景
  • 自动化查询和检索代码库信息的任务

工具列表

  • uv: 用于运行和管理 MCP 服务
  • ruff: 用于代码格式化和 linting
  • mypy: 用于静态类型检查
  • pre-commit: 用于在提交前运行代码质量检查

使用教程

使用依赖

  • Python 3.12 或更高版本
  • Unison (ucm)

安装教程

  1. 在 VSCode 中启用 MCP 服务器发现和运行功能:
    "chat.mcp.discovery.enabled": true,
    "chat.mcp.enabled": true
    
  2. 运行以下命令安装 MCP 服务:
    uv run mcp install main.py
    

调试方式

  1. 运行代码风格检查:
    uvx ruff check .
    
  2. 应用自动修复:
    uvx ruff check --fix .
    
  3. 格式化代码:
    uvx ruff format .
    
  4. 静态类型检查:
    uvx mypy .
    
  5. 手动运行所有预提交检查:
    pre-commit run --all-files