Skip to main content
Glama
741,228 tools. Updated 2026-11-04 02:24

"Managing Proxmox Servers" matching MCP tools:

  • Who am I? Returns the signed-in account: email, @handle, plan + limits, counts of sites/domains/drives, and connected DNS providers. Call this first to orient before managing sites or domains.
    ConnectorNo auth
  • Screen a person by NAME for bankruptcy exposure ('konkursgjenganger'): leadership roles (chair / managing director) held in companies that later went bankrupt, tenure-weighted, from the dated role history. Use this for HISTORICAL leaders who are no longer in any role index and so cannot be reached via search_persons/get_person. The match is name-based (no national ID), so a hit is a REVIEW FLAG to verify (birth year / address), not a verdict. PII-sensitive — requires the search_full_enabled tier.
    ConnectorNo auth
  • Create a German GmbH/UG incorporation case and return a secure Beglaubigt link where the founder provides their remaining personal details (date of birth, nationality, home address) and pays. The agent NEVER handles payment and NEVER asks for date of birth, nationality, or a person's home address in chat — those are collected only on the returned page. Collect in chat: the company (legal_form 'gmbh'|'ug', full `name` INCLUDING the legal-form suffix e.g. 'Velocent UG (haftungsbeschränkt)', `purpose`, `capital`, registered `address` and `business_address`), the `notarization` (its `type` — 'online' or 'offline' — is REQUIRED and has no default; optional `express` boolean; optional `preferred_timeframe` of 7, 14 or 30), the ownership structure (each shareholder's `share_percentage` and whether they are a managing director), and — for the first (founder) shareholder only — their `first_name` and `email` so Beglaubigt can send the completion link (tell the founder you will share their email with Beglaubigt for this). Share capital must be a whole number of euros and meet the legal minimum: GmbH at least 25000, UG at least 1. Share percentages must total 100. At least one shareholder must be a managing director, or a separate director must be included. Musterprotokoll (the standard template) supports at most 3 shareholders and exactly one managing director. Leave `documents` unset: Beglaubigt derives the articles type from the structure you send — one director with 1–3 shareholders gets the Musterprotokoll, anything larger gets individual (custom) articles. A notarization preferred_timeframe, if provided, must be 7, 14, or 30. Governance terms apply only when the derived articles are individual; Beglaubigt ignores them for a Musterprotokoll. You may optionally set: shareholders_meeting_quorum, shareholders_resolution_majority, significant_transactions_majority (percentages 0–100), representation_type ('joint' | 'sole' | 'section181'), majority_type ('simple' | 'two_thirds' | 'unanimous'), and notice_period_months. The optional additional_services field just records which follow-up options the founder wants information about later. It is non-binding: including it orders nothing, enrols the founder in nothing, and adds no charge — the link covers the one-time incorporation fee only. Recognised values: 'authority-registrations', 'business-liability-insurance', 'trademark-registration', 'bookkeeping', 'tax-advisor-support', 'business-address'. `package` (set at `incorporation.package`) is REQUIRED by this tool and sets the price shown on the completion page. The tiers are 'simple' | 'standard' | 'priority'. Ask the founder which one they want and send their answer — never choose for them. There is no package step on the completion page, so if you do not ask, the founder is never asked at all. Read the `packages://incorporation` resource for each tier's scope and structural limits, and tell the founder that exact prices depend on the partner tenant and are shown on the completion page before they pay — do not quote a figure yourself. Omitting the package is refused before anything is created, because omission silently bills the middle tier. Calls are NOT idempotent: every successful call creates a new incorporation case. When collecting these details, gather them conversationally across turns — one field at a time for each person — instead of asking for everything in a single message; call this tool only once all details are confirmed.
    ConnectorNo auth
  • Beispiel: „Welche Firmen führt eine Person namens Maria Huber?“ Find every company a person runs or represents - across BOTH registers in one call (cross-border person search). Read-only. Parameters: - name (required): person name substring, case-insensitive, e.g. "Mustermann". - country (optional, default "all"): "AT" | "DE" | "all". - page_size (optional, default 25): results per country. - status (optional, default "all"): "active" | "inactive" | "all". Returns the merged search_companies envelope ({countries, results, per_country, notices}) plus ``person_query``; every result card carries ``country``, ``company_id`` and the matched manager. AT matches the primary managing director, DE matches all managing directors AND registered signatories. IMPORTANT: matching is by name and the registers publish birth YEAR only - a shared name across companies or countries does not prove the same person (the notice says so; use birth years and context to corroborate). For general company search use search_companies with other filters; manager_name can be combined there too.
    ConnectorOAuth
  • Beispiel: „Welche Firmen führt eine Person namens Maria Huber?“ Find every company a person runs or represents - across BOTH registers in one call (cross-border person search). Read-only. Parameters: - name (required): person name substring, case-insensitive, e.g. "Mustermann". - country (optional, default "all"): "AT" | "DE" | "all". - page_size (optional, default 25): results per country. - status (optional, default "all"): "active" | "inactive" | "all". Returns the merged search_companies envelope ({countries, results, per_country, notices}) plus ``person_query``; every result card carries ``country``, ``company_id`` and the matched manager. AT matches the primary managing director, DE matches all managing directors AND registered signatories. IMPORTANT: matching is by name and the registers publish birth YEAR only - a shared name across companies or countries does not prove the same person (the notice says so; use birth years and context to corroborate). For general company search use search_companies with other filters; manager_name can be combined there too.
    ConnectorOAuth
  • Get a Stripe billing portal URL for managing payment methods and invoices. Returns a URL (not a redirect) that the human can open in a browser. Requires: API key with read scope. Args: flow: Optional. Set to "payment_method_update" to go directly to the payment method update page. Returns: {"url": "https://billing.stripe.com/p/session/..."}
    ConnectorNo auth

Matching MCP Servers

Matching MCP Connectors

  • SuperCatch connects your AI assistant to a trading-card and collectibles marketplace. Discover cards, inspect listing prices and availability, find seller storefronts, and review your own account or store data through focused MCP tools. ## For collectors Search listings by player, set, year, or keyword. Look up a product's current price, condition, availability, and active-listing count, then open the canonical SuperCatch page. Connect your account to read your purchases, order statuses, and watchlist, including saved price-alert targets. ## For sellers Review your store's listings, prices, quantities, inventory totals, and recent orders. Seller tools use the approved store owned by the connected account. ## Review pricing changes Preview one-time price changes for RAW, graded, or all cards. Choose At Market, Above Market, or Move Fast, and review increases, decreases, or both. Proposals use condition- or grade-specific market guidance and applicable pricing limits. Review exact prices and skipped listings in SuperCatch, then explicitly confirm Apply. Each batch covers up to 50 cards; reviews expire after 10 minutes and changed proposals require fresh approval. ## Plan ongoing repricing and marketplace publishing Prepare separate proposals for recurring repricing or publishing through your connected marketplace integrations. Review the affected cards, settings, connection, and safeguards inside SuperCatch before confirming. Graded automatic repricing requires explicit enrollment and suitable grade-specific comps. These preview tools do not activate automation, publish listings, or change prices directly. ## Try asking - Find Michael Jordan cards on SuperCatch. - Show my recent purchases and order statuses. - Which cards are on my watchlist? - Summarize my store inventory and recent orders. - Preview Above Market prices for my graded cards. - Prepare an automatic-repricing proposal for my RAW cards. - Find public documentation about managing listings. ## Connect and control access Add https://supercatch.com/api/mcp to a compatible MCP client using Streamable HTTP. Public marketplace, product, storefront, and public-documentation reads need no SuperCatch account. Private tools require sign-in and OAuth consent. Account documentation requires docs:read; staff guides also check your current role. Review or revoke access in Account Settings > Connected Apps. Connecting an assistant does not authorize automatic price changes or publishing. ## Help and support - Setup: https://supercatch.com/ai - Help: https://supercatch.com/help - Email: support@supercatch.com Prices and availability can change; review the linked SuperCatch page before buying.

  • Carbs for Indian meals, for people managing diabetes. Your assistant names the dishes and portions; Glucoray looks each one up in published Indian food tables and returns carbs, fibre and net carbs with a green/amber/red rating against your daily target. Meals are saved only after you confirm. OAuth 2.1 sign-in with an email code.

  • Finds events by text across the calendars shared with this access — case-insensitive substring match on title, location and description. The search only sees what this access may see: it filters the same visibility-rendered data `get_availability` returns. Calendars limited to free/busy expose no text and therefore can never match — when such calendars are part of this access, a warning says so. "No match" is thus NOT proof that no such event exists. A match in a calendar the user allowed managing carries `event_id`, `calendar_id`, `is_organizer` and `is_recurring` — everything `update_event`, `delete_event` and `respond_to_event` need — and the user's own `reminders` (minutes before the start; `source: "calendar_default"` = the calendar's default applies). Act on those directly instead of calling `get_availability` again for the same appointment. The range works like `get_availability` (single span of at most 92 days, lookback bounded to one year). Without `from`/`to` the search covers the last 7 days plus the next 85. Cancelled events are not searchable. Matches include events that do not block time (`blocks_time: false`) — notably every all-day event from Apple/iCloud. They are ordinary appointments and belong in the answer; do not filter them out when the user asked what is in their calendar. Check `status` first: `credits_exhausted` means this call was NOT performed. Only `warnings` and credit information are returned in that case; no result data or write confirmation. Tell the user how to restore credits; do not retry automatically.
    ConnectorAPI key
  • Updates an event. `title`, `start` and `end` describe the complete new state — including whether it is all-day: an event created all-day becomes a timed event if this call passes timestamps, and vice versa. Two kinds of event are addressable: 1. Events THIS access created (via `event_id` from create_event) — always. 2. Any other event in a calendar the user allowed managing, visible in `list_calendars` as `manageable: true`. Their ids come from `get_availability`. Four things are refused, and each says what to do instead — pass that on rather than retrying: • the calendar is not released for managing (the user can allow it per calendar) • it is shared at less than full detail (a setting, not a temporary error) • the event is a synchronised COPY — change the original in the named source calendar, the change reaches this one by itself • someone else organises it — call `respond_to_event` with `response: "declined"` and the same `event_id` instead When the event has other participants, they are notified of the change by their calendar provider — mention that before moving it. The `event_id` of one date of a repeating appointment changes only that date. **Reminders** (`reminders`): Pop-up reminders as minutes before the start, MOST IMPORTANT FIRST — e.g. `[{"minutes_before": 1440}, {"minutes_before": 60}]` is one day and one hour before. At most 5, each 0–40320 (four weeks). For all-day events the minutes count back from 00:00 of the first day: 900 = 9:00 the day before, 0 = midnight. Outlook/Microsoft 365 keeps only ONE reminder per event — the first of the list — so put the one the user cares about first. The result reports what the calendar actually kept (`reminders`) and what it did not (`reminders_not_kept`, with a warning); pass that on. Reminders are personal: at Google, Outlook and iCloud they apply only to the person whose calendar is connected, also in shared calendars and on invitations. Exception: Nextcloud-based calendars (e.g. Disroot), where a reminder in a shared calendar applies to everyone who can edit it. A list REPLACES all of the event's reminders, `[]` removes them, and leaving `reminders` out keeps them as they are. **Changing only the reminders**: pass `event_id`, `calendar_id` and `reminders`, and leave `title`, `start` and `end` out. That also works on an invitation someone else organises — the reminders are the user's own and the organiser is not notified — where any other change is refused. Otherwise `title`, `start` and `end` are all required. Check `status` first: `credits_exhausted` means this call was NOT performed. Only `warnings` and credit information are returned in that case; no result data or write confirmation. Tell the user how to restore credits; do not retry automatically.
    Connector
    Destructive
    API key
  • Accepts, declines or tentatively accepts an invitation someone else sent the user. The organiser is notified — that is the point: removing an invitation from the calendar without answering leaves them expecting the user. The `event_id` comes from `get_availability`, for a calendar the user allowed managing (`manageable: true` in `list_calendars`). Everything needed is in the `get_availability` or `search_events` result — pass `event_id` AND `calendar_id` straight back, and read `is_recurring` and `is_organizer` from the same entry instead of asking the user about them. **When `is_recurring` is true, set `scope`**: "occurrence" answers only that date, "series" answers all of them. If the user named a date ("on Tuesday"), that IS "occurrence" — do not ask. Ask only when they named none, because declining one date and declining a standing commitment are different messages to the organiser. Refusals name the way forward; pass them on rather than retrying. Check `status` first: `credits_exhausted` means this call was NOT performed. Only `warnings` and credit information are returned in that case; no result data or write confirmation. Tell the user how to restore credits; do not retry automatically.
    Connector
    Destructive
    API key
  • Repair one Kubernetes node of an Ankra-provisioned cluster (Hetzner, OVH, UpCloud, DigitalOcean, or Scaleway) at the OS level over SSH-via-bastion: restarts the node's Kubernetes service unit (k3s / k3s-agent / kubelet) wrapped in Ankra's node-recovery engine, which classifies the failure and applies the matched curated fix (clear a failed unit, extend a start timeout, kill stale listeners, unblock the apiserver firewall, re-bootstrap the kubelet), verifies, and retries once. This is a privileged, not-cleanly-reversible action on a production node and briefly disrupts its workloads, so it requires confirmation. It does NOT run arbitrary commands - only the curated recovery plan. Always call ssh_diagnose_node first to confirm the node is broken at the OS level (not merely unreachable via bastion, which a node reboot - restart_node - addresses instead). Identify the node with node_id (preferred) or node_name. Not available for imported or managed-Kubernetes clusters, nor (yet) Proxmox/HPE Morpheus.
    Connector
    Destructive
    OAuth
  • Run one allowlisted, read-only kubectl command INSIDE an Ankra-provisioned cluster (Hetzner, OVH, UpCloud, DigitalOcean or Scaleway) by executing it on a control-plane node over SSH-via-bastion, using that node's own admin kubeconfig. REACH FOR THIS ONLY WHEN THE CLUSTER'S AGENT IS NOT ANSWERING. While the agent is checking in, a get, describe, logs or events call here is REFUSED and names the tool to use instead: get_pods or cluster_query, describe_resource, get_pod_logs, get_events. Those answer the same question in one call, while this one dials the bastion, runs kubectl as cluster-admin and holds a scheduler job for up to 90 seconds. When the agent stops checking in they stop being an option - get_pod_logs and query_logs refuse outright, and the resource reads fall back to a cached inventory from before the outage - and this becomes the only live view left, because it does not use the agent at all; every result is stamped source=break_glass_ssh with executed_at. That is the state to use it in: to find out what is actually wrong with the agent itself - is its Deployment rolled out, is its pod Pending or CrashLoopBackOff or bound to a dead node, what do its logs and events say. If the agent IS checking in and you still need this, it is because an agent-path read already failed this turn (CLUSTER_OFFLINE, NO_AGENT or AGENT_TIMEOUT) or the tool it named refuses what you asked it for - get_pod_logs serves previous=true only on agent 2.1.1058 or newer, and refuses below it: set agent_path_unavailable=true, which is honoured and recorded. Verbs: get, describe, logs, events, top, version, api_resources, rollout_status. This is an allowlist, not a shell: there is no exec, port-forward, apply, patch, edit, create, scale, drain, cp, --raw, jsonpath or go-template, and no way to pass raw flags. Structured output (yaml/json) of Secrets is refused, though get and describe of them still report names, types and key names. Output is capped and credential-shaped strings are redacted. The command runs on a control-plane node, chosen automatically unless you pass node_id/node_name. Not available for imported or managed-Kubernetes clusters (they have no bastion), nor (yet) Proxmox/HPE Morpheus. Read-only: use ssh_kubectl_recover to change anything.
    ConnectorOAuth
  • Inspect the etcd cluster membership of an Ankra-provisioned cluster (Hetzner, OVH, UpCloud, DigitalOcean, or Scaleway) by running a read-only inspection on one control-plane node over SSH-via-bastion: the member list (hex and decimal ids, names, peer/client URLs, learner flag), each member's health, any active etcd alarms, and a quorum summary (voting members, healthy voters, quorum size, has_quorum plus the quorum_evidence it rests on, and failure_tolerance - healthy voters minus quorum size, floored at 0). failure_tolerance counts only voters observed serving, so it is a conservative lower bound: a voter whose health is unknown does not count towards it (health_unknown_voting_members says how many), and 0 can mean either no margin left or quorum already lost. Member health is three-valued: 'health' is 'serving', 'not_serving', or 'unknown' when no signal was readable at all, in which case 'healthy' is null rather than false - report unknown as unknown, never as down - and 'health_source' names the signal that decided it: 'client_endpoint' (the member's own client endpoint), 'local_health' (this node's own /health, for the member of the node the inspection runs on), 'raft_peer_link' (the local etcd's raft peer link to that member), 'member_list' (the member has no client endpoint because it never started), or 'unavailable' (no signal was readable at all). Use it BEFORE touching a degraded control-plane node, to know the quorum margin; and before remove_etcd_member, to get the member id. Identify the node to run on with node_id (preferred, from list_cluster_nodes) or node_name - it must be a control-plane node, and when one control-plane node is down, pick a HEALTHY peer (the inspection talks to the local etcd of the node it runs on). Runs nothing that changes the cluster. Not available for imported or managed-Kubernetes clusters, nor (yet) Proxmox/HPE Morpheus.
    ConnectorOAuth
  • Remove one member from the etcd cluster of an Ankra-provisioned cluster (Hetzner, OVH, UpCloud, DigitalOcean, or Scaleway) - the cleanup step when a dead control-plane node is being replaced: its stale etcd member must be removed before a replacement joins, or quorum math breaks. Executes on a HEALTHY control-plane peer (node_id/node_name - never the node whose member is being removed) over SSH-via-bastion; a node that is not control-plane is refused before any removal is attempted. The scheduler re-reads live membership immediately before acting and REFUSES to remove: a member still observed serving (by any health source, not only its own endpoint), a member whose health could not be read at all (unknown is not dead), the member of the node the command runs on, an id that does not uniquely match, or any non-learner voter whose removal would leave fewer healthy voters than the post-removal quorum - a refusal comes back as a structured result explaining why, with the live member list as evidence. This is an irreversible control-plane change: a removed member cannot rejoin with its old identity. Call get_etcd_members first and pass the member_id it listed (hex or decimal). Not available for imported or managed-Kubernetes clusters, nor (yet) Proxmox/HPE Morpheus.
    Connector
    Destructive
    OAuth
  • Scale the workers of an Ankra-provisioned self-managed cluster (Hetzner, OVH, UpCloud, DigitalOcean, Scaleway, Proxmox VE, or HPE Morpheus). With node_group_name, scales that node group to worker_count (0-100; the target is clamped into the group's autoscaling bounds when autoscaling is enabled); without it, performs the legacy whole-cluster scale to worker_count (1-10; refused while any node group has autoscaling enabled - scale the group directly instead). The cluster must be online and free of in-progress operations. New workers provision in the background. On scale-down the highest-index workers drain one at a time through the eviction API, honouring PodDisruptionBudgets, and are then terminated; a worker whose drain a PodDisruptionBudget refuses is kept in service and the scale-down is withdrawn for it, so the group can settle above worker_count. Call list_node_groups first to see the current counts, and again afterwards to confirm them.
    ConnectorOAuth
  • Change the control plane of an Ankra-provisioned self-managed cluster. Provide exactly ONE of: count (1 or 3; additionally 5 on Proxmox VE - etcd quorum needs an odd number) or instance_type (resizes every control plane node). GROWING the count (1 -> 3, 3 -> 5) happens LIVE on a running cluster: the new control planes provision and join etcd without downtime, and the answer carries the operation to follow. REDUCING the count is applied offline: stop the cluster (the stop preserves its state and the start restores it), apply the change, then start_cluster. instance_type changes roll one controller at a time on a running cluster with 3 or more controllers. On a RUNNING cluster with a SINGLE controller (Hetzner), changing instance_type resizes that one server in place and TAKES THE KUBERNETES API DOWN for a few minutes (typically 3 to 8) while it reboots: workloads already running on workers keep running, but kubectl, deployments, controllers and the Ankra agent pause until it is back. That call REQUIRES accept_api_downtime=true and is refused without it; only set it when the user has explicitly accepted the API downtime, and tell them about it first. The alternatives are growing to 3 controllers first (no downtime) or applying the change offline on a stopped cluster. Call list_node_groups first - its control_plane section reports the current count/instance type, whether a change is possible right now, and in which mode.
    Connector
    Destructive
    OAuth
  • Raise a cloud-provider limit for a credential, or produce the exact request a person has to submit when the provider has no API for it. Call get_provider_quotas first: it names the dimensions and says whether the provider is automatable. Azure is the only provider Ankra can submit to (through the Microsoft.Quota API); for Hetzner, OVH, UpCloud, DigitalOcean, Scaleway, Proxmox VE and HPE Morpheus this call still SUCCEEDS and returns status manual_action_required with a manual_action object holding the console URL, the navigation path and a ready-to-paste request_text pre-filled with the live numbers - relay that to the user rather than retrying. One call may at most double a limit (or add 16 to a small one); ask for more by repeating the call. The limit can only go up: this tool will not lower one.
    Connector
    Destructive
    OAuth
  • Check whether the given clusters could form one mesh, with the failing checks spelled out per cluster. Takes CLUSTER ids, not a mesh id. Read 'eligible' before 'ready': ready means the cluster can join right now, eligible means it can join now OR after make_cluster_mesh_ready prepares it in place, and only an ineligible cluster has to be rebuilt. Each check also reports 'remediable' individually - a failing identity or transport check on an upcloud or proxmox kubeadm Cilium cluster is remediable, so reach for make_cluster_mesh_ready; the cloud, the distribution and the container network are not, and no operation on a running cluster changes them. Always run this before create_cluster_mesh so you can tell the user which clusters actually qualify. Read-only.
    ConnectorOAuth
  • Get a secure Stripe link for the user to upgrade or manage their ScriptGrain plan — everything completes in their browser on Stripe's hosted pages; this tool itself never modifies the subscription or charges anything. Two modes: pass plan (and optionally billing_cycle) to mint a CHECKOUT link starting that subscription — the right move when a free account hits a credit wall (plans: writer £12/mo, operator £29/mo, studio £99/mo, agency £299/mo; annual saves ~20%). Omit plan to get the billing-PORTAL link for managing an existing subscription. Already-subscribed accounts asking for a new checkout are routed to the portal automatically. Share the returned link with the user promptly — links expire after a few minutes.
    ConnectorAPI key
  • Make a meal plan: each dish starts at the right moment so everything is ready at the same time. Returns a link (open it on the phone in the kitchen, where the alarms ring), a QR code for that link, and the schedule. YOU do the cooking knowledge: break a recipe into dishes, each with its total cooking minutes, and put the timed moments inside a dish as steps ("simmer 20, rest 5" is a dish of 25 minutes with a step "Rest" at 20). If the person did not say when they want to eat, ASK before calling; use `readyInMinutes` for "we eat in 90 minutes", `readyAt` (an ISO date-time with a UTC offset, or local time plus `timeZone`) for "at 7", or `startNow` to start cooking now (a single timer is a one-dish plan with `startNow`). Keep times realistic and use only what the person gave you; at most 12 dishes and 12 hours. Dish names are plain text, no links. The reply link works for anyone who has it and the plan is deleted about a day after the meal. Tell the person the alarms ring on the phone page, not in this chat. The reply also holds a secret CONTROL KEY (starts with ktpk_): remember it for the rest of the chat, do not show it or put it in any link, and pass it with the plan's code to the control tools to keep managing this plan. Once it works you may offer the person to manage their whole kitchen from now on (⋯ → Link an agent in the app gives the connector address and a 6-digit code).
    ConnectorNo auth
  • Change one seller-owned channel's saved listing scope. Read spellbook_inventory_management_get first. Switching legacy all mode to selected mode clears management for all current listings. On an eligible backfilled account, restore_legacy_all explicitly manages every current and future listing on that connected seller account; saved automation settings remain unchanged. In selected mode, use a named candidateId from current SpellBook Finance rows to manage or stop managing a complete listing. Stopping management leaves its live listing and order history intact. These actions save permission for existing automation and do not enable automation or publish a listing.
    Connector
    Destructive
    No auth
  • Company insolvency proceedings (Unternehmensinsolvenzen, Insolvenzverfahren) at the company address, from the Insolvenzbekanntmachungen der Länder (Justizportal des Bundes und der Länder), collected daily. Only companies with an entry in the Handels-, Genossenschafts-, Partnerschafts- or Vereinsregister; consumer insolvencies and sole traders (e.K.) are left out. One row per proceeding (court + file number) with all its notices: Sicherungsmaßnahmen, Eröffnung, Abweisung mangels Masse, Entscheidungen, Verteilungsverzeichnis and others. Answers "gibt es insolvente Firmen im Umkreis", "welche Firmen im Kreis Peine haben seit September Insolvenz angemeldet", "ist die Projektgesellschaft XY insolvent". Search around one or up to 50 locations (lat/lon or points, radius_km), or by plz, ort, landkreis, company name or register number, narrowed by gegenstand and date (seit, bis). Without seit and bis only the notices of the last 12 months count — for the search, the notice list and verfahrensstand alike — and the result says so in zeitraum; state that window in the answer. Each proceeding returns the company name, registered seat and address, register entry, insolvency court, file number, the notices with date and subject, and the geocoded location with its precision. The address is the registered seat of the company — it is not evidence that the company owns land or a building there; check the parcel before treating it as a site. Every proceeding carries grundstueck_pruefung as a starting point: anschrift_gebaeudegenau (geocoded to the house number), name_deutet_auf_grundbesitz (the name points to property, e.g. a Projekt-, Objekt- or Grundstücksgesellschaft, a Solarpark or a Hotel) verfahrensstand (from the application phase to distribution) and osm_firmen_an_anschrift — the other companies OpenStreetMap lists at the same address. For the relevant ones, look at the parcel at lat/lon with assetfy_get_parcel_overview and judge whether the company probably owns it: a single commercial or industrial building on a parcel of its own speaks for it; an office or residential building with many tenants, a tax adviser or law firm address, a c/o address or several other companies at the address (osm_firmen_an_anschrift.andere_firmen) speak against it. OpenStreetMap is incomplete: no companies listed there is no evidence for a single user. Names of managing directors or administrators are not provided. The official notice under the court and file number is authoritative.
    ConnectorOAuth