Archicad
FreeNot checkedMCP server for Archicad automation, enabling AI assistants to run Python scripts against running Archicad instances via the Tapir JSON API for complex workflows
About
MCP server for Archicad automation, enabling AI assistants to run Python scripts against running Archicad instances via the Tapir JSON API for complex workflows.
README
archicad-mcp is an MCP server for Archicad automation through Archicad's built-in JSON API, with additional commands from the optional Tapir add-on. It exposes four MCP tools for instance discovery, command documentation, property discovery, and Python execution.
Command documentation is available without a running Archicad instance. The package includes validated Archicad and Tapir schema snapshots and can update the Tapir snapshot in the user cache without modifying the installed package.
Requirements
- Python 3.11 or newer
- An MCP client that supports stdio servers
- uv for the
uvxcommands below - A running Archicad instance for live discovery and automation
- A Tapir release built for your Archicad major when using Tapir commands or
get_properties
The project does not maintain a separate Archicad version matrix. Live compatibility depends on Archicad's JSON API and, for Tapir features, the add-on release installed for that Archicad major.
Quick start
Check the installation and local environment:
uvx archicad-mcp --version
uvx archicad-mcp doctor --json
Add the server to an MCP client configuration:
{
"mcpServers": {
"archicad": {
"command": "uvx",
"args": ["archicad-mcp"]
}
}
}
archicad-mcp with no arguments starts the stdio server. To print a ready-to-copy configuration without editing any files, run:
uvx archicad-mcp setup
MCP tools
| Tool | Purpose | Runtime dependency |
|---|---|---|
list_instances |
Find running Archicad instances and report project, version, and Tapir availability. | Archicad |
get_docs |
Browse, search, or retrieve exact Archicad and Tapir command documentation. | None |
get_properties |
Find element properties and property identifiers for an instance. | Archicad and Tapir |
execute_script |
Run a Python workflow against a selected instance. | Archicad; Tapir only for Tapir calls |
A typical discovery flow starts without Archicad:
get_docs() # overview and categories
get_docs(search="create slab") # search by intent
get_docs(command="CreateSlabs") # exact Tapir command
get_docs(command="API.GetAllElements") # exact built-in command
get_docs(commands=["CreateSlabs", "API.GetAllElements"])
For live work, call list_instances, inspect command contracts with get_docs, obtain property identifiers with get_properties when needed, and then use execute_script for a multi-step workflow.
Compatibility and limitations
- Instance discovery scans local ports 19723 through 19743 inclusive.
- Without Tapir, a reachable instance is reported as
tapir_unavailable; built-in Archicad commands remain available. get_docsreads the packaged or cached registry, not documentation generated by a live Archicad process.- The active registry describes the current validated Tapir schema. An older installed add-on may not implement commands introduced later, and the server does not claim an exact historical schema for every older add-on release.
- Each Tapir command records the add-on version in which it was introduced or last changed.
Execution security
execute_script runs Python in a disposable child process under the same user account as the MCP server. The default timeout is 300 seconds, and a timeout or transport cancellation terminates the worker. The process boundary is not a sandbox. Scripts can access the user's files, imports, network, and processes, and can make destructive Archicad or Tapir changes. There is no approval or confirmation gate.
Schema updates
The packaged snapshots are sufficient for offline documentation discovery. By default, when a shared 24-hour interval permits, the server schedules at most one bounded, nonblocking startup check for a newer stable Tapir release. A validated update is written to the OS user cache and activated without modifying the installed package. The updater reads no GitHub token or other credential.
| Variable | Behavior |
|---|---|
ARCHICAD_MCP_AUTO_UPDATE=0 |
Disable automatic checks while continuing to use a valid cache. |
ARCHICAD_MCP_OFFLINE=1 |
Forbid update network access while continuing to use a valid cache. Manual updates also refuse. |
Manual controls are available through archicad-mcp schemas status, archicad-mcp schemas update, and archicad-mcp schemas reset. See Schema snapshots and updates for the trust, validation, cache, and maintainer contracts.
CLI reference
| Command | Purpose |
|---|---|
archicad-mcp |
Start the stdio MCP server. |
archicad-mcp serve |
Start the same server explicitly. |
archicad-mcp doctor --json |
Report package, schema, and local Archicad diagnostics. |
archicad-mcp setup |
Print MCP client configuration. |
archicad-mcp config --json |
Print effective runtime settings. |
archicad-mcp schemas status --json |
Report local packaged, cache, active, and check state. |
archicad-mcp schemas update --json |
Request an immediate update check, subject to offline mode. |
archicad-mcp schemas reset --json |
Remove cached schema and check state. |
archicad-mcp --version |
Print the installed version. |
Contributing
See CONTRIBUTING.md for development setup, checks, schema rules, and issue guidance.
Releases and migration
Release notes and artifacts are published on GitHub Releases. When migrating from 0.1.x, configure clients to launch the public uvx archicad-mcp console command rather than a package-internal server entry point; live schema generation, repository submodules, and a manual schema refresh are no longer required before command discovery.
License
Installing Archicad
This server has no published package — it is built from source. Open the repository and follow its README.
▸ github.com/Boti-Ormandi/archicad-mcpFAQ
Is Archicad MCP free?
Yes, Archicad MCP is free — one-click install via Unyly at no cost.
Does Archicad need an API key?
No, Archicad runs without API keys or environment variables.
Is Archicad hosted or self-hosted?
Self-hosted: the server runs locally on your machine via the install command above.
How do I install Archicad in Claude Desktop, Claude Code or Cursor?
Open Archicad on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.
Related MCPs
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
by modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
by xuzexin-hzMCP-Agent
A simple, composable framework to build agents using Model Context Protocol by [LastMile AI](https://www.lastmileai.dev)
by lastmile-aiSpring AI MCP Client
Provides auto-configuration for MCP client functionality in Spring Boot applications.
mcp.natoma.ai
A Hosted MCP Platform to discover, install, manage and deploy MCP servers by [Natoma Labs](https://www.natoma.ai)
MCPHub
Website to list high quality MCP servers and reviews by real users. Also provide online chatbot for popular LLM models with MCP server support.
MCP Servers Rating and User Reviews
Website to rate MCP servers, write authentic user reviews, and [search engine for agent & mcp](http://www.deepnlp.org/search/agent)
mkinf
An Open Source registry of hosted MCP Servers to accelerate AI agent workflows.
Compare Archicad with
Not sure what to pick?
Find your stack in 60 seconds
Author?
Embed badge for your README
Browse similar
All ai MCPs
