KosmoKrator

data

Wikidata Lua API for KosmoKrator Agents

Agent-facing Lua documentation and function reference for the Wikidata KosmoKrator integration.

Lua Namespace

Agents call this integration through app.integrations.wikidata.*. Use lua_read_doc("integrations.wikidata") inside KosmoKrator to discover the same reference at runtime.

Call Lua from the Headless CLI

Use kosmo integrations:lua when a shell script, CI job, cron job, or another coding CLI should run a deterministic Wikidata workflow without starting an interactive agent session.

Inline Lua call
kosmo integrations:lua --eval 'dump(app.integrations.wikidata.search_entities({}))' --json
Read Lua docs headlessly
kosmo integrations:lua --eval 'print(docs.read("wikidata"))' --json
kosmo integrations:lua --eval 'print(docs.read("wikidata.search_entities"))' --json

Workflow file

Put repeatable logic in a Lua file, then execute it with JSON output for the calling process.

workflow.lua
local wikidata = app.integrations.wikidata
local result = wikidata.search_entities({})

dump(result)
Run the workflow
kosmo integrations:lua workflow.lua --json
kosmo integrations:lua workflow.lua --force --json
Namespace note. integrations:lua exposes app.integrations.wikidata, app.mcp.*, docs.*, json.*, and regex.*. Use app.integrations.wikidata.default.* or app.integrations.wikidata.work.* when you configured named credential accounts.

MCP-only Lua

If the script only needs configured MCP servers and does not need Wikidata, use the narrower mcp:lua command.

MCP Lua command
# Use mcp:lua for MCP-only scripts; use integrations:lua for this integration namespace.
kosmo mcp:lua --eval 'dump(mcp.servers())' --json

Agent-Facing Lua Docs

This is the rendered version of the full Lua documentation exposed to agents when they inspect the integration namespace.

Wikidata

Namespace: wikidata

Use this integration to search and retrieve public Wikidata entities, inspect claims, run bounded SPARQL queries, and build stable entity data or page URLs.

Authentication

The read-only Wikidata APIs used here are public and require no credentials.

Tools

  • wikidata_search_entities: search items or properties with wbsearchentities.
  • wikidata_get_entities: retrieve entities with wbgetentities.
  • wikidata_get_claims: retrieve claims with wbgetclaims.
  • wikidata_sparql: run a Wikidata Query Service SPARQL query.
  • wikidata_entity_data_url: build a Special:EntityData URL.
  • wikidata_entity_page_url: build a canonical Wikidata page URL.

Return Notes

Action API responses keep upstream Wikidata fields. Multiple IDs and props use Wikidata’s pipe-separated syntax, for example Q42|Q60 or labels|descriptions|claims.

Keep SPARQL queries selective and bounded. Prefer wikidata_search_entities and wikidata_get_entities for simple entity lookup instead of using SPARQL for text search.

Examples

local results = tools.wikidata_search_entities({
  search = "Douglas Adams",
  language = "en",
  limit = 5
})

local entity = tools.wikidata_get_entities({
  ids = "Q42",
  props = "labels|descriptions|claims",
  languages = "en"
})

local query = tools.wikidata_sparql({
  query = [[
    SELECT ?item ?itemLabel WHERE {
      ?item wdt:P31 wd:Q5.
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
    }
    LIMIT 5
  ]]
})
Raw agent markdown
# Wikidata

Namespace: `wikidata`

Use this integration to search and retrieve public Wikidata entities, inspect
claims, run bounded SPARQL queries, and build stable entity data or page URLs.

## Authentication

The read-only Wikidata APIs used here are public and require no credentials.

## Tools

- `wikidata_search_entities`: search items or properties with
  `wbsearchentities`.
- `wikidata_get_entities`: retrieve entities with `wbgetentities`.
- `wikidata_get_claims`: retrieve claims with `wbgetclaims`.
- `wikidata_sparql`: run a Wikidata Query Service SPARQL query.
- `wikidata_entity_data_url`: build a `Special:EntityData` URL.
- `wikidata_entity_page_url`: build a canonical Wikidata page URL.

## Return Notes

Action API responses keep upstream Wikidata fields. Multiple IDs and props use
Wikidata's pipe-separated syntax, for example `Q42|Q60` or
`labels|descriptions|claims`.

Keep SPARQL queries selective and bounded. Prefer `wikidata_search_entities`
and `wikidata_get_entities` for simple entity lookup instead of using SPARQL
for text search.

## Examples

```lua
local results = tools.wikidata_search_entities({
  search = "Douglas Adams",
  language = "en",
  limit = 5
})

local entity = tools.wikidata_get_entities({
  ids = "Q42",
  props = "labels|descriptions|claims",
  languages = "en"
})

local query = tools.wikidata_sparql({
  query = [[
    SELECT ?item ?itemLabel WHERE {
      ?item wdt:P31 wd:Q5.
      SERVICE wikibase:label { bd:serviceParam wikibase:language "en". }
    }
    LIMIT 5
  ]]
})
```
Metadata-derived Lua example
local result = app.integrations.wikidata.search_entities({})
print(result)

Functions

search_entities Read

Search Wikidata items or properties.

Lua path
app.integrations.wikidata.search_entities
Full name
wikidata.wikidata_search_entities
ParameterTypeRequiredDescription
No parameters.
get_entities Read

Retrieve Wikidata entities by IDs or site/title pairs.

Lua path
app.integrations.wikidata.get_entities
Full name
wikidata.wikidata_get_entities
ParameterTypeRequiredDescription
No parameters.
get_claims Read

Retrieve Wikidata claims for an entity, property, or claim ID.

Lua path
app.integrations.wikidata.get_claims
Full name
wikidata.wikidata_get_claims
ParameterTypeRequiredDescription
No parameters.
sparql Read

Run a Wikidata Query Service SPARQL query.

Lua path
app.integrations.wikidata.sparql
Full name
wikidata.wikidata_sparql
ParameterTypeRequiredDescription
No parameters.
entity_url Read

Build a Special:EntityData URL for JSON/RDF/Turtle/N-Triples/N3.

Lua path
app.integrations.wikidata.entity_url
Full name
wikidata.wikidata_entity_data_url
ParameterTypeRequiredDescription
No parameters.
entity_page_url Read

Build a canonical Wikidata entity page URL.

Lua path
app.integrations.wikidata.entity_page_url
Full name
wikidata.wikidata_entity_page_url
ParameterTypeRequiredDescription
No parameters.