Appearance
高校信息检索服务 MCP 工具使用文档
概述
基于Model Context Protocol (MCP)框架实现的高校行业资讯检索服务工具的使用方法。
MCP服务信息
- 服务名称:
mcp-server - 服务版本:
0.0.1 - 基础URL:
https://mcp.vsbclub.com - 协议: HTTPS + MCP
- 认证方式: X-API-KEY
认证配置
API密钥获取
- 访问开放平台注册页面
- 完成开发者认证
- 创建应用并获取API密钥
- 在MCP客户端配置中添加API密钥
客户端认证配置
在MCP客户端连接时,需要在请求头中携带API密钥:
java
// WebFlux SSE 客户端配置
var transport = new WebFluxSseClientTransport(
WebClient.builder()
.defaultHeader("X-API-KEY", "your_api_key_here")
.baseUrl("https://api.vsbclub.com")
);高校行业资讯检索工具 (search)
工具描述
获取高校行业指定类型指定日期的资讯列表。
工具参数
| 参数名 | 类型 | 必填 | 描述 | 示例 |
|---|---|---|---|---|
| startDate | string | 是 | 开始日期,格式:yyyy-MM-dd HH:mm:ss | 2024-11-01 00:00:00 |
| endDate | string | 是 | 结束日期,格式:yyyy-MM-dd HH:mm:ss | 2024-11-05 23:59:59 |
| columnName | string | 是 | 栏目名称 | 高校动态、信息化、科研成果等 |
支持的栏目类型
- 国家动态
- 地方动态
- 海外动态
- 高校动态
- 高校党建
- 教育视点
- 其他资讯
MCP工具调用示例
Java客户端调用
java
import io.modelcontextprotocol.spec.McpSchema.CallToolRequest;
import io.modelcontextprotocol.spec.McpSchema.CallToolResult;
import java.util.Map;
// 调用高校资讯检索工具
CallToolResult searchResult = client.callTool(
new CallToolRequest("search",
Map.of(
"startDate", "2025-06-01 00:00:00",
"endDate", "2024-06-01 23:59:59",
"columnName", "高校动态"
))
);
System.out.println("搜索结果: " + searchResult.content().get(0));Python客户端调用
python
import asyncio
from mcp import ClientSession, StdioServerParameters
from mcp.client.stdio import stdio_client
async def call_search_tool():
server_params = StdioServerParameters(
command="java",
args=[
"-Dspring.ai.mcp.server.stdio=true",
"-jar", "mcp-server.jar"
],
env={"X_API_KEY": "your_api_key_here"}
)
async with stdio_client(server_params) as (read, write):
async with ClientSession(read, write) as session:
await session.initialize()
result = await session.call_tool(
"search",
{
"startDate": "2024-11-01 00:00:00",
"endDate": "2024-11-05 23:59:59",
"columnName": "高校动态"
}
)
print(f"搜索结果: {result.content}")
asyncio.run(call_search_tool())返回数据格式
json
{
"code": 200,
"msg": "ok",
"data": {
"records": [
{
"url": "https://example.com/news/123",
"title": "资讯标题",
"summary": "资讯摘要信息",
"content": "资讯内容详情..."
}
],
"total": 150
}
}MCP客户端集成
WebFlux SSE客户端
java
import io.modelcontextprotocol.client.transport.WebFluxSseClientTransport;
import io.modelcontextprotocol.client.McpClient;
import org.springframework.web.reactive.function.client.WebClient;
// 创建WebFlux SSE传输
var transport = new WebFluxSseClientTransport(
WebClient.builder()
.defaultHeader("X-API-KEY", "your_api_key_here")
.baseUrl("https://api.vsbclub.com")
);
// 创建MCP客户端
var client = McpClient.sync(transport).build();
client.initialize();
// 列出可用工具
var tools = client.listTools();
System.out.println("可用工具: " + tools);
// 调用工具
var result = client.callTool(new CallToolRequest("search",
Map.of("startDate", "2024-11-01 00:00:00",
"endDate", "2024-11-05 23:59:59",
"columnName", "高校动态")));Cherry Studio集成
在设置中添加MCP服务器,类型选择sse,目前不支持stdio,URL配置为:https://mcp.vsbclub.com/sse 请求头需要添加:X-API-KEY: your_api_key_here 添加完成点击开启,会开始自动初始化并加载工具列表,点开工具tab可以看到可用的工具列表
随后在聊天窗口即可使用
自定义MCP客户端
typescript
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StdioClientTransport } from '@modelcontextprotocol/sdk/client/stdio.js';
// 创建客户端
const client = new Client({
name: "example-client",
version: "1.0.0"
}, {
capabilities: {}
});
// 连接并使用
await client.connect(transport);
// 调用工具
const result = await client.callTool({
name: "search",
arguments: {
startDate: "2024-11-01 00:00:00",
endDate: "2024-11-05 23:59:59",
columnName: "高校动态"
}
});错误处理和故障排除
常见错误码
| 错误码 | 描述 | 解决方案 |
|---|---|---|
| 200 | 请求成功 | - |
| 401 | 认证失败 | 检查X-API-KEY是否正确配置 |
| 403 | 权限不足 | 确认API密钥有相应工具调用权限 |
| 429 | 请求频率超限 | 降低请求频率 |
| 500 | 服务器内部错误 | 联系技术支持 |
| -1 | 业务逻辑错误 | 根据msg字段提示调整参数 |
更新日志
v1.0.0 (2025-06-12)
- 发布高校行业资讯检索MCP工具
- 支持WebFlux SSE传输方式
- 统一使用X-API-KEY认证方式
- 提供多种客户端集成示例