Register MCP Server

Zefix commercial register and UID lookup

Local serverstdioPython

What is the Register MCP server?

Register MCP server is a locally run integration for AI assistants that speak the Model Context Protocol. Zefix commercial register and UID lookup.

What you get

register-mcp provides AI-native access to two Swiss federal data sources, joined on the UID, all without authentication:

  • 🏛️ 9 tools across two sources — company search & verification (Zefix) + the company-scoped gazette join (SHAB/cantonal)
  • 🔗 gazette_company_publications — the UID join: everything published about a company
  • 🛡️ Data-protection-safe by construction — the only gazette entry points are UID- or id-scoped; no person-name search entry exists (see Data Protection & Scope)
  • 🔍 zefix_verify_company — quick active/dissolved status check
  • 🌐 Bilingual output (Markdown / JSON) with per-source attribution + provenance
  • 🔓 No API key required — open data from zefix.admin.ch and amtsblattportal.ch

Setting it up

The server ships on PyPI as register-mcp, so your MCP client can launch it on demand — there is no separate build step. Add the server block to your client's configuration, restart it, and the tools register themselves.

What the assistant can call

Once Register is connected, these are the calls the assistant has available:

  • zefix_search_companies — Search companies by name, canton, legal form
  • zefix_get_company — Full company profile by internal EHRAID
  • zefix_get_company_by_uid — Company lookup by UID (CHE-xxx.xxx.xxx)
  • zefix_verify_company — Quick active/dissolved status check
  • zefix_list_legal_forms — All Swiss legal forms with IDs
  • zefix_list_municipalities — Swiss municipalities with BFS IDs
  • gazette_company_publicationsThe UID join. All gazette publications for a company UID, newest first, optional (validated) rubric/time filters
  • gazette_get_publication — Single publication incl. XML full text, defensively parsed (by publication id)
  • gazette_source_status — Reachability of both sources + cache ages (rubrics, legal forms)
  • Security — The Security tool exposed by this server

Configuration and credentials

You will need one environment variable: MCP_API_KEY. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.

  • Python 3.11+ - uv (recommended) or pip ---

Before you rely on it

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 10 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Register.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • MCP clients confirm each tool call by default. Leave that on until you have watched what the register mcp server does with a few real requests.

Choosing this one

Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Register's toolset — zefix_search_companies, zefix_get_company, zefix_get_company_by_uid and 7 more — is a fair guide to whether it matches your workflow. It is maintained by malkreide; worth a glance at recent repository activity before you build anything load-bearing on it.

We check each listing at SyncDev against the project's documentation before it goes live — if something here drifts out of date, it is a bug worth reporting.

Available tools

ToolWhat it does
zefix_search_companiesSearch companies by name, canton, legal form
zefix_get_companyFull company profile by internal EHRAID
zefix_get_company_by_uidCompany lookup by UID (CHE-xxx.xxx.xxx)
zefix_verify_companyQuick active/dissolved status check
zefix_list_legal_formsAll Swiss legal forms with IDs
zefix_list_municipalitiesSwiss municipalities with BFS IDs
gazette_company_publications**The UID join.** All gazette publications for a company **UID**, newest first, optional (validated) rubric/time filters
gazette_get_publicationSingle publication incl. XML full text, defensively parsed (by publication id)
gazette_source_statusReachability of both sources + cache ages (rubrics, legal forms)
SecurityThe Security tool exposed by this server.

How to install the Register MCP server

Or with `uvx`:

```json
{
  "mcpServers": {
    "register": {
      "command": "uvx",
      "args": ["register-mcp"]
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

  • Python 3.11+ - uv (recommended) or pip ---
VariableDescriptionRequired
MCP_API_KEYCredential the server authenticates with.Yes

Example prompts to try

  • Use Register to zefix search companies.
  • Use Register to zefix get company.
  • Use Register to zefix get company by uid.

Frequently asked questions

It connects Register to MCP-compatible AI assistants such as Claude and Cursor, exposing 10 tools (zefix_search_companies, zefix_get_company, zefix_get_company_by_uid, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Register directly.