文档访问服务器

一个提供GTK4和Libadwaita文档访问的MCP服务器,支持搜索、获取特定文档和列出可用主题。

  • by Equat-ion
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Equat-ion/adwaita-mcp

使用说明

Adwaita MCP服务器

一个MCP(模型上下文协议)服务器,提供对GTK4和Libadwaita文档的访问。

特性

  • 资源:访问所有GTK4和Libadwaita markdown文档文件
  • 工具:搜索文档、获取特定文档并列出可用主题
  • 提示:用于搜索文档和入门指南的预配置提示

安装

# Install dependencies
pip install mcp

# Or install in development mode
pip install -e .

用法

运行服务器

python server.py

服务器在stdio上运行,可以与任何MCP客户端集成。

可用工具

  1. 搜索文档:搜索GTK4和Libadwaita文档

    • query:搜索查询(小部件名称、概念或主题)
    • category:可选类别筛选器(gtk, libadwaita,或 all)
  2. get_document:获取特定文档文件的完整内容

    • path:文档文件的相对路径
  3. 列表主题:列出所有可用的文档主题

    • category:可选类别筛选器

可用提示

  1. 搜索文档:在GTK4和Libadwaita文档中搜索特定主题
  2. 开始:GTK4或Libadwaita入门指南

资源

所有markdown文档文件都以URI的形式作为资源公开,格式如下:

adwaita://{category}/{relative_path}

例如:

  • adwaita://libadwaita/libadwaita-main/initialization.md
  • adwaita://gtk/gtk-main/reference/gtk/getting_started.md

配置

VS Code

将其添加到您的VS Code MCP配置文件中 ~/.config/Code/User/mcp.json:

{
  "servers": {
    "adw-server": {
      "command": "/absolute/path/to/adwaita-mcp/venv/bin/python",
      "args": [
        "/absolute/path/to/adwaita-mcp/server.py"
      ]
    }
  },
  "inputs": []
}

替换 /absolute/path/to/adwaita-mcp 带有此存储库克隆的实际路径。

看 mcp.json.example 对于模板。

Claude桌面版

将此添加到您的Claude Desktop配置文件中:

MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "adwaita-docs": {
      "command": "python",
      "args": ["/absolute/path/to/adwaita-mcp/server.py"]
    }
  }
}

或者,如果你想在隔离环境中使用紫外线:

{
  "mcpServers": {
    "adwaita-docs": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/adwaita-mcp",
        "run",
        "server.py"
      ]
    }
  }
}

文档结构

服务器包括 59份文件:

  • GTK4 (48个文件):用于创建图形用户界面的小部件工具包

    • GDK(低级显示和输入)
    • 葛兰素史克(渲染)
    • GTK(小部件和应用程序框架)
    • 平台特定指南(Wayland、X11、macOS、Windows、Broadway)
    • 迁移指南(GTK 2→4,GTK 3→4,GTK 4→5)
    • 开发人员指南(构建、编译、运行、调试)
  • 黎巴嫩 (11个文件):现代GNOME应用程序的构建块

    • 初始化和开始
    • 自适应布局
    • 样式类和CSS变量
    • 小工具库
    • 迁移指南(libhandy到libadwaita、断点、自适应对话框)

发展

服务器是用Python编写的,使用官方 mcp 包裹。它扫描markdown文件 docs/ 目录,并通过MCP协议公开它们。

要添加更多文档:

  1. 将标记文件放入 docs/gtk-main/ 或 docs/libadwaita-main/
  2. 重新启动服务器
  3. 新文件将被自动检测并可用

许可证

此MCP服务器按原样提供。文档文件来自GTK和Libadwaita项目,并受其各自许可证的约束。