BIM Portal MCP Server
A comprehensive MCP server implemented in TypeScript that provides access to the German BIM Portal REST API, enabling querying of organizations, building properties, LOINs, domain models, and AIA resources through natural language.
README
BIM MCP Server
A comprehensive Model Context Protocol (MCP) server implemented in TypeScript that provides access to the German BIM Portal REST API.
Features
- Organizations: Manage and query organizations
- Properties: Search and retrieve building properties and property groups
- LOINs: Access Level of Information Need definitions
- Domain Models: Work with domain-specific models
- Context Information: Retrieve construction context data
- AIA Templates & Projects: Access AIA (Auftraggeber-Informations-Anforderungen) resources
- Filters: Global filtering capabilities
- Export Capabilities: PDF, XML, OpenOffice, OKSTRA formats
Setup
Prerequisites
- Get your BIM Portal credentials by registering at https://via.bund.de/bim
- Install Node.js and npm
Adding to Cursor
- Open Cursor Settings (Cmd/Ctrl + ,)
- Search for "MCP" in settings
- Click "Edit in settings.json" next to "Mcp: Servers"
- Add the BIM Portal MCP server configuration:
{
"mcpServers": {
"bim-portal": {
"command": "npx",
"args": ["-y", "bim-portal-mcp"],
"env": {
"BIM_EMAIL": "your-bim-portal-email@example.com",
"BIM_PASSWORD": "your-bim-portal-password"
}
}
}
}
- Save the settings file
- The BIM Portal tools will now be available in your AI conversations
Adding to Claude Desktop
-
Locate your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Edit the configuration file and add the MCP server:
{
"mcpServers": {
"bim-portal": {
"command": "npx",
"args": ["-y", "bim-portal-mcp"],
"env": {
"BIM_EMAIL": "your-bim-portal-email@example.com",
"BIM_PASSWORD": "your-bim-portal-password"
}
}
}
}
- Save the file
- Restart Claude Desktop
- The BIM Portal tools will be available in your conversations
Available Tools
Organization Tools
- bim_get_organizations: Get all available organizations
- bim_get_my_organizations: Get user's organizations
Property Tools
- bim_search_properties: Search for properties with filters
- bim_get_property: Get specific property by GUID
- bim_search_property_groups: Search for property groups
- bim_get_property_group: Get specific property group by GUID
- bim_get_global_filters: Get all global property filters
LOIN Tools
- bim_search_loins: Search for LOINs (Level of Information Need)
- bim_get_loin: Get specific LOIN by GUID
- bim_get_loin_pdf: Export LOIN as PDF
- bim_get_loin_xml: Export LOIN as XML
Domain Model Tools
- bim_search_domain_models: Search for domain-specific models
- bim_get_domain_model: Get specific domain model by GUID
Context Information Tools
- bim_search_context_info: Search for context information
- bim_get_context_info: Get specific context info by GUID
AIA Template Tools
- bim_search_aia_templates: Search for AIA templates
- bim_get_aia_template: Get specific AIA template by GUID
AIA Project Tools
- bim_search_aia_projects: Search for AIA projects
- bim_get_aia_project: Get specific AIA project by GUID
Filter Tools
- bim_get_aia_filters: Get all global AIA filters
Development
Installation
- Install dependencies:
npm install
- Build the TypeScript code:
npm run build
Running the Server Locally
Start the MCP server:
npm start
Development Mode (with watch)
npm run dev
Project Structure
bim-mcp-server/
├── src/
│ ├── index.ts # Main server implementation
│ └── bim-api-client.ts # BIM Portal API client
├── dist/ # Compiled JavaScript (generated)
├── package.json # Dependencies and scripts
├── tsconfig.json # TypeScript configuration
└── README.md # This file
BIM Portal API
This server connects to the German Federal BIM Portal at https://via.bund.de/bim and provides access to:
- Infrastructure elements and properties
- Building Information Modeling data
- Level of Information Need (LOIN) specifications
- Domain-specific models
- AIA (Client Information Requirements) templates and projects
- Construction context information
MCP Protocol
This server implements the Model Context Protocol (MCP) and communicates via stdio. It can be used with any MCP-compatible client to provide comprehensive access to the BIM Portal API functionality.
Error Handling
All API errors are properly caught and returned as error responses with descriptive messages. The server maintains authentication state and handles token refresh automatically.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.