Skip to content
Agentmart
Submit a tool

Lindas MCP

MCP server for LINDAS — the Swiss administration's linked-data SPARQL knowledge graph (cube.link)

Connector by malkreide · GitHub account verified by the MCP Registry

IndexedMITLocal (stdio)
Write a review

Install

Works with Claude Code, Codex, VS Code, Cursor, Windsurf, Claude Desktop. Read the repository before you give any tool access to your data.

npx agentmarket install connector/malkreide-lindas-mcp

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

MCP server for LINDAS — the Swiss administration's linked-data SPARQL knowledge graph (cube.link)

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this server can do and what it asks for, from its tool list and install config. Checked Oct 25, 2026.

Tools
7 read · 0 write · 0 deleteRead-only
Secrets
None asked for
Install scripts
Not scanned yet
Runs as
Python package

Tools by what they do 7

Read from the source code; the running server may list different tools.

Read 7 · Look things up without changing anything.

  • api_status
  • get_cube_structure
  • list_publishers
  • query_cube_observations
  • resolve_municipality
  • run_sparql
  • search_cubes

Tools (7)

Read from the source code; the running server may differ. Descriptions are the server’s own words; hidden characters are shown as [U+…].

  • api_statusread-only

    Check whether the LINDAS SPARQL endpoint is reachable. Returns an evaluable status even on failure, so an agent can tell "no data matched" apart from "the endpoint is down".

  • get_cube_structureread-only

    Read a cube's dimensions and measures — what the cube contains. Tells you which dimensions you can filter on (`KeyDimension`), which values are measured (`MeasureDimension`), and which dimensions carry code lists. It also returns the licence, which is frequently a Fedlex URI you can resolve with fedlex-mcp. Call this to understand a cube before reading it, and to write a `run_sparql` query against it. It is NOT a prerequisite for readable data: `query_cube_observations` fetches the structure itself and resolves labels on its own. Note that this result reports only *whether* a dimension has a…

  • list_publishersread-only

    List the federal bodies that publish cubes, with cube counts. Returns creator URIs you can pass to `search_cubes` to restrict a search to one authority.

  • query_cube_observationsread-only

    Read the actual data points of a cube, with codes resolved to labels. This is phase 2. Values are returned keyed by human-readable dimension names, and coded dimension values (e.g. region "1805") are replaced by their labels (e.g. "Alpennordhang") unless you turn that off. For large cubes this reads only the first `limit` observations. LINDAS has no cheap way to filter observations server-side by arbitrary dimension value, so heavy analytical slicing belongs in `run_sparql`. Args: cube_uri: A cube URI from `search_cubes`. language: Language for labels. limit: Maximum observation…

  • resolve_municipalityread-only

    Resolve a Swiss municipality to its LINDAS URI and BFS number. The BFS commune number is the join key across the whole portfolio: the same number identifies the municipality in swiss-statistics-mcp, zurich-opendata-mcp and any cube that references a place. In LINDAS the URI is literally ld.admin.ch/municipality/<BFS>. Args: name_or_bfs: A municipality name ("Zürich") or a BFS number ("261"). language: Language for the name.

  • run_sparqlread-only

    Run a raw SPARQL SELECT query. Advanced escape hatch — use sparingly. Prefer the structured tools. This exists for analytical queries the guarded tools cannot express (cross-cube joins, aggregations, custom filters). Guardrails, learned from probing: LINDAS times out on unanchored scans, so always anchor on a known class such as `?x a <https://cube.link/Cube>`. A bare `SELECT * WHERE { ?s ?p ?o }` will time out. This tool caps the result at 500 rows and the runtime at 30 seconds. Args: query: A complete SPARQL SELECT query, including its own PREFIX lines.

  • search_cubesread-only

    Find statistical data cubes in LINDAS by topic. The entry point. Returns cube URIs you then pass to `get_cube_structure`. By default only the newest published version of each cube is returned; set `latest_only=False` to see every version. **Check `truncated` before you conclude anything from the result.** `returned` alone cannot tell a complete answer from a first page. - `truncated: false` — `cubes` holds every cube that matched. You may say so. - `truncated: true` — more cubes matched than you got back, or that could not be ruled out cheaply. Do NOT report the result as the complete set…

Signals

Stars
0
Forks
0
Open issues
0
Weekly downloads
49
Last commit
Sep 26, 2026 (1 month ago)
Last release
Sep 19, 2026 (1 month ago)
Last package publish
Sep 19, 2026 (1 month ago)

From GitHub (fetched Oct 24, 2026) and the package registry.

Details

Registry name
io.github.malkreide/lindas-mcp
Version
0.3.0
Auth
No auth
Packages
pypi lindas-mcp
License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from malkreide

Cite this page

Lindas MCP. Agent Mart. https://agentmart.dev/connectors/malkreide-lindas-mcp (last updated 2026-10-24)