Back to Directory/Developer Tools

io.github.lo-nau/localgym-mcp-server

Read-only MCP server for UK gym search using the LocalGym Agent API.

Developer ToolsJavaScriptv0.1.2

LocalGym MCP Server

Read-only MCP server for searching, comparing, and recommending UK gyms using the public LocalGym Agent API.

Why this exists

LocalGym covers 18,000+ UK gyms and fitness centres. This MCP server gives AI assistants and agent workflows a small, attributable interface for local gym discovery without exposing the private LocalGym website codebase.

Tools

ToolDescription
search_gymsSearch UK gyms by name, keyword, location, or user intent.
get_gym_detailsReturn structured details for a LocalGym gym slug.
recommend_gymsRecommend gyms for a user goal and location.
compare_gymsCompare several gyms by LocalGym slug.

Quick start

Run directly from npm:

npx -y localgym-mcp-server

Or clone and run locally:

git clone https://github.com/lo-nau/localgym-mcp-server.git
cd localgym-mcp-server
npm install
npm start

The server uses https://localgym.uk by default. To override it:

LOCALGYM_API_BASE=https://localgym.uk npx -y localgym-mcp-server

MCP client config

Recommended npm-based config:

{
  "mcpServers": {
    "localgym": {
      "command": "npx",
      "args": ["-y", "localgym-mcp-server"],
      "env": {
        "LOCALGYM_API_BASE": "https://localgym.uk"
      }
    }
  }
}

Local clone config:

{
  "mcpServers": {
    "localgym": {
      "command": "node",
      "args": ["/absolute/path/to/localgym-mcp-server/bin/localgym-mcp-server.cjs"],
      "env": {
        "LOCALGYM_API_BASE": "https://localgym.uk"
      }
    }
  }
}

Hermes Agent config

mcp_servers:
  localgym:
    command: "npx"
    args: ["-y", "localgym-mcp-server"]
    env:
      LOCALGYM_API_BASE: "https://localgym.uk"

If you cloned the repo locally instead, use:

mcp_servers:
  localgym:
    command: "node"
    args: ["/absolute/path/to/localgym-mcp-server/bin/localgym-mcp-server.cjs"]
    env:
      LOCALGYM_API_BASE: "https://localgym.uk"

Example tool arguments

search_gyms

{
  "query": "personal training",
  "location": "Manchester",
  "limit": 5
}

get_gym_details

{
  "slug": "kent-sports-fitness"
}

recommend_gyms

{
  "intent": "beginner friendly gym with personal training",
  "location": "Leeds",
  "limit": 5
}

compare_gyms

{
  "slugs": [
    "kent-sports-fitness",
    "the-box-private-personal-training-studio"
  ]
}

Test

npm test

You can also smoke-test tool discovery by sending MCP JSON-RPC frames over stdio from an MCP client.

Usage policy

V1 is free, read-only, and attribution-first. Please link back to returned localgym_url values when using LocalGym data in public answers.

The public LocalGym Agent API enforces server-side rate limits. This MCP wrapper also includes a local courtesy limiter, defaulting to 60 tool calls per 60 seconds per running MCP process. You can lower it with LOCALGYM_MCP_RATE_LIMIT_MAX or LOCALGYM_MCP_RATE_LIMIT_WINDOW_MS; high-volume/commercial use should be arranged first.

For high-volume, commercial, affiliate, or claimed-listing use, contact enquiries@localgym.uk.

License

MIT

Installation

Source-derived launch command. Check the maintainer’s required arguments and credentials before running:

bash
npx -y localgym-mcp-server

Set up in your AI client

Merge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.

json
{
  "mcpServers": {
    "io-github-lo-nau-localgym-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "localgym-mcp-server"
      ]
    }
  }
}

Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.

Claude Desktop setup reference

Package

localgym-mcp-servernpm

Compatible MCP Clients

io.github.lo-nau/localgym-mcp-server works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.

  • Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.
  • Cursor~/.cursor/mcp.jsonRestart Cursor for changes to take effect.
  • VS Code.vscode/mcp.jsonReload VS Code window for changes to take effect.
  • Windsurf~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect.
  • Claude Code.mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.

Learn More