giisp-arxiv-search-mcp
Version:
MCP服务器用于通过标题搜索arXiv论文
85 lines (67 loc) • 2.33 kB
JavaScript
import axios from "axios";
// 测试API连接和功能
async function testApi() {
console.log("🧪 开始测试arXiv搜索API...\n");
const apiClient = axios.create({
timeout: 30000,
headers: {
'Content-Type': 'application/json',
'User-Agent': 'MCP-ArxivSearch-Test/1.0.0'
}
});
try {
// 测试1: 基本搜索功能
console.log("📝 测试1: 基本搜索功能");
const testParams1 = {
key: "artificial intelligence",
pageSize: 5
};
const response1 = await apiClient.post(
"https://giiisp.com/first/paper/searchArxivByTitle",
testParams1
);
console.log(`✅ 状态码: ${response1.status}`);
console.log(`📊 返回数据: ${JSON.stringify(response1.data, null, 2)}\n`);
// 测试2: 中文搜索
console.log("📝 测试2: 中文搜索");
const testParams2 = {
key: "机器学习",
pageSize: 3
};
const response2 = await apiClient.post(
"https://giiisp.com/first/paper/searchArxivByTitle",
testParams2
);
console.log(`✅ 状态码: ${response2.status}`);
console.log(`📊 返回数据: ${JSON.stringify(response2.data, null, 2)}\n`);
// 测试3: 大数量返回
console.log("📝 测试3: 大数量返回");
const testParams3 = {
key: "quantum computing",
pageSize: 20
};
const response3 = await apiClient.post(
"https://giiisp.com/first/paper/searchArxivByTitle",
testParams3
);
console.log(`✅ 状态码: ${response3.status}`);
console.log(`📊 返回数据: ${JSON.stringify(response3.data, null, 2)}\n`);
console.log("🎉 所有测试通过!");
} catch (error) {
console.error("❌ 测试失败:");
if (error.code === "ECONNABORTED") {
console.error("⏰ 请求超时");
} else if (error.response) {
console.error(`🔴 API错误: ${error.response.status} - ${error.response.statusText}`);
console.error(`📄 响应数据: ${JSON.stringify(error.response.data, null, 2)}`);
} else if (error.request) {
console.error("🌐 网络错误: 无法连接到服务器");
} else {
console.error(`⚠️ 其他错误: ${error.message}`);
}
process.exit(1);
}
}
// 运行测试
testApi();