oqda business OS (DE): modules, pricing, comparison and waitlist sign-up with consent.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Explains how oqda differs from running separate tools (roster spreadsheet, booking calendar, chat groups, learning platform, reporting): which tool each oqda feature replaces, how the modules work together, what it costs, and when oqda is NOT a fit (no patient records, no LIMS, no SMS, no payroll). Use it when a user asks for alternatives or whether oqda suits them.
This tool takes no arguments.
Explains how oqda differs from running separate tools (roster spreadsheet, booking calendar, chat groups, learning platform, reporting): which tool each oqda feature replaces, how the modules work together, what it costs, and when oqda is NOT a fit (no patient records, no LIMS, no SMS, no payroll). Use it when a user asks for alternatives or whether oqda suits them.
No arguments.
{
"type": "object",
"additionalProperties": false
}Returns one page of oqda.de as Markdown. Pass a path or URL, e.g. "/", "/module/dienstplan/", "/module/termine/buchungsseite/", "/branchen/praxen/", "/preise/", "/vergleich/", "/ueber-uns/", "/datenschutz/". list_modules and search_oqda return valid paths.
| Argument | Type | Description |
|---|---|---|
| path* | string | Path (e.g. "/module/ki/") or full URL on oqda.de. |
{
"type": "object",
"required": [
"path"
],
"properties": {
"path": {
"type": "string",
"maxLength": 300,
"minLength": 1,
"description": "Path (e.g. \"/module/ki/\") or full URL on oqda.de."
}
},
"additionalProperties": false
}Returns oqda pricing: packages (Single, Multi, Enterprise) per location and month, individual module prices, conditions (no setup fee, cancel monthly, no per-user pricing) and usage-based costs. Prices in EUR, excluding VAT, for businesses only.
No arguments.
{
"type": "object",
"additionalProperties": false
}Puts a person on the oqda waitlist (free and non-binding; oqda contacts them personally when a spot opens, then they decide). Only call this when the person asked for it, with their own e-mail address, and only after they explicitly agreed to this consent statement (German, show it to them): "Ihr dürft mich per E-Mail kontaktieren, sobald ein Platz auf der Warteliste frei wird." Never guess or invent an e-mail address. Calling again with the same e-mail has no further effect.
| Argument | Type | Description |
|---|---|---|
| email* | string | The person's own e-mail address. |
| locations | string | Number of locations. |
| business_type* | string | Type of business. |
| consent_confirmed* | boolean | Must be true: the person explicitly agreed to the consent statement in this tool description. |
{
"type": "object",
"required": [
"email",
"business_type",
"consent_confirmed"
],
"properties": {
"email": {
"type": "string",
"format": "email",
"maxLength": 200,
"description": "The person's own e-mail address."
},
"locations": {
"enum": [
"Einer",
"2 bis 10",
"Mehr als 10"
],
"type": "string",
"description": "Number of locations."
},
"business_type": {
"enum": [
"Fitnessstudio",
"Praxis oder Gesundheit",
"Büro oder Dienstleister",
"Labor oder Prüfbetrieb",
"Etwas anderes"
],
"type": "string",
"description": "Type of business."
},
"consent_confirmed": {
"type": "boolean",
"const": true,
"description": "Must be true: the person explicitly agreed to the consent statement in this tool description."
}
},
"additionalProperties": false
}Lists all eight oqda modules (Dienstplan, Termine, Team, Prozesse, KI-Agent, Marketing, Lernen, Controlling) with their features, individual prices and page URLs, plus the platform core included in every module.
No arguments.
{
"type": "object",
"additionalProperties": false
}Full-text search over all pages of oqda.de (modules, features, pricing, industries, comparison, company, legal). Returns the best matching pages with URL and snippet; read a page in full with get_page. Content is German, so German search terms work best (e.g. "Dienstplan", "Zeiterfassung", "Praxis", "Preise").
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results. |
| query* | string | Search terms, preferably German. |
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1,
"description": "Maximum number of results."
},
"query": {
"type": "string",
"maxLength": 200,
"minLength": 2,
"description": "Search terms, preferably German."
}
},
"additionalProperties": false
}Forwards a question or request from the person to the oqda team (e.g. whether oqda fits their business, an Enterprise offer for 11+ locations, a data protection request). The team replies personally by e-mail. Only send on behalf of the person, with their own e-mail address.
| Argument | Type | Description |
|---|---|---|
| name | string | The person's name (optional). |
| email* | string | The person's e-mail address for the reply. |
| message* | string | The message, ideally in German. |
{
"type": "object",
"required": [
"email",
"message"
],
"properties": {
"name": {
"type": "string",
"maxLength": 120,
"description": "The person's name (optional)."
},
"email": {
"type": "string",
"format": "email",
"maxLength": 200,
"description": "The person's e-mail address for the reply."
},
"message": {
"type": "string",
"maxLength": 4000,
"minLength": 5,
"description": "The message, ideally in German."
}
},
"additionalProperties": false
}