pubmed_mcp_server2
Version:
Advanced Model Context Protocol server for PubMed database access with MeSH optimization and citation analysis
118 lines • 3.58 kB
TypeScript
export interface PubMedSearchResult {
idList: string[];
count: number;
retMax: number;
retStart: number;
queryTranslation?: string;
}
export interface PubMedArticle {
pmid: string;
title: string;
authors: string[];
journal: string;
publicationDate: string;
abstract?: string;
doi?: string;
pmcId?: string;
url: string;
}
export interface PubMedSummary {
pmid: string;
title: string;
authors: string[];
journal: string;
publicationDate: string;
doi?: string;
pmcId?: string;
}
export interface FullAbstractResult {
pmid: string;
title: string;
authors: string[];
journal: string;
publicationDate: string;
fullAbstract: string;
doi?: string;
pmcId?: string;
}
export interface FullTextResult {
pmid: string;
pmcId: string;
title: string;
fullText: string;
sections: {
title: string;
content: string;
}[];
}
export interface RISExportResult {
pmids: string[];
risData: string;
successCount: number;
errorCount: number;
errors: string[];
}
export interface CitationCountResult {
pmid: string;
title: string;
citationCount: number;
citingPmids: string[];
error?: string;
}
export interface QueryOptimizationResult {
originalQuery: string;
optimizedQuery: string;
improvements: string[];
meshTermsUsed: string[];
fieldTagsUsed: string[];
estimatedResults?: number;
}
export declare function searchPubMed(query: string, maxResults?: number, startIndex?: number): Promise<PubMedSearchResult>;
export declare function getArticleSummaries(pmids: string[]): Promise<PubMedSummary[]>;
export declare function getArticleDetails(pmids: string[]): Promise<PubMedArticle[]>;
export declare function getFullAbstract(pmids: string[]): Promise<FullAbstractResult[]>;
export declare function getFullText(pmcIds: string[]): Promise<FullTextResult[]>;
export declare function exportRIS(pmids: string[]): Promise<RISExportResult>;
export declare function searchAndFetchArticles(query: string, maxResults?: number): Promise<PubMedArticle[]>;
export declare function getCitationCounts(pmids: string[]): Promise<CitationCountResult[]>;
export declare function optimizeSearchQuery(originalQuery: string): Promise<QueryOptimizationResult>;
export interface SimilarArticleResult {
pmid: string;
title: string;
authors: string[];
journal: string;
publicationDate: string;
abstract?: string;
similarityScore?: number;
doi?: string;
pmcId?: string;
}
export interface BatchOperation {
pmid: string;
operation: 'abstract' | 'citations' | 'similar' | 'ris_export' | 'full_text';
status: 'pending' | 'processing' | 'completed' | 'error';
result?: any;
error?: string;
}
export interface BatchProcessingResult {
taskId: string;
operations: BatchOperation[];
summary: {
total: number;
completed: number;
failed: number;
processing: number;
};
results: {
abstracts?: FullAbstractResult[];
citations?: CitationCountResult[];
similar?: {
[pmid: string]: SimilarArticleResult[];
};
risExports?: string;
fullTexts?: FullTextResult[];
};
}
export declare function findSimilarArticles(pmid: string, maxResults?: number): Promise<SimilarArticleResult[]>;
export declare function batchProcess(pmids: string[], operations: string[], maxConcurrency?: number): Promise<BatchProcessingResult>;
//# sourceMappingURL=pubmed-api.d.ts.map