LINDAS MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LINDAS_HOST | No | HTTP bind address (only used when transport is http) | 0.0.0.0 |
| LINDAS_PORT | No | HTTP port (only used when transport is http) | 3000 |
| LINDAS_TRANSPORT | No | Transport mode: stdio or http | stdio |
| LINDAS_SPARQL_ENDPOINT | No | SPARQL endpoint URL | https://ld.admin.ch/query |
| LINDAS_DEFAULT_LANGUAGE | No | Default language for labels (de, fr, it, en) | de |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {} |
| prompts | {} |
| resources | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_cubesB | List available data cubes on LINDAS with their titles and descriptions. Use this to discover what datasets are available. Call get_cube_structure next to understand a cube's dimensions. |
| get_cube_structureA | Get the structure of a specific data cube: its dimensions, measures, datatypes, and constraints. ALWAYS call this before query_observations to understand what dimensions and measures are available. The 'path' field in the result is the property URI you pass to query_observations, get_dimension_values, and as filter dimensions. |
| get_dimension_valuesA | Get the distinct values for a dimension of a cube, with human-readable labels. Use this after get_cube_structure to discover what values you can filter on (e.g., which cantons, which years, which categories). Pass the 'path' value from get_cube_structure as dimension_path. |
| query_observationsA | Query observations from a data cube with optional filtering and pagination. ALWAYS call get_cube_structure first to learn the cube's dimension and measure paths. Pass dimension paths in the 'dimensions' array and measure paths in the 'measures' array. Use get_dimension_values to find valid filter values. |
| count_observationsA | Count the number of observations in a cube, optionally filtered. Use this BEFORE query_observations to check if a query will return a manageable number of results. If count is large, use filters to narrow down or use a smaller limit. |
| get_cantonsB | List all 26 Swiss cantons with their LINDAS IRIs and names. Use the returned IRIs to filter observations by canton in query_observations. |
| resolve_geographyA | Resolve a place name to its LINDAS IRI. Works for cantons, municipalities, and districts. Use this when a user mentions a Swiss place name and you need its IRI to filter cube observations. |
| search_datasetsA | Full-text search across LINDAS cubes by title and description. Use this when looking for datasets about a specific topic (e.g., 'population', 'forest', 'unemployment'). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| data_exploration | Step-by-step guide for exploring LINDAS data |
| canton_comparison | Compare a topic across all Swiss cantons for a given year |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| LINDAS Cube Catalogue | Catalogue of available data cubes on LINDAS |
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/BFH-JTF/lindas-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server