メディアウィキアダプター
MediaWikiおよびWikiBase APIと連携するためのカスタム**モデルコンテキストプロトコル(MCP)**アダプター。このアダプターを使用すると、MCPフレームワークを使用してプログラムからMediaWikiページを取得および編集できます。
特徴
MediaWiki ページのコンテンツを取得します。
新しいコンテンツとオプションの要約を使用して MediaWiki ページを編集します。
さまざまな MediaWiki および WikiBase インスタンス用に設定可能な API ベース URL。
Related MCP server: Wikidata MCP Server
要件
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リソース
ページコンテンツを取得する
MediaWiki ページのコンテンツを取得します。
入力スキーマ:
{
"title": "string"
}出力スキーマ:
{ "content": "string" }
使用例:
const response = await server.callResource("getPageContent", {
title: "Main Page",
});
console.log(response.content);ツール
編集ページ
新しいコンテンツで 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 ベース: https://en.wikipedia.org/w/api.php
WikiBase API ベース: https://www.wikidata.org/w/api.php
server.configure()メソッドを使用してこれらのデフォルトを上書きできます。
貢献
貢献を歓迎します!以下の手順に従ってください。
リポジトリをフォークします。
機能またはバグ修正用の新しいブランチを作成します。
変更内容の詳細な説明を添えてプル リクエストを送信します。
ライセンス
このプロジェクトはLGPL 3.0以降のライセンスの下で提供されています。詳細はLICENSEファイルをご覧ください。
著者
Luca Mauriによって作成されました。