关于 Wikipedia Simple English
Wikipedia Simple English 是用于搜索 Wikipedia 并获取摘要或全文的 MCP 服务,优先选用易读的 Simple English 内容。文章不存在或内容过短时会回退到常规英语,并返回结构化元数据和正文。
主要功能
- 01搜索 Wikipedia 条目
- 02获取摘要和完整文章
- 03优先使用 Simple English 并自动回退
- 04处理消歧和标题建议
- 05返回结构化元数据与正文
适用场景
- 01查找易读的主题解释
- 02为写作收集参考资料
- 03根据 Wikipedia 条目核查事实
- 04研究标题含义不明确的主题
MCP 相关
它向 MCP 客户端提供 Wikipedia 搜索、摘要和全文工具,并返回结构化结果及消歧选项。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Wikipedia 简明英语 MCP 服务
一个模型上下文协议(MCP)服务,可访问 Wikipedia 内容,优先使用简明英语 Wikipedia;当内容不可用或质量较差时,会智能回退到常规英语 Wikipedia。
概述
此 MCP 服务充当 AI 助手与 Wikipedia 之间的桥梁,专为以下用途设计:
- 优先使用简明英语:首先使用简明英语 Wikipedia,以提供更清晰、更易理解的内容
- 智能回退:必要时自动回退到常规英语 Wikipedia
- 质量检测:评估内容质量,对于内容过少的文章,切换到英语 Wikipedia
- 便于阅读:注重可读性和易用性
功能
🔍 搜索工具
- 搜索 Wikipedia 文章
- 返回结构化元数据和按相关性排序的页面标题列表
- 优先尝试简明英语,失败时回退到英语
- 可配置结果数量上限
📄 摘要工具
- 获取 Wikipedia 页面摘要/摘录
- 响应轻量、快速,便于快速概览
- 提供包含内容长度和语言标识的结构化元数据
- 自动处理消歧义
📖 内容工具
- 获取 Wikipedia 页面完整内容
- 提供完整文章文本,便于深入研究
- 以独立的元数据块和内容块提供结构化输出
- 根据质量选择语言
安装与设置
先决条件
- Python 3.12 或更高版本
uv包管理器
快速开始
使用 uvx 直接运行:
uvx git+https://github.com/bhubbb/mcp-se-wikipedia
或在本地安装:
-
克隆或下载此项目
-
安装依赖项:
cd mcp-se-wikipedia uv sync -
运行服务:
uv run python main.py
与 AI 助手集成
此 MCP 服务专为支持模型上下文协议的 AI 助手而设计。配置 AI 助手,通过 stdio 连接到此服务。
Claude Desktop 配置示例:
{
"mcpServers": {
"wikipedia-se": {
"command": "uvx",
"args": ["git+https://github.com/bhubbb/mcp-se-wikipedia"]
}
}
}
如果使用本地安装:
{
"mcpServers": {
"wikipedia-se": {
"command": "uv",
"args": ["run", "python", "/path/to/mcp-se-wikipedia/main.py"]
}
}
}
仅使用完整英语 Wikipedia(跳过简明英语):
{
"mcpServers": {
"wikipedia-se": {
"command": "uvx",
"args": ["git+https://github.com/bhubbb/mcp-se-wikipedia"],
"env": {
"WIKIPEDIA_MODE": "full"
}
}
}
}
配置
可使用环境变量配置服务行为:
WIKIPEDIA_MODE
控制使用哪个版本的 Wikipedia:
simple(默认):优先使用简明英语 Wikipedia,并在必要时自动回退到常规英语full:仅使用常规英语 Wikipedia,完全跳过简明英语
用法示例:
# Default mode (Simple English first)
uv run python main.py
# Full Wikipedia mode only
WIKIPEDIA_MODE=full uv run python main.py
以下情况适合使用此选项:
- 需要更详细的技术内容
- 希望获得来自常规 Wikipedia 的一致结果
- 处理完整英语 Wikipedia 涵盖更好的主题
可用工具
search
搜索 Wikipedia 文章并获取结构化结果。
参数:
query(必需):搜索词limit(可选):要返回的结果数量上限(1-20,默认值:10)
返回:
- 搜索元数据(Wikipedia 版本、查询内容、结果数量、语言代码)
- 匹配的文章标题列表
示例:
{
"name": "search",
"arguments": {
"query": "solar system",
"limit": 5
}
}
summary
获取 Wikipedia 页面的摘要/摘录。
参数:
title(必需):要获取摘要的页面标题auto_suggest(可选):找不到完全匹配项时,自动建议相似标题(默认值:true)
返回:
- 摘要元数据(标题、Wikipedia 版本、语言代码、URL、内容长度)
- 页面摘要文本
示例:
{
"name": "summary",
"arguments": {
"title": "Earth",
"auto_suggest": true
}
}
content
获取 Wikipedia 页面的完整内容。
参数:
title(必需):要获取完整内容的页面标题auto_suggest(可选):找不到完全匹配项时,自动建议相似标题(默认值:true)
返回:
- 内容元数据(标题、Wikipedia 版本、语言代码、URL、内容长度)
- 完整文章内容
示例:
{
"name": "content",
"arguments": {
"title": "Earth",
"auto_suggest": true
}
}
工作原理
语言优先级系统
- 优先使用简单英语(默认模式):所有请求都会先查询简单英语维基百科
- 质量检查:对于内容或摘要请求,检查内容是否足够充实(>500 个字符)
- 自动回退:在以下情况下切换到英语维基百科:
- 简单英语维基百科中不存在该页面
- 内容过于简短(可能是短小页面)
- 搜索没有返回结果
- 完整维基百科模式:设置
WIKIPEDIA_MODE=full时,跳过简单英语维基百科,直接使用常规英语维基百科
结构化输出格式
所有工具都会返回由以下独立区块组成的结构化响应:
- 元数据:维基百科版本、语言代码、URL、内容统计信息
- 内容:搜索结果、摘要或完整文章内容
- 选项:匹配多个页面时提供的消歧选项
这种结构让响应既便于人类阅读,也便于机器解析。
错误处理
- 消歧:匹配多个页面时,返回选项列表
- 未找到页面:提供清晰的错误消息和建议
- 网络问题:妥善处理错误并提供有用的消息
使用场景
面向学生和学习者
- 获取对复杂主题的简明解释
- 以更清晰易懂的语言获取教育内容
- 借助自动调整复杂度的功能获得研究帮助
面向内容创作
- 为文章和解释提供素材
- 使用可靠的维基百科来源核查事实
- 借助可读性优化获得研究支持
面向无障碍访问
- 为不同阅读水平的读者提供更易读的内容
- 为非母语人士提供简化的语言
- 清晰、简洁地传递信息
示例
基本搜索
向 AI 助手提问:“搜索维基百科,查找有关光合作用的信息”
服务将:
- 在简单英语维基百科中搜索“photosynthesis”
- 返回结构化元数据(版本、语言代码、结果数量)
- 提供相关条目列表
- 必要时回退到英语维基百科
获取摘要
向 AI 助手提问:“从维基百科获取一份关于月球的摘要”
服务将:
- 尝试从简单英语维基百科获取“Moon”的摘要
- 返回结构化元数据(标题、版本、URL、内容长度)
- 提供页面摘要
- 如果无法使用简单英语维基百科,则回退到英语维基百科
获取完整内容
向 AI 助手提问:“获取关于月球的完整维基百科条目”
服务将:
- 尝试从简单英语维基百科获取完整的“Moon”条目
- 检查内容是否足够充实
- 返回结构化元数据和完整条目内容
- 必要时回退到英语维基百科
消歧处理
向 AI 助手提问:“获取有关 Mercury 的信息”
如果匹配到多个页面(行星 Mercury、元素 Mercury 等),服务将返回:
- 结构化的消歧元数据
- 可供选择的选项列表
开发
项目结构
mcp-se-wikipedia/
├── main.py # Main MCP server implementation
├── pyproject.toml # Project dependencies and metadata
├── AGENT.md # This documentation
└── .venv/ # Virtual environment (created by uv)
主要依赖项
mcp:Model Context Protocol 框架wikipedia:Python 维基百科 API 封装库asyncio:为 MCP 提供 Async/await 支持
自定义
修改 main.py 即可轻松自定义服务:
- 质量阈值:更改内容质量检查的 500 字符阈值
- 搜索限制:修改默认和最大搜索结果数量限制
- 语言设置:添加对其他维基百科语言的支持
- 内容筛选:添加自定义内容处理或筛选
测试服务
直接测试服务:
uvx git+https://github.com/bhubbb/mcp-se-wikipedia
或使用本地安装:
cd mcp-se-wikipedia
uv run python main.py
服务通过 stdin/stdout 使用 JSON-RPC 进行通信,因此需要使用 MCP 客户端或 AI 助手与其正常交互。
故障排除
常见问题
- 导入错误:确保已通过
uv sync安装所有依赖项 - 连接问题:检查网络连接,确保可以访问维基百科 API
- 速率限制:维基百科设有速率限制;服务会妥善处理此问题
调试
通过修改 main.py 中的日志级别来启用调试日志:
logging.basicConfig(level=logging.DEBUG)
贡献
这是一个简单的单文件实现,旨在清晰易懂且便于修改。欢迎:
- 添加对更多 Wikipedia 语言的支持
- 实现更多内容筛选功能
- 添加缓存以提升性能
- 扩展更多 Wikipedia 功能
许可证
本项目采用与其依赖项相同的许可证。通过此服务访问的 Wikipedia 内容受 Wikipedia 许可条款约束。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。