Agntic AI for Research Papers
Search and extract information about research papers from arXiv.
MCP Agntic AI for Research Papers
This project implements a chatbot using the Model Context Protocol (MCP) to search and retrieve information about research papers from arXiv. The chatbot allows you to query papers by topic and extract detailed information about specific papers.
Overview
The system consists of two main components:
- Server: A FastMCP server that provides tools for searching arXiv papers and extracting paper information.
- Client: An MCP client that integrates with OpenAI's GPT model to process user queries and interact with the server.
The server stores paper information in JSON files organized by topic, while the client provides an interactive chat interface for users to input queries.
Features
- Search Papers: Search for papers on arXiv by topic, with configurable maximum results.
- Extract Paper Info: Retrieve detailed information (title, authors, summary, PDF URL, publication date) for a specific paper using its arXiv ID.
- Persistent Storage: Paper information is saved in JSON files under a
papersdirectory, organized by topic. - Interactive Chatbot: Users can interact with the chatbot via a command-line interface, with support for natural language queries powered by OpenAI's GPT model.
Requirements
- Python 3.12+
- Dependencies (install via
uvorpip):arxivmcpopenainest-asynciopython-dotenv
- OpenAI API key (stored in
src/keys.json) uv(recommended, for running the server and client)
Installation
- Clone the repository:
git clone
cd - Install dependencies using
uv(recommended):
uv pip install -r pyproject.toml
Or withpip:
pip install -r pyproject.toml - Create a
src/keys.jsonfile with your OpenAI API key:
{
"open_ai_api": "your-openai-api-key"
} - Ensure the MCP server configuration in
src/server_config.jsonis set up correctly:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"."
]
},
"research": {
"command": "uv",
"args": ["run", "research_server.py"]
},
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
}
}
}
Usage
- Start the MCP server:
uv run src/research_server.py
This runs the server with theresearchconfiguration, providing tools for paper search and extraction. - Run the client in a separate terminal:
uv run main.py
The client connects to the server, initializes the chatbot, and starts the interactive chat loop. - Interact with the chatbot:
- Enter a query like "Search for papers on quantum computing" or "Get info for paper 1234.56789".
- Type 'quit' to exit.
Project Structure
├── papers/ # Directory for storing paper information (auto-created)
├── src/
│ ├── mcp_chatbot.py # MCP client with chatbot implementation
│ ├── research_server.py # FastMCP server with arXiv search tools
│ ├── keys.json # API keys (not tracked in git)
│ ├── server_config.json # MCP server configuration
├── README.md
├── main.py # Entry point
Example Queries
- Search for papers:
Query: Find 3 papers on machine learning
Output: List of paper IDs, with details saved in papers/machine_learning/papers_info.json.
- Extract paper information:
Query: Get info for paper 2103.12345
Output: JSON-formatted paper details (title, authors, summary, etc.) if found.
Notes
- The server creates a
papersdirectory to store JSON files containing paper information, organized by topic (e.g.,papers/quantum_computing/papers_info.json). - The client uses
gpt-4o-miniby default. Update the model insrc/mcp_chatbot.pyif needed. - The system assumes
uvis installed for running scripts. Modify thecommandinserver_config.jsonif using a different tool (e.g.,python).
Future Improvements
- Add support for filtering papers by date, author, or category.
- Implement paper PDF download and storage.
- Enhance the chatbot with more natural language understanding for complex queries.
- Add a web-based UI for better user interaction.
License
This project is licensed under the MIT License. See the LICENSE file for details.
Server Terkait
Yoku
Enhance your applications, workflows and AI systems with reliable company data using our comprehensive Brand Identity API.
mcpdoc
Access website documentation for AI search engines (llms.txt files) over MCP.
Everything Search
Perform lightning-fast local file searches on Windows using the Everything Search Engine.
HeadHunter
An MCP server for the HeadHunter API, focusing on job seeker functionalities.
vinted-mcp-server
First MCP server for Vinted marketplace. Search millions of second-hand items, compare prices across 19 countries (FR, DE, ES, IT, NL, BE, UK...), analyze seller profiles with ratings and verification status, detect cross-country arbitrage opportunities, and track trending products. 5 tools: search_items, get_item, get_seller, compare_prices, get_trending. 2 resources: countries list, categories. Works with Claude Desktop, Cursor, Windsurf, and any MCP-compatible client. Zero config — just npx.
NPMLens MCP
NPMLens MCP lets your coding agent (such as Claude, Cursor, Copilot, Gemini or Codex) search the npm registry and fetch package context (README, downloads, GitHub info, usage snippets). It acts as a Model‑Context‑Protocol (MCP) server, giving your AI assistant a structured way to discover libraries and integrate them quickly.
O'Reilly Learning Platform
Search and manage content on the O'Reilly Learning Platform.
MCP Advisor
A discovery and recommendation service for exploring MCP servers using natural language queries.
Crypto News MCP Server
Provides real-time cryptocurrency news for AI agents using the NewsData.io API.
Researcher MCP
A research assistant powered by Perplexity AI for intelligent search, documentation retrieval, and code assistance.