Connect MCP to your AI agent
Every MCP-capable app connects the same two things: an etg24 MCP endpoint and your API key. This page walks through the setup for the most common agents.
Which MCP endpoint should you use?
Two MCP endpoints are available to your agents. Both speak the same protocol and expose the same meta-tool workflow — what differs is who the agent acts for, and that decides which key it must use:
| Endpoint | Use when | Required key |
|---|---|---|
https://api.etg24.de/propertymanagement/v2/mcp — Property Management API | The agent acts on behalf of the company: company-level automations that are not tied to one employee | A tenant-bound (company) API key. User-bound keys are not for this surface. |
https://api.etg24.de/api/internal/v1/mcp — Internal API | The agent acts on behalf of a user: a staff member’s personal automations, running with that person’s permissions | A user-bound API key. Company-bound keys are rejected here. |
In one line: company agent → Property Management API, user agent → Internal API. The key binding also decides how every action shows up in the change log. See Identity & delegation for how the two bindings differ.
What you need
- The etg24 MCP endpoint:
https://api.etg24.de/propertymanagement/v2/mcpfor company agents,https://api.etg24.de/api/internal/v1/mcpfor user agents. - An API key from the etg24 app, bound to the matching side: a tenant-bound (company) key for the Property Management API, a user-bound key for the Internal API. For agents that only browse and search, use a read-only key; agents that change data need a write-enabled key. See Permission scopes.
The general pattern
Whatever the app, the configuration looks like this — an MCP server entry with the endpoint URL and an authorization header carrying your key:
{ "url": "https://api.etg24.de/propertymanagement/v2/mcp", "headers": { "Authorization": "Bearer <API_KEY>" }}The client examples below use the Property Management API endpoint. For an agent acting on behalf of a user, use https://api.etg24.de/api/internal/v1/mcp and your user-bound key instead — everything else stays the same.
Most apps hide this behind a form: server name, URL, API key. The menu names vary by app and version — look for MCP, Connections, or Integrations in the settings.
Claude
Claude Desktop — open the MCP servers section in Settings and add a server, or edit claude_desktop_config.json directly (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\):
{ "mcpServers": { "etg24": { "url": "https://api.etg24.de/propertymanagement/v2/mcp", "headers": { "Authorization": "Bearer <API_KEY>" } } }}Claude Code — register the server from the CLI:
claude mcp add --transport http etg24 https://api.etg24.de/propertymanagement/v2/mcp \ --header "Authorization: Bearer $ETG24_API_KEY"Cursor
Open Settings → MCP, add a new server, and select the HTTP transport:
{ "mcpServers": { "etg24": { "type": "http", "url": "https://api.etg24.de/propertymanagement/v2/mcp", "headers": { "Authorization": "Bearer <API_KEY>" } } }}Cursor saves this to ~/.cursor/mcp.json — edit that file directly if you prefer.
VS Code
Open the Command Palette (Ctrl+Shift+P / Cmd+Shift+P) and run MCP: Add Server, choose HTTP, enter the endpoint and the authorization header — or edit .vscode/mcp.json (project) / your user mcp.json:
{ "servers": { "etg24": { "type": "http", "url": "https://api.etg24.de/propertymanagement/v2/mcp", "headers": { "Authorization": "Bearer <API_KEY>" } } }}ChatGPT
In ChatGPT, open Settings → Apps (the location of the MCP section varies by app version) and connect a new MCP server. Enter the etg24 endpoint URL and your API key when the form asks for credentials. If your app version only offers OAuth connectors, an MCP gateway that adds the Authorization header works as a bridge.
Mistral
Mistral supports MCP connections for agents and assistants. Add the etg24 endpoint as an MCP server (URL plus the Authorization: Bearer <API_KEY> header) in the workspace or agent settings.
Perplexity
Open Settings → MCP servers and add a custom server: give it a name, enter the etg24 endpoint URL, and provide your API key as the bearer token. After saving, the etg24 tools are available to your prompts.
opencode
Add the server to opencode.json:
{ "$schema": "https://opencode.ai/config.json", "mcp": { "etg24": { "type": "remote", "url": "https://api.etg24.de/propertymanagement/v2/mcp", "headers": { "Authorization": "Bearer ${env:ETG24_API_KEY}" } } }}Clients without remote MCP support
If your client only launches local MCP processes, bridge it with mcp-remote:
{ "mcpServers": { "etg24": { "command": "npx", "args": [ "mcp-remote", "https://api.etg24.de/propertymanagement/v2/mcp", "--header", "Authorization: Bearer <API_KEY>" ] } }}Other agents
Any app that can connect a remote MCP server over HTTP with custom headers works the same way. Provide the endpoint URL and the authorization header, and you are connected.
Verify the connection
Ask the agent to list its tools — or look at the tool list in the app’s MCP section. The etg24 server advertises its meta-tools (meta.tools.search, meta.tool.describe, meta.tool.execute, meta.docs.search and more); domain tools are discovered at runtime through them. See the meta-tool workflow.
A good first prompt: “Use meta.tools.search to find tools for listing contacts, then list a few contacts.”
Example prompts
- “Find all units of the building ‘Schillerstraße 12’ and tell me which ones are vacant.”
- “Use meta.docs.search to look up how the tenant change workflow works, then summarize it.”
- “List the documents of unit X and check whether the latest statement is filed.”
- “Create a contact for Ada Lovelace and log a follow-up note.”
Before you let an agent change data, read the MCP security best practices.
Troubleshooting
- 401 Unauthorized — the key is missing, malformed or disabled. Check the header and key lifecycle.
- 403 on the Internal API MCP — your key is tenant-bound (company-bound). The Internal API MCP only accepts user-bound API keys; connect the Property Management API endpoint with a tenant-bound key instead.
- Tools visible but calls fail with 403 — your key is read-only and the tool is a command. Use a write-enabled key or stick to queries.
- Agent shows up as the wrong actor in the change log — check that the endpoint matches the key binding: tenant-bound (company) keys go to the Property Management API, user-bound keys to the Internal API.
- Agent does not find the tools — the server did not register; check the app’s MCP connection status and retry. Remember: only the meta-tools are listed by default; domain tools appear through
meta.tools.search. - Client does not support HTTP MCP — use the
mcp-remotebridge above. - Client shows a connection error for JSON config — some clients need the exact JSON shape for their version; compare against the examples on this page and the client’s own MCP docs.