WITS(科研成果服务平台)的 MCP (Model Context Protocol) 连接器,为 AI 助手提供 HTTP 请求能力和 WITS 系统认证功能。
httpx 和 fastmcp,高性能异步处理| 工具名称 | 功能说明 |
|---|---|
http_get | 发送 GET 请求,支持查询参数和请求头 |
http_post | 发送 POST 请求,支持表单数据和 JSON 请求体 |
http_put | 发送 PUT 请求 |
http_delete | 发送 DELETE 请求 |
http_patch | 发送 PATCH 请求 |
http_head | 发送 HEAD 请求 |
http_request | 通用 HTTP 请求,支持所有方法、认证、重定向等高级配置 |
| 工具名称 | 功能说明 |
|---|---|
wits_get_token | 获取有效的 WITS Token,自动检查缓存并在过期时重新登录 |
{
"mcpServers": {
"wits-client": {
"command": "uvx",
"args": [
"git+https://cnb.cool/zkcy.net.cn/mcp/wits-client.git"
],
"env": {
"WITS_BASE_URL": "https://test.wits.zkcy.net.cn",
"WITS_USERNAME": "<你的用户名>",
"WITS_PASSWORD": "<你的密码>"
}
}
}
}
{
"mcpServers": {
"wits-client": {
"command": "uv",
"args": [
"--directory",
"/path/to/wits-client",
"run",
"main.py"
]
}
}
}
| 变量名 | 必填 | 说明 |
|---|---|---|
WITS_BASE_URL | 否 | WITS 系统地址(如 https://test.wits.zkcy.net.cn) |
WITS_USERNAME | 否 | 登录用户名 |
WITS_PASSWORD | 否 | 登录密码 |
WITS_TOKEN_FILE | 否 | Token 缓存文件路径(默认使用系统临时目录) |
提示:环境变量可以被工具参数覆盖,方便灵活配置。
请帮我登录 WITS 系统
AI 助手会调用 wits_get_token 工具:
wits_get_token(
base_url="https://test.wits.zkcy.net.cn",
username="your_username",
password="your_password"
)
返回示例:
{
"status": "success",
"message": "使用缓存的有效 Token",
"token": "eyJ0eXAiOiJK...",
"token_file": "/tmp/wits/wits_token.json"
}
登录成功后,可以在 HTTP 请求头中添加 Authorization: Bearer <token>:
请帮我查询任务编号为 2024-001 的查新任务
AI 助手会执行:
http_get(
url="https://test.wits.zkcy.net.cn/search/search_tasks/",
params={"task_num": "2024-001"},
headers={"Authorization": "Bearer eyJ0eXAiOiJK..."}
)
请帮我发送一个 POST 请求到 https://api.example.com/data, 请求体为 {"name": "test", "value": 123}
%TEMP%\wits\wits_token.json~/Library/Caches/wits/wits_token.json/tmp/wits/wits_token.jsonwits_get_token 时自动检查 Token 是否过期uv sync
uv run main.py
wits-client/ ├── main.py # MCP 服务主文件(包含所有工具) ├── pyproject.toml # 项目配置和依赖管理 ├── README.md # 项目文档 └── skills/ # 历史技能文档(已弃用)
| 依赖 | 版本 | 用途 |
|---|---|---|
fastmcp | >= 3.2.4 | MCP 服务框架 |
httpx | >= 0.28.1 | 异步 HTTP 客户端 |
pycryptodome | >= 3.21.0 | RSA 加密(WITS 登录) |