内容
# UYAP UDF MCP
UYAP 文档编辑器 `.udf` 文件生成服务器。允许克劳德(或任何 MCP 客户端)直接生成土耳其法律请愿书的 `.udf` 格式文件,而不是 `.docx`。
## 什么是 UDF?
UDF 是土耳其国家司法系统(UYAP)使用的文档格式。`.udf` 文件是一个 ZIP 归档文件,包含一个单独的 `content.xml` 文件,其中纯文本内容位于 CDATA 块中,格式化(粗体、斜体、下划线、对齐、缩进)通过 `<paragraph>` 和 `<content>` 元素中的偏移量/长度注释来应用。
## 工具列表
| 工具 | 用途 |
|---|---|
| `create_udf_from_markdown` | Markdown 语法 → `.udf`(推荐) |
| `create_udf` | 结构化段落列表 → `.udf`(精细控制) |
| `read_udf_from_base64` | 解析 base64 提供的 `.udf` 文件 |
| `read_udf` | 解析本地 `.udf` 文件(标准输入/输出模式) |
### `create_udf_from_markdown` 的 Markdown 语法
- 每行是一个新段落;空白行保持空白。
- 内联:`**粗体**`、`*斜体*`、`__下划线__`、`***粗体斜体***`。
- 行前缀 `|` → 居中(法院名称、标题)。
- 行前缀 `>>>` → 引用(斜体 + 左缩进 — 用于判例引用)。
- 行前缀 `:::` → 需求列表项(左缩进 — 编号需求)。
示例:
```
|**[法院名称]**
**案件编号** : [案件编号]
|**说明**
我们提交 **陈述** 以回应此案件。
>>>"[判例引用]" ([法院 / 法庭参考])
::: 1. [需求行]
```
## 输出
所有工具返回包含 `.udf` 文件的 JSON 对象(以 base64 编码),以及 `filename`、`size_bytes` 和 `paragraph_count`。MCP 客户端解码并保存文件。
在本地运行时(标准输入/输出),传递 `output_path` 以将文件写入磁盘。
## 运行
### 本地(标准输入/输出)— 克劳德代码,克劳德桌面
```bash
uv run python server.py
```
在克劳德代码中注册:
```bash
claude mcp add uyap-udf --scope user -- \
uv --directory /path/to/this/repo run python server.py
```
### 云(HTTP)— claude.ai 连接器
```bash
uv run python server.py --http
# 或设置 MCP_TRANSPORT=http
# 端口默认为 8000
```
端点:`POST /mcp`(可流式传输的 HTTP 传输)。
## 部署到 FastMCP 云
1. 将此仓库推送到 GitHub。
2. 进入 <https://fastmcp.cloud> → 新服务器 → 连接 GitHub 仓库。
3. 入口点:`server.py:mcp`。
4. 部署完成后,您将获得一个 `https://<name>.fastmcp.app/mcp` URL。
5. 在 claude.ai → 设置 → 连接器 → 添加自定义连接器 → 粘贴 URL。
## 许可证
MIT