Skip to main content
Glama
README.md
# chathook — AI 对话钩子 MCP Server

> 在 AI 完成任务后弹出原生输入对话框,让用户直接输入回复,保持对话不中断,直到用户明确结束。

## 工作原理

```
用户提问 → AI 处理任务 → AI 调用 chat_hook 工具
                                    ↓
                    弹出原生桌面对话框(输入框 + 提交按钮 + 倒计时)
                                    ↓
                     用户输入回复 / 关闭对话框结束
                                    ↓
                    工具返回用户输入 → AI 继续处理
                                    ↓
                        AI 再次调用 chat_hook ...
                                    ↓
                      用户关闭对话框 → 工具返回结束信号
                                    ↓
                         AI 结束回合,对话完成
```

## 安装

### 方式一:npx 从 npm 安装(推荐)

在 MCP 客户端的配置中添加:

```json
{
  "mcpServers": {
    "chathook": {
      "command": "npx",
      "args": ["-y", "mcp-chathook"]
    }
  }
}
```

### 方式二:npx 从 GitHub 安装

```json
{
  "mcpServers": {
    "chathook": {
      "command": "npx",
      "args": ["-y", "github:kedaya2025/mcp-chathook"]
    }
  }
}
```

### 方式三:本地运行

```bash
git clone https://github.com/kedaya2025/mcp-chathook.git
cd mcp-chathook
npm install
npm run build
```

```json
{
  "mcpServers": {
    "chathook": {
      "command": "node",
      "args": ["<path-to>/mcp-chathook/dist/index.js"]
    }
  }
}
```

## 使用方法

### 系统提示词配置

在 AI Agent 的系统提示词 / 自定义指令中添加:

```
所有对话或任务结束时,都必须调用 chathook 工具来向用户确认工作进程,
除非用户结束该工具的调用视为任务完成不再调用。
```

## License

MIT

TDQS

A4.8/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of confusion. The tool's purpose is clearly distinct.

Naming Consistency5/5

The single tool name 'chat_hook' uses a consistent underscore convention, which is fine for a single tool.

Tool Count3/5

The server has only one tool, which is at the low end of acceptable. While it serves a specific purpose, typically servers have more tools to cover broader functionality.

Completeness5/5

The single tool fully covers the server's purpose of user interaction. It handles input and special cases (decline, cancel) through return values, so no gaps are apparent.

Maintenance

ActivityInactive
ResponsivenessNo issues