LitSynth MCP Server

LitSynth MCP Server

Enables intelligent academic paper discovery through ArXiv search and AI-powered semantic similarity analysis. Helps researchers find and rank the most relevant papers using natural language queries and state-of-the-art sentence transformers.

Category
访问服务器

README

LitSynth MCP Server

<p align="center"> <picture style="display:block; margin: 0 auto; width: 400px;"> <source srcset="public/logo-dark.png" media="(prefers-color-scheme: dark)"> <img src="public/logo-light.png" alt="AI Research Assistant Logo" style="display:block; margin: 0 auto"> </picture> </p>

A Model Context Protocol (MCP) server for intelligent academic paper discovery and semantic search using ArXiv. This server provides tools for searching academic papers and performing semantic similarity analysis using state-of-the-art sentence transformers.

Features

  • ArXiv Search: Query ArXiv database with automatic URL encoding for complex search terms
  • Semantic Search: Find papers most relevant to your research using AI-powered semantic similarity
  • Robust Error Handling: Graceful handling of network issues and malformed data
  • Flexible Input: Support for various query formats including spaces and special characters

Tools Available

1. greet(name: str)

Simple greeting function for testing server connectivity.

Parameters:

  • name: String - Name to greet

Returns: Greeting message

2. search_query_arxiv(query: str, max_results: int = 5)

Search ArXiv database for academic papers matching your query.

Parameters:

  • query: String - Search terms (automatically URL encoded)
  • max_results: Integer - Maximum number of results to return (default: 5)

Returns: Structured response with papers including:

  • Title
  • Authors
  • Summary/Abstract
  • ArXiv link
  • Status message

Example:

search_query_arxiv("multimodal agents", 3)

3. search_semantic_arxiv(query: str, papers: list, top_k: int = 5)

Perform semantic search on a list of papers to find the most relevant ones.

Parameters:

  • query: String - Research query for semantic matching
  • papers: List - Papers to search through (from search_query_arxiv or manual list)
  • top_k: Integer - Number of most relevant papers to return (default: 5)

Returns: Ranked papers with similarity scores including:

  • Title
  • Summary
  • Authors
  • ArXiv link
  • Similarity score (0-1)

Example:

papers = search_query_arxiv("machine learning")
relevant = search_semantic_arxiv("deep reinforcement learning", papers, 3)

Installation

Prerequisites

  • Python 3.8+
  • pip

Setup

  1. Clone or download the project files

  2. Install dependencies:

pip install -r requirements.txt
  1. Run the MCP server:
python my_server.py

Dependencies

The project requires the following packages (see requirements.txt):

  • fastmcp>=0.1.0 - MCP framework
  • feedparser>=6.0.10 - RSS/Atom feed parsing for ArXiv API
  • requests>=2.31.0 - HTTP requests
  • sentence-transformers>=2.2.2 - Semantic search and embeddings
  • torch>=2.0.0 - PyTorch for neural networks
  • transformers>=4.21.0 - Hugging Face transformers
  • numpy>=1.21.0 - Numerical computing

Project Structure

ai-research-assistant/
├── my_server.py           # Main MCP server implementation
├── requirements.txt       # Python dependencies
└── README.md             # This file

Usage Examples

Basic ArXiv Search

Search for papers on a specific topic:

# Search for papers about transformers
results = search_query_arxiv("attention mechanisms transformers", 5)

Semantic Paper Discovery

Find the most relevant papers from a search result:

# First, get papers on a broad topic
papers = search_query_arxiv("artificial intelligence", 20)

# Then find the most relevant ones for your specific research
relevant_papers = search_semantic_arxiv("graph neural networks", papers, 5)

Handling Complex Queries

The server automatically handles special characters and spaces:

# These work automatically without manual encoding
search_query_arxiv("machine learning & deep learning: survey")
search_query_arxiv("reinforcement learning (RL) applications")

Technical Details

Semantic Search Model

The server uses the sentence-transformers/all-MiniLM-L6-v2 model for semantic embeddings. This model:

  • Provides 384-dimensional sentence embeddings
  • Balances speed and accuracy
  • Works well for academic text similarity

Error Handling

The server includes comprehensive error handling:

  • URL Encoding: Automatic handling of spaces and special characters

  • Network Errors: Graceful degradation when ArXiv is unavailable

  • Data Validation: Safe handling of missing or malformed paper data

  • Empty Results: Informative messages when no papers are found

Response Format

All functions return structured responses:

{
  "message": "Status or info message",
  "results": [
    {
      "title": "Paper Title",
      "author": ["Author 1", "Author 2"],
      "summary": "Abstract text...",
      "link": "https://arxiv.org/abs/...",
      "similarity_score": 0.85  // Only in semantic search
    }
  ]
}

Troubleshooting

Common Issues

"URL can't contain control characters" error:

  • This is fixed in the current version with automatic URL encoding
  • Make sure you're using the latest version of the server

"No papers found" result:

  • Check your query spelling
  • Try broader search terms
  • Verify ArXiv service availability

Slow semantic search:

  • First run downloads the transformer model (~90MB)
  • Subsequent runs are much faster
  • Consider reducing top_k for faster results

Memory issues:

  • The sentence transformer model requires ~500MB RAM
  • Reduce batch sizes if experiencing memory problems

Contributing

Feel free to submit issues, feature requests, or pull requests to improve the AI Research Assistant.

License

This project is open source. Please check individual dependency licenses for commercial use.

Acknowledgments

  • ArXiv for providing free access to academic papers
  • Sentence Transformers for semantic search capabilities
  • FastMCP for the MCP server framework

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选