MediaWiki-MCP适配器
为MediaWiki和WikiBase API定制的模型上下文协议适配器
服务介绍
MediaWikiAdapter
一个自定义的Model Context Protocol (MCP) 适配器,用于与MediaWiki和WikiBase API进行交互。该适配器允许您使用MCP框架以编程方式获取和编辑MediaWiki页面。
功能
- 获取MediaWiki页面的内容。
- 使用新内容和可选摘要编辑MediaWiki页面。
- 可配置不同MediaWiki和WikiBase实例的API基础URL。
要求
- Node.js (v16或更高版本)
- TypeScript(用于开发)
- 启用了API访问的MediaWiki实例
安装
- 克隆仓库:
git clone https://github.com/yourusername/mediawikiadapter.git
cd mediawikiadapter
-
安装依赖项:
npm install -
构建项目:
npm run build
使用
配置适配器
您可以配置适配器以使用自定义的MediaWiki和WikiBase API端点:
server.configure({
mediaWikiAPIBase: "https://my.mediawiki.instance/api.php",
wikiBaseAPIBase: "https://my.wikibase.instance/api.php",
});
启动MCP服务器
使用以下命令运行MCP服务器:
node build/index.js
资源
getPageContent
获取MediaWiki页面的内容。
- 输入模式:
{
"title": "string"
}
- 输出模式:
{ "content": "string" }
示例用法:
const response = await server.callResource("getPageContent", {
title: "Main Page",
});
console.log(response.content);
工具
editPage
使用新内容编辑MediaWiki页面。
- 输入模式:
{
"title": "string",
"content": "string",
"summary": "string (optional)"
}
- 输出模式:
{
"success": "boolean"
}
示例用法:
const response = await server.callTool("editPage", {
title: "Main Page",
content: "Updated content for the page.",
summary: "Updated via MediaWikiAdapter",
});
console.log(response.success ? "Edit successful" : "Edit failed");
开发
以开发模式运行
要以TypeScript的开发模式运行项目:
npm run dev
代码检查
运行代码检查工具以检查代码质量:
npm run lint
测试
目前尚未实现测试。您可以在test目录中添加测试,并使用以下命令运行它们:
npm test
配置
适配器使用以下默认API基础URL:
- MediaWiki API基础URL: https://en.wikipedia.org/w/api.php
- WikiBase API基础URL: https://www.wikidata.org/w/api.php
您可以使用server.configure()方法覆盖这些默认值。
贡献
欢迎贡献!请遵循以下步骤:
- 分叉仓库。
- 为您的功能或错误修复创建一个新的分支。
- 提交带有详细更改描述的拉取请求。
许可证
该项目根据LGPL-3.0-or-later许可证许可。有关详细信息,请参阅LICENSE文件。
作者
由Luca Mauri创建。