Skip to main content
Glama
zzaebok

Wikidata MCP Server

by zzaebok

search_property

Find Wikidata property IDs by entering a specific query to uniquely identify desired properties, simplifying data retrieval and integration processes.

Instructions

Search for a Wikidata property ID by its query. Args: query (str): The query to search for. The query should be unambiguous enough to uniquely identify the property. Returns: str: The Wikidata property ID corresponding to the given query."

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYes

Implementation Reference

  • The main handler function for the 'search_property' tool. It is registered via the @server.tool() decorator and delegates to the search_wikidata helper with is_entity=False.
    @server.tool() async def search_property(query: str) -> str: """ Search for a Wikidata property ID by its query. Args: query (str): The query to search for. The query should be unambiguous enough to uniquely identify the property. Returns: str: The Wikidata property ID corresponding to the given query." """ return await search_wikidata(query, is_entity=False)
  • Shared helper function that performs the Wikidata search API call for both entities and properties, used by search_property.
    async def search_wikidata(query: str, is_entity: bool = True) -> str: """ Search for a Wikidata item or property ID by its query. """ params = { "action": "query", "list": "search", "srsearch": query, "srnamespace": 0 if is_entity else 120, "srlimit": 1, # TODO: add a parameter to limit the number of results? "srqiprofile": "classic_noboostlinks" if is_entity else "classic", "srwhat": "text", "format": "json", } async with httpx.AsyncClient() as client: response = await client.get(WIKIDATA_URL, headers=HEADER, params=params) response.raise_for_status() try: title = response.json()["query"]["search"][0]["title"] title = title.split(":")[-1] return title except KeyError: return "No results found. Consider changing the search term."

Other Tools

Related Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/zzaebok/mcp-wikidata'

If you have feedback or need assistance with the MCP directory API, please join our Discord server