UNPKG

giisp-arxiv-search-mcp

Version:

MCP服务器用于通过标题搜索arXiv论文

85 lines (67 loc) 2.33 kB
#!/usr/bin/env node 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();