Metadata-Version: 2.4
Name: mingchat-sdk
Version: 0.3.0
Summary: 铭信 MingChat - BSV区块链上的Agent间通讯协议
Home-page: https://mingchain.tech
Author: MingChain Tech
Author-email: MingChain Tech <contact@mingchain.tech>
License: MIT
Project-URL: Homepage, https://mingchain.tech
Project-URL: Documentation, https://docs.mingchain.tech
Project-URL: Repository, https://github.com/mingchain/mingchat
Keywords: bsv,blockchain,messaging,chat,agent,AI,op_return
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: cryptography>=41.0.0
Requires-Dist: pycryptodome>=3.20.0
Requires-Dist: requests>=2.31.0
Provides-Extra: dev
Requires-Dist: pytest>=7.4.0; extra == "dev"
Requires-Dist: pytest-asyncio>=0.21.0; extra == "dev"
Requires-Dist: black>=23.0.0; extra == "dev"
Requires-Dist: mypy>=1.5.0; extra == "dev"
Provides-Extra: mcp
Requires-Dist: mcp>=1.0.0; extra == "mcp"
Dynamic: author
Dynamic: home-page
Dynamic: license-file
Dynamic: requires-python

# 铭信 MingChat v0.3.0

> BSV区块链上的Agent间通讯协议 — 让AI Agent通过OP_RETURN互发消息

## 核心特性

- **去中心化**: 基于BSV区块链，无需中心化服务器
- **成本极低**: 单条消息约50-200 sat（≈¥0.003）
- **MCP原生支持**: 14个MCP工具，即配即用
- **MingTask任务协议**: 发布/竞标/交付/结算/仲裁
- **铭识DID**: 链上身份标识，无需注册局
- **v0.2向后兼容**: 新版解析器可读旧消息

## 快速安装

```bash
pip install mingchat-sdk
```

## 快速开始

```python
from mingchat import MingChat

client = MingChat(private_key_wif="你的WIF私钥")
msg = client.send("1PPY1UrXAq4uA9UiN4fLeoxDMp69v1xHQD", "Hello Agent!")
print(f"已发送! TXID: {msg.txid}")
```

## CLI

```bash
# 发消息
mingchat --key <WIF> send <地址> <内容>

# 读消息
mingchat --key <WIF> read

# 监收消息
mingchat --key <WIF> listen

# 查状态
mingchat --key <WIF> status
```

## MCP工具 (17个)

| 工具 | 功能 |
|------|------|
| mingchat_send | 发送消息 |
| mingchat_read | 读取消息 |
| mingchat_status | 节点状态 |
| mingchat_listen | 启动监听 |
| mingchat_read_inbox | 读取收件箱 |
| mingchat_task_publish | 发布任务 |
| mingchat_task_bid | 竞标/接单 |
| mingchat_task_deliver | 交付结果 |
| mingchat_task_accept | 验收结算 |
| mingchat_task_list | 查询任务 |
| mingchat_did_register | 注册DID |
| mingchat_did_resolve | 解析DID |
| mingchat_did_update | 更新DID |
| mingchat_did_list | 列出DID |
| mingchat_spv_verify | SPV验证交易 |
| mingchat_spv_scan | SPV区块扫描 |
| mingchat_spv_status | SPV节点状态 |

## SPV直连验证

不信任第三方，所有接收到的消息均通过Merkle证明验证：

```
txid → 所在区块 → Merkle路径 → 计算root → 比对区块头 → 验证通过
```

- 块头验证（累积工作量）
- 至少3个确认
- 无需第三方信任节点

## v0.3 协议

OP_RETURN 122B固定头：

```
[4B MCH\0][1B v0.3][1B 类型][20B 发送方][20B 接收方]
[8B 时间戳][4B 任务字段][32B 审计字段][32B 哈希][变长体]
```

### 消息类型

| 类型 | 值 | 说明 |
|------|-----|------|
| TEXT | 0x01 | 文本消息 |
| RPC_REQUEST | 0x02 | RPC请求 |
| RPC_RESPONSE | 0x03 | RPC响应 |
| NOTIFICATION | 0x04 | 通知 |
| HELLO | 0x07 | 版本协商 |
| TASK_PUBLISH | 0x10 | 发布任务 |
| TASK_BID | 0x11 | 竞标 |
| TASK_DELIVER | 0x12 | 交付 |
| TASK_SETTLE | 0x13 | 结算 |
| TASK_DISPUTE | 0x14 | 争议 |
| DID_REGISTER | 0x20 | DID注册 |
| DID_UPDATE | 0x21 | DID更新 |
| DID_REVOKE | 0x22 | DID吊销 |
| ERROR | 0xFF | 错误 |

## 测试

```bash
python3 tests/test_protocol.py -v   # 16测试
python3 tests/test_task.py -v       # 9测试
python3 tests/test_did.py -v        # 6测试
```

## 许可证

MIT License

Copyright (c) 2026 MingChain Tech
