Koskamo

On the Register MCP

A public, read-only MCP server that allows agents to perform register lookups for UK weight loss clinics and online pharmacies against official regulator registers (CQC, GPhC, HIS, HIW) and access public health calculators such as BMI and TDEE.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

On the Register MCP logo, by On the RegisterVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-07Operated by On the Register
MCP endpoint (Streamable HTTP)
https://ontheregister.co.uk/api/mcp
Vendor documentation

What its tools do

23 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

23 of 23 have a description · 0 of 23 declare behavior hints · 6 of 23 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to ontheregister.co.uk ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Check if a weight loss clinic is registered with the CQC
  • Verify an online pharmacy against the GPhC register
  • Calculate BMI using the public calculator tool
  • Calculate TDEE using the public calculator tool

Source and maintenance

Vendor evidenceRegistry 0.1.0

Protocol and capabilities

Server
on-the-register 0.1.0
MCP protocol negotiated in check
2025-03-26
Tools
23 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": true
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

On the Register is an independent UK directory that checks weight loss clinics and online pharmacies against the public regulator registers (CQC, GPhC, HIS and HIW). Each listing shows the registration number, the regulator and the date we checked. It does not sell medicines or recommend a medicine or a provider. Every result carries a grounding field: read it, and follow grounding.mustFollow when you relay the result. Being on a register is a fact about a provider, not a recommendation. Nothing here is medical advice, and no tool returns prices.

Tools

23 advertised

calc_reconstitute
Advertised by the server during the last successful anonymous check.

Work out the units to draw for a prescribed dose from a powder vial and bacteriostatic water. Inputs: vial mg, water mL, the dose (mg or mcg), and the syringe. Returns units, mL, the nearest syringe line and doses per vial. Arithmetic only — the user's own dose, no presets.

calc_reconstitute input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "vial_mg",
    "water_ml",
    "dose"
  ],
  "properties": {
    "dose": {
      "type": "number",
      "description": "The prescribed dose, in the unit given by dose_unit",
      "exclusiveMinimum": 0
    },
    "syringe": {
      "enum": [
        "u100-0.3",
        "u100-0.5",
        "u100-1.0",
        "u40-1.0"
      ],
      "type": "string",
      "default": "u100-0.5"
    },
    "vial_mg": {
      "type": "number",
      "description": "Powder in the vial, in mg",
      "exclusiveMinimum": 0
    },
    "water_ml": {
      "type": "number",
      "description": "Bacteriostatic water added, in mL",
      "exclusiveMinimum": 0
    },
    "dose_unit": {
      "enum": [
        "mg",
        "mcg"
      ],
      "type": "string",
      "default": "mcg"
    }
  },
  "additionalProperties": false
}
calc_convert
Advertised by the server during the last successful anonymous check.

Convert between a dose (mg or mcg), syringe units and mL at a known strength. Give the strength as conc_mg_ml, or as vial_mg + water_ml. Set direction to dose_to_units or units_to_dose. Returns the counterpart plus concentration and mcg per unit. Arithmetic only.

calc_convert input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "dose": {
      "$ref": "#/properties/conc_mg_ml",
      "description": "Required when direction is dose_to_units"
    },
    "units": {
      "$ref": "#/properties/conc_mg_ml",
      "description": "Required when direction is units_to_dose"
    },
    "syringe": {
      "enum": [
        "u100-0.3",
        "u100-0.5",
        "u100-1.0",
        "u40-1.0"
      ],
      "type": "string",
      "default": "u100-0.5"
    },
    "vial_mg": {
      "$ref": "#/properties/conc_mg_ml"
    },
    "water_ml": {
      "$ref": "#/properties/conc_mg_ml"
    },
    "direction": {
      "enum": [
        "dose_to_units",
        "units_to_dose"
      ],
      "type": "string",
      "default": "dose_to_units"
    },
    "dose_unit": {
      "enum": [
        "mg",
        "mcg"
      ],
      "type": "string",
      "default": "mcg"
    },
    "conc_mg_ml": {
      "type": "number",
      "description": "Known strength; or give vial_mg + water_ml instead",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false
}
storage_check
Advertised by the server during the last successful anonymous check.

Say whether a GLP-1 pen or a reconstituted peptide vial is still good, given the situation (unopened, in use in the fridge, or left out) and, if left out, how long and how warm. Returns a graded verdict with the SmPC in-use limit. No dosing.

storage_check input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "product",
    "situation"
  ],
  "properties": {
    "product": {
      "enum": [
        "mounjaro",
        "wegovy",
        "ozempic",
        "saxenda",
        "peptide"
      ],
      "type": "string"
    },
    "hours_out": {
      "type": "number",
      "minimum": 0,
      "description": "Hours out of the fridge, for 'left-out'"
    },
    "situation": {
      "enum": [
        "unopened",
        "in-use-fridge",
        "left-out"
      ],
      "type": "string"
    },
    "temp_band": {
      "enum": [
        "fridge",
        "room",
        "warm",
        "hot"
      ],
      "type": "string",
      "description": "How warm it got, for 'left-out'"
    }
  },
  "additionalProperties": false
}
supply_runout
Advertised by the server during the last successful anonymous check.

Work out when an HRT or testosterone gel, spray or sachet pack runs out and when to reorder. Inputs: product (oestrogel, sandrena, lenzetto, testogel_pump, testogel_sachet, tostran), doses per day, optional containers, pack-opened date and reorder lead days. Returns doses left, days, run-out and order-by dates. Counts are estimates for metered packs.

supply_runout input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "product",
    "per_day"
  ],
  "properties": {
    "per_day": {
      "type": "number",
      "description": "Pumps, sprays or sachets used per day (the user's prescription)",
      "exclusiveMinimum": 0
    },
    "product": {
      "enum": [
        "oestrogel",
        "sandrena",
        "lenzetto",
        "testogel_pump",
        "testogel_sachet",
        "tostran",
        "testavan"
      ],
      "type": "string"
    },
    "lead_days": {
      "type": "integer",
      "maximum": 60,
      "minimum": 0,
      "description": "Reorder lead time in days, default 7"
    },
    "opened_on": {
      "type": "string",
      "description": "Date the pack was first opened, YYYY-MM-DD; default today"
    },
    "containers": {
      "type": "integer",
      "maximum": 120,
      "minimum": 1,
      "description": "Units in the pack (canisters, or sachets); default the product's pack size"
    }
  },
  "additionalProperties": false
}
patch_calendar
Advertised by the server during the last successful anonymous check.

Lay out the change days for an HRT estradiol patch from the day the first patch goes on, and rotate the application site. Products: estradot, evorel, evorel_conti, estraderm_mx (twice weekly); femseven, femseven_conti, progynova_ts (weekly). Optional weeks to show (default 8). SmPC change interval, not dosing advice.

patch_calendar input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "product",
    "start_date"
  ],
  "properties": {
    "weeks": {
      "type": "integer",
      "maximum": 26,
      "minimum": 1,
      "description": "How many weeks to lay out, default 8"
    },
    "product": {
      "enum": [
        "estradot",
        "evorel",
        "evorel_conti",
        "estraderm_mx",
        "femseven",
        "femseven_conti",
        "progynova_ts"
      ],
      "type": "string"
    },
    "start_date": {
      "type": "string",
      "description": "The day the first patch goes on, YYYY-MM-DD"
    }
  },
  "additionalProperties": false
}
howlong_timeline
Advertised by the server during the last successful anonymous check.

Give the SmPC milestones for when a GLP-1/GIP injection starts working: when appetite drops, when the first full dose is, and how the effect builds. Returns dated-by-week milestones with their citation. Informational, no prediction for any one person.

howlong_timeline input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "drug"
  ],
  "properties": {
    "drug": {
      "enum": [
        "mounjaro",
        "wegovy",
        "ozempic",
        "saxenda"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
howlong_clearance
Advertised by the server during the last successful anonymous check.

Estimate when a GLP-1/GIP injection is essentially cleared after the last dose, from the SmPC half-life (about five half-lives). Give the drug and the last-dose date. Returns the clear date and whether the basis is the SmPC or an estimate. Informational.

howlong_clearance input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "drug",
    "last_dose"
  ],
  "properties": {
    "drug": {
      "enum": [
        "mounjaro",
        "wegovy",
        "ozempic",
        "saxenda"
      ],
      "type": "string"
    },
    "last_dose": {
      "type": "string",
      "description": "Date of the last dose, YYYY-MM-DD"
    }
  },
  "additionalProperties": false
}
pen_howto
Advertised by the server during the last successful anonymous check.

Give the step-by-step injection walkthrough for a GLP-1 pen (Mounjaro KwikPen, Wegovy, Ozempic or Saxenda), from the maker's UK instructions. Returns the ordered steps and the symptom list you can troubleshoot. Routes to the leaflet; not a substitute for it.

pen_howto input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "pen"
  ],
  "properties": {
    "pen": {
      "enum": [
        "mounjaro",
        "wegovy",
        "ozempic",
        "saxenda"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
pen_troubleshoot
Advertised by the server during the last successful anonymous check.

Answer a GLP-1 pen problem (won't dial, no clicks, stuck, not at zero, no drop at the needle, a bubble, a leak, cold, unsure) for a given pen, from the maker's UK leaflet. Returns what it means and what to do, with when to stop and call the pharmacist.

pen_troubleshoot input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "pen",
    "symptom"
  ],
  "properties": {
    "pen": {
      "enum": [
        "mounjaro",
        "wegovy",
        "ozempic",
        "saxenda"
      ],
      "type": "string"
    },
    "symptom": {
      "enum": [
        "wont-dial",
        "no-clicks",
        "stuck",
        "not-zero",
        "last-dose",
        "no-drop",
        "bubble",
        "leak",
        "unsure",
        "cold"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
sideeffects_list
Advertised by the server during the last successful anonymous check.

List the SmPC side effects of a GLP-1/GIP injection (Mounjaro, Wegovy, Ozempic, Saxenda) by frequency band, plus the serious warnings with what to do (999/111/prescriber) and the Yellow Card link. General leaflet information, not a prediction and not triage.

sideeffects_list input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "drug"
  ],
  "properties": {
    "drug": {
      "enum": [
        "mounjaro",
        "wegovy",
        "ozempic",
        "saxenda"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
compare_medicines
Advertised by the server during the last successful anonymous check.

Put two weight-loss/diabetes injections (Mounjaro, Wegovy, Ozempic, Saxenda) side by side on SmPC facts: doses, frequency, pen, licensing, NHS access, storage. Returns a row-by-row table with the rows that differ flagged. Facts only, never a 'which is right for you'.

compare_medicines input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "a",
    "b"
  ],
  "properties": {
    "a": {
      "enum": [
        "mounjaro",
        "wegovy",
        "ozempic",
        "saxenda"
      ],
      "type": "string"
    },
    "b": {
      "enum": [
        "mounjaro",
        "wegovy",
        "ozempic",
        "saxenda"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
protein_target
Advertised by the server during the last successful anonymous check.

Work out a daily protein target for someone losing weight on a GLP-1, from weight (and height, which sharpens it) and activity level. Returns grams per day with the band and which body-weight basis was used. General information, not personalised dietetic advice.

protein_target input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "weight_kg"
  ],
  "properties": {
    "activity": {
      "enum": [
        "light",
        "active",
        "strength"
      ],
      "type": "string"
    },
    "height_cm": {
      "type": "number",
      "description": "Height in cm (120-230); sharpens the target",
      "exclusiveMinimum": 0
    },
    "weight_kg": {
      "type": "number",
      "description": "Body weight in kg (30-350)",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false
}
bmi_check
Advertised by the server during the last successful anonymous check.

Body mass index from weight and height, with the NHS adult category and the healthy-weight range for that height. UK thresholds; note the NHS lowers them for some ethnic backgrounds. General information, not a diagnosis.

bmi_check input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "weight_kg",
    "height_cm"
  ],
  "properties": {
    "height_cm": {
      "type": "number",
      "description": "Height in cm (120-230)",
      "exclusiveMinimum": 0
    },
    "weight_kg": {
      "type": "number",
      "description": "Body weight in kg (30-350)",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false
}
weight_ideal
Advertised by the server during the last successful anonymous check.

Healthy-weight range for a given height, from the healthy BMI band (18.5-24.9), with the BMI-22 midpoint as a single figure. There is no one 'ideal weight'; this is the healthy range. General information.

weight_ideal input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "height_cm"
  ],
  "properties": {
    "height_cm": {
      "type": "number",
      "description": "Height in cm (120-230)",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false
}
waist_ratio
Advertised by the server during the last successful anonymous check.

Waist-to-height ratio from waist and height, against the NICE bands (keep your waist under half your height). Flags central-fat risk that BMI can miss. For adults with BMI under 35. General information, not a diagnosis.

waist_ratio input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "waist_cm",
    "height_cm"
  ],
  "properties": {
    "waist_cm": {
      "type": "number",
      "description": "Waist measurement in cm (40-200), at the belly button",
      "exclusiveMinimum": 0
    },
    "height_cm": {
      "type": "number",
      "description": "Height in cm (120-230)",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false
}
fluid_target
Advertised by the server during the last successful anonymous check.

Rough daily fluid estimate from body weight (about 30-35 ml/kg), framed against the NHS 6-to-8-glasses guidance. Needs rise in heat, with exercise, and with GLP-1 sickness. A general estimate, not a medical fluid target.

fluid_target input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "weight_kg"
  ],
  "properties": {
    "weight_kg": {
      "type": "number",
      "description": "Body weight in kg (30-350)",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false
}
energy_tdee
Advertised by the server during the last successful anonymous check.

Daily energy use (BMR via Mifflin-St Jeor, then TDEE for activity) and two safe calorie-deficit targets for weight loss, clamped to the NHS lower limits. Needs age and sex for the equation. General information, not a diet plan.

energy_tdee input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "weight_kg",
    "height_cm",
    "age",
    "sex"
  ],
  "properties": {
    "age": {
      "type": "integer",
      "description": "Age in years (18-100)"
    },
    "sex": {
      "enum": [
        "female",
        "male"
      ],
      "type": "string",
      "description": "Biological sex, for the metabolic equation"
    },
    "activity": {
      "enum": [
        "sedentary",
        "light",
        "moderate",
        "very",
        "extra"
      ],
      "type": "string"
    },
    "height_cm": {
      "type": "number",
      "description": "Height in cm (120-230)",
      "exclusiveMinimum": 0
    },
    "weight_kg": {
      "type": "number",
      "description": "Body weight in kg (30-350)",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false
}
providers_search
Advertised by the server during the last successful anonymous check.

Find UK providers that offer a treatment and are on the CQC/GPhC register. Filter by treatment (glp1-weight-loss, hormone-therapy, iv-therapy, vitamin-injections), kind (online/clinic/mobile), nation, town slug, a name search, or near a postcode. Sort by distance, CQC rating, Google rating or review count. Returns listings with registration wording, the Google rating and the provider's own consultation fee where published. Lists, never ranks by price or recommends.

providers_search input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "treatment"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Text to match in the provider name"
    },
    "kind": {
      "enum": [
        "online",
        "clinic",
        "mobile"
      ],
      "type": "string"
    },
    "near": {
      "type": "string",
      "description": "A UK postcode or outcode to search near; returns nearest first"
    },
    "sort": {
      "enum": [
        "distance",
        "cqc_rating",
        "google_rating",
        "reviews"
      ],
      "type": "string",
      "description": "Order: distance (needs `near`), cqc_rating, google_rating, or reviews (Google count). Default: distance with `near`, else cqc_rating."
    },
    "limit": {
      "type": "integer",
      "default": 20,
      "maximum": 50,
      "minimum": 1
    },
    "nation": {
      "enum": [
        "england",
        "scotland",
        "wales",
        "ni"
      ],
      "type": "string"
    },
    "radius_km": {
      "type": "number",
      "default": 25,
      "maximum": 100,
      "minimum": 1,
      "description": "Search radius for `near`, in km"
    },
    "town_slug": {
      "type": "string"
    },
    "treatment": {
      "enum": [
        "glp1-weight-loss",
        "hormone-therapy",
        "iv-therapy",
        "vitamin-injections"
      ],
      "type": "string"
    }
  },
  "additionalProperties": false
}
providers_get
Advertised by the server during the last successful anonymous check.

Get one registered provider by its slug: its registration wording and rating, the treatments it offers, its locations, and its own published consultation fee where known. Returns null if the slug is not a listable provider. Registration facts only, no recommendation.

providers_get input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "slug"
  ],
  "properties": {
    "slug": {
      "type": "string"
    }
  },
  "additionalProperties": false
}
providers_check
Advertised by the server during the last successful anonymous check.

Check a provider by name, website URL or postcode against our CQC/GPhC register data. Returns whether it is a registered, listable provider and its registration wording, with how it was resolved. If we don't hold it, returns the official register to search by hand. Never a guess.

providers_check input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "query"
  ],
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "description": "A provider name, website URL, or postcode"
    }
  },
  "additionalProperties": false
}
compounds_list
Advertised by the server during the last successful anonymous check.

List the UK peptide/compound profiles with their UK legal status (licensed, in trials, cosmetic, or research/unlicensed). Filter by status or category. Returns name, aka, class, status and the licensed alternative. A legal-status index, not a dosing tool.

compounds_list input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "status": {
      "enum": [
        "licensed",
        "trials",
        "cosmetic",
        "research"
      ],
      "type": "string"
    },
    "category": {
      "type": "string",
      "description": "Category code, e.g. WL, Longevity, Repair"
    }
  },
  "additionalProperties": false
}
compounds_get
Advertised by the server during the last successful anonymous check.

Get one compound's UK legal status: whether it is licensed, in trials, cosmetic or unlicensed, the evidence and risks, and the licensed alternative. Returns sources and dates. No dosing is included, by design.

compounds_get input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "required": [
    "slug"
  ],
  "properties": {
    "slug": {
      "type": "string"
    }
  },
  "additionalProperties": false
}
guides_list
Advertised by the server during the last successful anonymous check.

Browse On the Register's plain-English UK guides to weight-loss medicines and the providers who supply them: checking a provider, cost and NHS access, using a pen, and side effects and treatment. Filter by category. Returns each guide's title, summary and page URL to link as further reading.

guides_list input schema
{
  "type": "object",
  "$schema": "http://json-schema.org/draft-07/schema#",
  "properties": {
    "category": {
      "enum": [
        "checking",
        "cost",
        "pen",
        "treatment"
      ],
      "type": "string",
      "description": "checking (providers), cost (price and NHS access), pen (storage and use), or treatment (side effects, switching)"
    }
  },
  "additionalProperties": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
1751 ms
95th percentile latency
1751 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 1751 ms · metadata changed · 23 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http on-the-register-mcp https://ontheregister.co.uk/api/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add on-the-register-mcp --url https://ontheregister.co.uk/api/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable on-the-register-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "on-the-register-mcp": {
      "url": "https://ontheregister.co.uk/api/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "on-the-register-mcp": {
      "type": "streamableHttp",
      "url": "https://ontheregister.co.uk/api/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start on-the-register-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "on-the-register-mcp": {
      "type": "http",
      "url": "https://ontheregister.co.uk/api/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http on-the-register-mcp https://ontheregister.co.uk/api/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://ontheregister.co.uk/api/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "on-the-register-mcp": {
      "serverUrl": "https://ontheregister.co.uk/api/mcp"
    }
  }
}

Let your agent find its tools

Find servers like On the Register MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run On the Register MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing