uk-radio-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| RADIOID_API_TOKEN | No | Optional RadioID API token sent as X-API-Token. Without it, requests are anonymous. | |
| REPEATERBOOK_TOKEN | No | RepeaterBook API token. Use an app token for server use or a per-user token. Required to enable the RepeaterBook source. | |
| UK_RADIO_CACHE_DIR | No | Cache location for static datasets downloaded by the server. | |
| UK_RADIO_USER_AGENT | No | User-Agent sent on static dataset downloads. | |
| RADIOREFERENCE_APP_KEY | No | RadioReference approved app key. Required to enable the RadioReference SOAP source, together with RADIOREFERENCE_USERNAME and RADIOREFERENCE_PASSWORD. | |
| UK_RADIO_REFRESH_HOURS | No | Overrides every static dataset refresh interval. | |
| RADIOREFERENCE_PASSWORD | No | Your RadioReference login password. Required to enable the RadioReference SOAP source. | |
| RADIOREFERENCE_USERNAME | No | Your RadioReference login username. Required to enable the RadioReference SOAP source. | |
| REPEATERBOOK_USER_AGENT | No | User-Agent that must match the approved RepeaterBook app literally, otherwise the API returns 403 ua_mismatch. Required to enable the RepeaterBook source. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_sourcesA | List every data source (free and paid), whether it is enabled, its cost, and the environment variables needed to enable it. |
| refresh_registerB | Re-download the Ofcom Wireless Telegraphy Register now. Normally this happens automatically on use when the cached copy is older than a week. |
| search_licencesA | Search Ofcom's register of licensed UK radio sites (free). Filters are combined. freq_mhz: exact channel, e.g. 456.6375. freq_min_mhz/freq_max_mhz: a range. emission: e.g. 12K5G7W (12.5 kHz digital). licensee: name substring. postcode or lat/lon plus radius_km: only sites within that distance, nearest first. Returns licensee, grid ref, lat/lon, licence type and frequencies per site. |
| search_licenseeA | Find every licence and frequency held by a licensee whose name contains |
| lookup_dmr_idB | Look up DMR radio IDs in RadioID.net's daily dump (free). Amateur-focused: UK business radio IDs are not in it. |
| radioid_apiC | Call the live RadioID REST API, e.g. path='repeaters/dmr' params={'country':'United Kingdom'}. Uses RADIOID_API_TOKEN if set. per_page is capped at 200 by the service. |
| repeaterbook_searchB | Search RepeaterBook's rest-of-world export (needs REPEATERBOOK_TOKEN and REPEATERBOOK_USER_AGENT). mode: analog, DMR, NXDN, P25 or tetra. % is a wildcard. |
| radioreference_callB | Call a RadioReference SOAP method, e.g. getCountyInfo with {'ctid': 1234}. Needs RADIOREFERENCE_APP_KEY, _USERNAME, _PASSWORD and the [radioreference] extra. |
| export_whistlerA | Write a Whistler EZ Scan text-import CSV (Alpha Tag, Frequency, Mode=AUTO) of licensed UK sites from the Ofcom register. Alpha tag is the licensee name cut to 16 characters. Give postcode or lat/lon plus radius_km as the search area. counties (e.g. ['Shropshire', 'Telford and Wrekin']) further restricts to those local authorities. freq_mhz limits to specific channels. Default output is ~/Downloads/uk_radio_whistler.csv. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 9 tools
Two pairs overlap: search_licences (which itself accepts a licensee substring) versus search_licensee, and lookup_dmr_id versus radioid_api (both pull RadioID.net data, one from the daily dump and one live). The descriptions do explain the distinctions, but an agent could easily pick the wrong one for 'find licences held by X'.
All names are snake_case and readable, but the convention is mixed: verb_noun (refresh_register, search_licences, export_whistler) alongside noun_verb or bare-noun names (repeaterbook_search, radioreference_call, radioid_api). The upstream-source tools read as a different family from the register tools.
Nine tools is well within a sensible range and each maps to a concrete capability: cache management, source discovery, two register queries, DMR lookup/API, two third-party source connectors, and a CSV export.
Core lifecycle is covered: discover sources, refresh the register, search by frequency/location/licensee, and export to a scanner. Gaps are minor but real — export supports only the Whistler EZ Scan format, and there is no per-licence detail/ID lookup beyond search results.