Skip to main content
Python / TS Framework71 Compatible Sources

LangChain Integrations for Danish Systems

LangChain tool wrappers and structured tools for querying Danish enterprise registers, transport schedules, and government services.

Compatible Danish Sources (71)

Verified APIs, MCP servers, and data feeds ready for LangChain integration.

LangChain Integration Snippet
# Integration Notice: Aula
# Category: BROWSER | Access Type: simulated | Auth: mitid
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://www.aula.dk

class AulaDescriptor:
    name = "Aula"
    status = "requires_portal_or_custom_client"
    docs_url = "https://www.aula.dk"
    access_type = "simulated"
    auth_requirement = "mitid"
LangChain Integration Snippet
# Integration Notice: Bilbasen & Bilinfo API
# Category: API | Access Type: restricted | Auth: restricted
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://developer.bilinfo.net

class BilbasenBilinfoAPIDescriptor:
    name = "Bilbasen & Bilinfo API"
    status = "requires_portal_or_custom_client"
    docs_url = "https://developer.bilinfo.net"
    access_type = "restricted"
    auth_requirement = "restricted"
LangChain Integration Snippet
# Integration Notice: Bilka / Salling Group
# Category: BROWSER | Access Type: simulated | Auth: public
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://www.salling.dk

class BilkaSallingGroupDescriptor:
    name = "Bilka / Salling Group"
    status = "requires_portal_or_custom_client"
    docs_url = "https://www.salling.dk"
    access_type = "simulated"
    auth_requirement = "public"
LangChain Integration Snippet
# Integration Notice: Boliga.dk
# Category: API | Access Type: indirect | Auth: public
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://www.boliga.dk

class BoligadkDescriptor:
    name = "Boliga.dk"
    status = "requires_portal_or_custom_client"
    docs_url = "https://www.boliga.dk"
    access_type = "indirect"
    auth_requirement = "public"
LangChain Integration Snippet
# Integration Notice: Boligsiden
# Category: BROWSER | Access Type: simulated | Auth: public
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://www.boligsiden.dk

class BoligsidenDescriptor:
    name = "Boligsiden"
    status = "requires_portal_or_custom_client"
    docs_url = "https://www.boligsiden.dk"
    access_type = "simulated"
    auth_requirement = "public"
LangChain Integration Snippet
# Integration Notice: CVR Data Parser & Replicator
# Category: CLI | Access Type: direct | Auth: api_key
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://github.com/gronlund/cvrdata#readme

class CVRDataParserReplicatorDescriptor:
    name = "CVR Data Parser & Replicator"
    status = "requires_portal_or_custom_client"
    docs_url = "https://github.com/gronlund/cvrdata#readme"
    access_type = "direct"
    auth_requirement = "api_key"
LangChain Integration Snippet
from langchain_core.tools import tool
import httpx

@tool
async def search_cvr-api(query: str) -> str:
    """Central Business Register API giving machine access to all Danish companies, CVR numbers, ownership, and industry codes."""
    url = "https://cvrapi.dk/api"
    async with httpx.AsyncClient() as client:
        res = await client.get(url, params={"search": query})
        res.raise_for_status()
        return res.text
LangChain Integration Snippet
# Integration Notice: Corti API
# Category: API | Access Type: direct | Auth: restricted
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://docs.corti.ai

class CortiAPIDescriptor:
    name = "Corti API"
    status = "requires_portal_or_custom_client"
    docs_url = "https://docs.corti.ai"
    access_type = "direct"
    auth_requirement = "restricted"
LangChain Integration Snippet
# Integration Notice: DAWA MCP Server (ITK)
# Category: MCP | Access Type: direct | Auth: public
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://github.com/itk-dev/mcp-dawa#readme

class DAWAMCPServerITKDescriptor:
    name = "DAWA MCP Server (ITK)"
    status = "requires_portal_or_custom_client"
    docs_url = "https://github.com/itk-dev/mcp-dawa#readme"
    access_type = "direct"
    auth_requirement = "public"
LangChain Integration Snippet
# Integration Notice: DAWA Replication Client
# Category: CLI | Access Type: direct | Auth: public
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://dataforsyningen.dk/data/dawa

class DAWAReplicationClientDescriptor:
    name = "DAWA Replication Client"
    status = "requires_portal_or_custom_client"
    docs_url = "https://dataforsyningen.dk/data/dawa"
    access_type = "direct"
    auth_requirement = "public"
LangChain Integration Snippet
from langchain_core.tools import tool
import httpx

@tool
async def search_dawa(query: str) -> str:
    """REST API for Danish addresses, postcodes, cadastre, and administrative geodata."""
    url = "https://api.dataforsyningen.dk/adresser"
    async with httpx.AsyncClient() as client:
        res = await client.get(url, params={"q": query})
        res.raise_for_status()
        return res.text
LangChain Integration Snippet
# Integration Notice: DMI NWP Download CLI
# Category: CLI | Access Type: direct | Auth: api_key
# Direct REST query endpoint not cataloged. Requires custom integration or portal credentials.
# Documentation: https://opendatadocs.dmi.govcloud.dk/

class DMINWPDownloadCLIDescriptor:
    name = "DMI NWP Download CLI"
    status = "requires_portal_or_custom_client"
    docs_url = "https://opendatadocs.dmi.govcloud.dk/"
    access_type = "direct"
    auth_requirement = "api_key"
Scaffold Custom Danish Tools

Access Enablers for LangChain

Need to generate custom MCP servers, scrape portals, or run headless automations with LangChain?

All Builder Enablers
MCP & CLI Builders
Freemium

Instant MCP & CLI generator from OpenAPI, Swagger & APIs

PrintingPress converts OpenAPI and Swagger specifications into fully-typed Model Context Protocol (MCP) servers and CLI tools in seconds.

#mcp-generator#cli-generator#openapi
MCP & CLI Builders
Open Source

High-level Python & TypeScript framework for building MCP servers

FastMCP provides clean decorators and microframework patterns to write production-ready MCP tools in under 10 lines of code.

#mcp#python#sdk
Web Scraping & Clean MD
Freemium

Turn entire websites and portals into clean, LLM-ready Markdown

Firecrawl crawls, handles JavaScript rendering, bypasses anti-bot barriers, and outputs clean Markdown structured for AI agent ingestion.

#scraping#markdown#rag

Frequently Asked Questions (LangChain)

How do I add a Danish data tool to a LangChain Agent?

Import the provided @tool decorator function into your Python environment and pass it to initialize_agent() or LangGraph node definitions.

Can LangChain agents parse Danish XML/CSV data feeds?

Yes! AgentAccess provides specialized data loaders and parsing tools for high-volume Danish data feeds like CVR daily dumps or CVR.dev streams.