ai_search_oschina
Search for technical news, blogs, questions, and projects on OSChina to find comprehensive Chinese open-source development resources and information.
Instructions
🌐 开源中国搜索 - 搜索开源中国技术资讯和项目
【重要】此工具会返回开源中国搜索URL,Claude Code应该使用WebFetch工具访问该URL以获取真实搜索结果。
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | 搜索关键词 | |
| type | No | 搜索类型 | all |
Implementation Reference
- mcp_server_node.js:824-939 (handler)The execution handler for the ai_search_oschina tool. This shared block handles multiple domestic search tools by constructing a platform-specific search URL, retrieving platform metadata, generating a detailed Markdown report saved to file, and returning a response instructing the user to use WebFetch on the search URL.case 'ai_search_csdn': case 'ai_search_juejin': case 'ai_search_segmentfault': case 'ai_search_cnblogs': case 'ai_search_oschina': case 'ai_search_aliyun_docs': case 'ai_search_tencent_docs': { const rawQuery = normalizeString(args.query); if (!rawQuery) { throw new Error('搜索关键词不能为空'); } const searchUrls = { ai_search_csdn: `https://so.csdn.net/so/search?q=${encodeURIComponent(rawQuery)}`, ai_search_juejin: `https://juejin.cn/search?query=${encodeURIComponent(rawQuery)}`, ai_search_segmentfault: `https://segmentfault.com/search?q=${encodeURIComponent(rawQuery)}`, ai_search_cnblogs: `https://zzk.cnblogs.com/s?w=${encodeURIComponent(rawQuery)}`, ai_search_oschina: `https://www.oschina.net/search?scope=all&q=${encodeURIComponent(rawQuery)}`, ai_search_aliyun_docs: `https://help.aliyun.com/search?spm=a2c4g.11186623.0.0&k=${encodeURIComponent(rawQuery)}`, ai_search_tencent_docs: `https://cloud.tencent.com/search?s=doc&keyword=${encodeURIComponent(rawQuery)}` }; const platformInfo = { ai_search_csdn: { name: 'CSDN', icon: '📝', description: '中国最大的IT社区和服务平台', tips: ['博客文章', '技术问答', '代码片段', '下载资源'], homepage: 'https://www.csdn.net/', toolKey: 'csdn-search' }, ai_search_juejin: { name: '掘金', icon: '💎', description: '面向开发者的技术内容分享平台', tips: ['前端开发', '后端开发', 'Android', 'iOS', '人工智能'], homepage: 'https://juejin.cn/', toolKey: 'juejin-search' }, ai_search_segmentfault: { name: 'SegmentFault', icon: '🔧', description: '中文技术问答社区', tips: ['技术问答', '技术文章', '活动沙龙', '编程挑战'], homepage: 'https://segmentfault.com/', toolKey: 'sf-search' }, ai_search_cnblogs: { name: '博客园', icon: '📚', description: '开发者的网上家园', tips: ['.NET', 'C#', 'Java', 'Python', '数据库'], homepage: 'https://www.cnblogs.com/', toolKey: 'cnblogs-search' }, ai_search_oschina: { name: '开源中国', icon: '🌐', description: '中国最大的开源技术社区', tips: ['开源项目', '技术资讯', '代码托管', '协作翻译'], homepage: 'https://www.oschina.net/', toolKey: 'oschina-search' }, ai_search_aliyun_docs: { name: '阿里云文档', icon: '☁️', description: '阿里云产品文档中心', tips: ['ECS', 'OSS', 'RDS', 'SLB', '容器服务'], homepage: 'https://help.aliyun.com/', toolKey: 'aliyun-docs' }, ai_search_tencent_docs: { name: '腾讯云文档', icon: '☁️', description: '腾讯云产品文档中心', tips: ['CVM', 'COS', 'CDN', 'SCF', '数据库'], homepage: 'https://cloud.tencent.com/document/product', toolKey: 'tencent-docs' } }; const info = platformInfo[name]; const searchUrl = searchUrls[name]; const detailsContent = `${info.icon} ${info.name} 搜索\n\n` + `**搜索关键词**: ${rawQuery}\n` + `**平台介绍**: ${info.description}\n\n` + `---\n\n` + `🔗 **搜索链接**: ${searchUrl}\n\n` + `⚠️ **请使用 WebFetch 工具获取搜索结果**:\n` + `\`\`\`javascript\n` + `WebFetch({\n` + ` url: "${searchUrl}",\n` + ` prompt: "提取前10条搜索结果(标题、作者、发布时间、摘要、链接)"\n` + `})\n` + `\`\`\`\n\n` + `---\n\n` + `💡 **${info.name} 热门主题**:\n` + info.tips.map(tip => `• ${tip}`).join(' | ') + `\n\n🏠 **平台首页**: ${info.homepage}\n\n` + `📌 **搜索建议**:\n` + `• 使用精确关键词获得更好的结果\n` + `• 结合多个平台搜索可获得更全面的信息\n` + `• 关注文章的发布时间,优先查看最新内容`; const filepath = await saveSearchResult(info.toolKey, rawQuery, detailsContent); return makeTextResponse( `${info.icon} **${info.name}搜索**\n\n` + `**关键词**: ${rawQuery}\n` + `**搜索链接**: ${searchUrl}\n\n` + `✅ 详细信息已保存至: ${filepath || '保存失败'}\n` + `💡 使用 WebFetch 工具访问搜索链接获取结果` ); }
- mcp_server_node.js:214-224 (schema)Tool schema definition including name, description, and input validation schema for ai_search_oschina.{ name: 'ai_search_oschina', description: '🌐 开源中国搜索 - 搜索开源中国技术资讯和项目\n\n【重要】此工具会返回开源中国搜索URL,Claude Code应该使用WebFetch工具访问该URL以获取真实搜索结果。', inputSchema: { type: 'object', properties: { query: { type: 'string', description: '搜索关键词' }, type: { type: 'string', enum: ['news', 'blog', 'ask', 'project', 'all'], description: '搜索类型', default: 'all' } }, required: ['query'] }
- mcp_server_node.js:252-254 (registration)Registration of the ai_search_oschina tool (along with all other AI_TOOLS) for the ListToolsRequestSchema handler, making it discoverable by MCP clients.server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools: AI_TOOLS, }));