Wikidata MCP Server

Integrations

  • Provides access to the project repository for installation via git clone from GitHub.

  • Enables integration with LangChain through langchain-mcp-adapters, allowing AI agents to interact with Wikidata's knowledge graph through the Model Context Protocol.

  • Provides tools for interacting with Wikidata, including searching for entity and property identifiers, retrieving entity metadata (labels and descriptions), accessing entity properties, and executing SPARQL queries against the Wikidata knowledge base.

Wikidata MCP サーバー

モデルコンテキストプロトコル(MCP)を用いたWikidata APIのサーバー実装。このプロジェクトは、識別子(エンティティとプロパティ)の検索メタデータ(ラベルと説明)の抽出SPARQLクエリの実行など、Wikidataを操作するためのツールを提供します。


インストール

まだインストールされていない場合はuvをインストールしてください。

$ curl -LsSf https://astral.sh/uv/install.sh | sh

次に、依存関係をインストールします。

$ git clone https://github.com/zzaebok/mcp-wikidata.git $ cd mcp-wikidata $ uv sync # if you want to run client example together $ uv sync --extra example

走る

次のコマンドでサーバーを実行します。

$ uv run src/server.py

単純なクライアント コード ( langchain-mcp-adaptersを使用) でテストする場合は、次のコマンドでクライアントを実行します。

# in another shell $ uv run src/client.py

LLM は有効なエンティティおよびプロパティ識別子を抽出し、Sparql クエリを実行し、最終的にポン・ジュノ監督の映画を推奨します。

{ "messages": [ HumanMessage( content="Can you recommend me a movie directed by Bong Joonho?", ), AIMessage( tool_calls=[ { "name": "search_entity", "args": {"query": "Bong Joon-ho"}, } ], ), ToolMessage( content="Q495980", name="search_entity", ), AIMessage( tool_calls=[ { "name": "get_properties", "args": {"entity_id": "Q495980"}, } ], ), ToolMessage( content='["P345", "P244", "P214", "P227", ...]', name="get_properties", ), AIMessage( tool_calls=[ { "name": "search_property", "args": {"query": "director"}, } ], ), ToolMessage( content="P57", name="search_property", ), AIMessage( tool_calls=[ { "name": "execute_sparql", "args": { "sparql_query": 'SELECT ?film ?filmLabel WHERE {\n ?film wdt:P57 wd:Q495980.\n SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }\n} LIMIT 1' }, } ], ), ToolMessage( content='[{"film": {"type": "uri", "value": "http://www.wikidata.org/entity/Q483761"}, "filmLabel": {"xml:lang": "en", "type": "literal", "value": "Mother"}}]', name="execute_sparql", ), AIMessage( content='I recommend the movie "Mother," which was directed by Bong Joon-ho.', ), ] }

Wikidata MCPツール

サーバーには次のツールが実装されています。

道具説明
search_entity(query: str)クエリで Wikidata エンティティ ID を検索します。
search_property(query: str)クエリで Wikidata プロパティ ID を検索します。
get_properties(entity_id: str)指定された Wikidata エンティティ ID に関連付けられたプロパティを取得します。
execute_sparql(sparql_query: str)Wikidata で SPARQL クエリを実行します。
get_metadata(entity_id: str, language: str = "en")指定された Wikidata エンティティ ID の英語のラベルと説明を取得します。

ライセンス

MITライセンス

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

モデル コンテキスト プロトコルを使用して Wikidata API と対話するためのサーバー実装。識別子の検索、メタデータの抽出、SPARQL クエリの実行のためのツールを提供します。

  1. Installation
    1. Run
      1. Wikidata MCP Tools
        1. License
      ID: hm1c5dex3y