项目简介
YokTez MCP 是一个基于 FastMCP 库构建的 MCP 服务器实现,专门用于与土耳其 Yükseköğretim Kurulu (YÖK) 的国家硕士博士论文中心(Ulusal Tez Merkezi)进行交互。它将 YÖK 论文中心的搜索和文档获取功能封装成标准的 MCP 工具,以便大语言模型 (LLM) 应用和支持 MCP 的客户端(如 Claude Desktop, 5ire)能够通过调用这些工具来访问 YÖK 的论文数据。
主要功能点
- YÖK Tez Merkezi 标准接口: 提供一个符合 MCP 协议的标准化接口,便于 LLM 和客户端程序化访问 YÖK 论文数据。
- 多维度详细搜索: 支持根据论文标题、作者、导师、所属大学、院系、专业、论文编号、关键词、摘要内容、论文类型、年份范围、访问许可状态等多种详细条件进行精确或模糊搜索。
- 论文文档获取: 能够获取指定论文的 PDF 内容。特别地,它可以按页读取 PDF,并将指定的页面内容转换为 Markdown 格式,方便 LLM 理解和处理。
- 元数据提取: 从论文详情页面提取关键元数据,如标题、作者、年份、摘要等。
- PDF 访问许可检查: 在尝试获取 PDF 前检查论文是否允许在线访问。
- Markdown 内容处理: 将 PDF 文本内容转换为结构化的 Markdown,提升 LLM 的处理效率和准确性。
安装步骤
本项目作为 MCP 服务器,主要通过 MCP 客户端的自动发现/运行机制启动。您通常无需手动克隆仓库或执行安装脚本。但在配置客户端之前,需要确保您的系统具备以下环境:
- Python 3.11: 确保系统已安装 Python 3.11 版本。安装时请勾选“Add Python to PATH”选项。
- Git: 安装 Git 版本控制工具。Windows 用户需下载并安装 Git for Windows。
- uv: 安装 uv Python 包管理器。uv 是一个高性能的替代品,本项目使用 uvx 来运行仓库中的模块。具体安装方法请参考 uv 官方文档或项目 README。
- Microsoft Visual C++ Redistributable (仅限 Windows): 某些 Python 库(如 Playwright)需要此组件才能正常工作。请从 Microsoft 官网下载并安装最新版本。
满足上述前置条件后,即可在您的 MCP 客户端中进行配置。
服务器配置 (MCP 客户端)
在您的 MCP 客户端(如 Claude Desktop, 5ire 等支持 MCP 的应用)中,找到“工具”或“提供者”相关的设置界面,添加一个新的本地 MCP 服务器配置。配置信息通常需要填写名称、启动命令和参数列表。
-
Server Name (服务器名称): 您可以为该服务器自定义一个易于识别的名称,例如 'YokTez MCP'。
-
Command (启动命令): 填写 'uvx'。这是用于运行仓库中特定模块的工具。
-
Args (参数): 填写启动服务器所需的参数列表。这是一个包含字符串的列表,通常在客户端界面中分多行输入或以特定格式输入。根据该仓库的设计,参数应设置为:
- '--from' (指定源)
- 'git+https://github.com/saidsurucu/yoktez-mcp' (指定仓库 URL)
- 'yoktez-mcp' (指定要运行的仓库中的模块/入口点)
客户端配置界面可能要求您将它们作为单独的参数项添加。
配置完成后,保存设置并在客户端界面中激活 'YokTez MCP' 工具。客户端会自动使用配置的命令和参数启动服务器。
基本使用方法
工具激活后,您可以通过与您的 LLM 交互,引导模型调用 'YokTez MCP' 服务器提供的工具。该服务器目前提供两个主要工具:
- 'search_yok_tez_detailed': 用于执行详细的论文搜索。您可以向 LLM 描述您想搜索的论文条件(如“搜索 2022 年关于人工智能的硕士论文,作者是 Ahmet Yılmaz”),LLM 应该能够根据您的描述构建参数并调用此工具。工具将返回符合条件的论文摘要列表,包含标题、作者、学校、年份和论文详情页 URL 等信息。
- 'get_yok_tez_document_markdown': 用于获取特定论文 PDF 的内容。在通过搜索工具找到目标论文并获取到其 'detail_page_url' 后,您可以请求 LLM 使用该 URL 调用此工具,并指定您感兴趣的 PDF 页码(例如“获取这篇论文(提供 URL)的第 5 页内容”)。工具将返回该页的 Markdown 格式内容,以及总页数等信息。
LLM 将利用其工具调用能力与服务器进行交互,并将工具的返回结果用于回答您的问题或执行后续任务。
信息
分类
AI与计算