Metadata-Version: 2.4
Name: xmcp-server-wxauto
Version: 0.1.2
Summary: 自动操作微信MCP服务
Requires-Python: >=3.10
Requires-Dist: mcp[cli]>=1.9.4
Requires-Dist: wxauto>=39.1.4
Description-Content-Type: text/markdown

# 微信消息发送服务器

这是一个基于 MCP (Micro Controller Protocol) 的微信消息发送服务器，通过命令行参数可以灵活配置服务器运行模式和日志级别。

## 快速开始（本地运行）
* 本步骤主要是为了本地测试自动操作微信的MCP服务功能
```bash
# 先安装服务
pip install xmcp-server-wxauto

# 以默认配置启动服务
xmcp-server-wxauto

# 指定日志级别和传输方式
xmcp-server-wxauto --log-level=INFO --transport=sse --port=8080
```

## 使用UVX配置MCP服务
* 给AI模型提供自动操作微信的MCP服务
```bash
{
  "mcpServers": {
    "wechat": {
      "command": "uvx",
      "args": [
        "xmcp-server-wxauto"
      ],
      "env": {}
    }
  }
}
```

## 命令行参数

### 日志级别 (`--log-level`)
设置服务器的日志输出级别，可选值：
- `DEBUG`：详细的调试信息，用于开发和问题排查
- `INFO`：正常运行的信息，显示关键操作
- `WARNING`：警告信息，可能影响功能但不影响运行
- `ERROR`：错误信息，功能无法正常执行
- `CRITICAL`：严重错误，可能导致程序崩溃

**默认值**：`ERROR`

**示例**：
```bash
xmcp-server-wxauto --log-level=DEBUG
```

### 传输方式 (`--transport`)
设置服务器与客户端之间的通信协议，可选值：
- `stdio`：使用标准输入输出进行通信，适用于进程间通信
- `sse`：使用 Server-Sent Events 进行实时通信，适用于网络环境

**默认值**：`stdio`

**注意**：
- `stdio` 模式下日志不会输出到控制台，避免干扰通信
- `sse` 模式需要指定端口参数

**示例**：
```bash
xmcp-server-wxauto --transport=sse
```

### 服务器端口 (`--port`)
当使用 `sse` 传输方式时，指定服务器监听的端口号。

**默认值**：`8000`

**示例**：
```bash
xmcp-server-wxauto --transport=sse --port=8080
```

## 完整示例

启动一个具有详细日志记录的网络服务器：
```bash
xmcp-server-wxauto --log-level=INFO --transport=sse --port=8080
```

启动一个用于进程间通信的服务器（无日志输出）：
```bash
xmcp-server-wxauto --transport=stdio
```

## 常见问题

1. **为什么 `stdio` 模式下看不到日志？**
   - `stdio` 模式使用标准输入输出进行通信，日志输出会干扰通信协议，因此默认禁用控制台日志。

2. **如何在后台运行服务器？**
   - 可以使用 `nohup` 或 `systemd` 等工具将服务器作为守护进程运行。

3. **端口被占用怎么办？**
   - 使用 `--port` 参数指定其他可用端口，或使用 `lsof` 命令查找并关闭占用端口的进程。

```bash
# 查找占用8000端口的进程
lsof -i:8000

# 终止进程（PID为进程ID）
kill -9 <PID>
```