内容
# 团队中心MCP-ready FastAPI包装器
本项目由上传的中文Teamcenter REST/SOA Markdown文档生成。
它包含:
- `data/teamcenter_api_index.json` — 从Markdown文档中提取的端点索引。
- `app/tc_client.py` — 带有cookie/XSRF处理的Teamcenter HTTP客户端。
- `app/main.py` — FastAPI包装器端点。
- `mcp_server/server.py` — 调用FastAPI包装器的MCP工具。
## 1. 安装
```bash
python -m venv .venv
.venv\Scripts\activate # Windows PowerShell: .venv\Scripts\Activate.ps1
pip install -r requirements.txt
copy .env.example .env
```
编辑 `.env`:
```env
TC_BASE_URL=https://您的Teamcenter主机
TC_USERNAME=infodba
TC_PASSWORD=您的密码
TC_VERIFY_SSL=false
```
## 2. 运行FastAPI包装器
```bash
uvicorn app.main:app --reload --port 8000
```
打开:
```text
http://127.0.0.1:8000/docs
```
## 3. 测试登录
```bash
curl -X POST http://127.0.0.1:8000/tc/login -H "Content-Type: application/json" -d "{}"
```
## 4. 搜索提取的API索引
```bash
curl "http://127.0.0.1:8000/api-index?search=createItems"
```
## 5. 通用调用任意Teamcenter端点
```bash
curl -X POST http://127.0.0.1:8000/tc/raw ^
-H "Content-Type: application/json" ^
-d "{"path":"tc/JsonRestServices/Core-2007-01-Session/getTCSessionInfo","body":{}}"
```
## 6. 运行MCP服务器
保持FastAPI运行,然后在另一个终端中:
```bash
set FASTAPI_BASE_URL=http://127.0.0.1:8000
python mcp_server/server.py
```
## 从翻译文档中生成的建议MCP工具
| MCP工具 | Teamcenter API | 目的 |
|---|---|---|
| `tc_login` | `Core-2011-06-Session/login` | 登录并存储cookie |
| `tc_get_session_info` | `Core-2007-01-Session/getTCSessionInfo` | 读取当前会话 |
| `tc_search_items` | `Query-2012-10-Finder/performSearch` | 搜索项目/修订 |
| `tc_get_item_from_id` | `Core-2007-01-DataManagement/getItemFromId` | 通过ID解析项目 |
| `tc_get_properties` | `Core-2006-03-DataManagement/getProperties` | 读取对象属性 |
| `tc_create_item` | `Core-2006-03-DataManagement/createItems` | 创建项目 |
| `tc_call_raw` | 任意提取的端点 | 通用端点执行 |
## 重要注意事项
Teamcenter REST/SOA负载因Teamcenter版本和站点自定义而异。通用 `/tc/raw` 端点被故意包含,以便您可以粘贴来自翻译的Markdown文档或Postman的精确请求正文进行测试。