UNPKG

paper-search-mcp-nodejs

Version:

A Node.js MCP server for searching and downloading academic papers from multiple sources, including arXiv, PubMed, bioRxiv, Web of Science, and more.

78 lines 2.08 kB
/** * Web of Science API集成模块 * 支持 Web of Science Starter API 和 Web of Science Researcher API */ import { Paper } from '../models/Paper.js'; import { PaperSource, SearchOptions, DownloadOptions, PlatformCapabilities } from './PaperSource.js'; interface WoSSearchOptions extends SearchOptions { /** 数据库选择 */ databases?: string[]; /** 文档类型 */ documentTypes?: string[]; /** 语言过滤 */ languages?: string[]; } export declare class WebOfScienceSearcher extends PaperSource { private readonly apiUrl; private readonly apiVersion; constructor(apiKey?: string, apiVersion?: string); getCapabilities(): PlatformCapabilities; /** * 搜索Web of Science论文 */ search(query: string, options?: WoSSearchOptions): Promise<Paper[]>; /** * Web of Science 通常不支持直接PDF下载 */ downloadPdf(paperId: string, options?: DownloadOptions): Promise<string>; /** * Web of Science 通常不提供全文内容 */ readPaper(paperId: string, options?: DownloadOptions): Promise<string>; /** * 根据DOI获取论文详细信息 */ getPaperByDoi(doi: string): Promise<Paper | null>; /** * 获取论文被引统计 */ getCitationCount(paperId: string): Promise<number>; /** * 构建搜索查询参数 */ private buildSearchQuery; /** * 构建WOS格式的查询字符串 */ private buildWosQuery; /** * 转义WOS查询中的特殊字符 */ private escapeWosQuery; /** * 映射排序字段到WOS API格式 */ private mapSortField; /** * 解析搜索响应 */ private parseSearchResponse; /** * 解析单个WoS记录 */ private parseWoSRecord; /** * 提取页码信息 */ private extractPages; /** * 发起API请求 */ private makeApiRequest; /** * 验证API密钥 */ validateApiKey(): Promise<boolean>; } export {}; //# sourceMappingURL=WebOfScienceSearcher.d.ts.map