ELS MCP server
Enables LLM agents to query the Explore Local Statistics API for local area data like employment rates and demographics.
README
ELS MCP server
This is a proof-of-concept Model Context Protocol (MCP) server that allows LLM agents (eg. chatbots like Claude or ChatGPT) to make meaningful use of the data provided by the Explore Local Statistics API.
This code in this repo was created with the use of LLMs (Genie Code and Github Copilot). It is not intended for production use.
Note: It is not possible to add custom MCP servers to some LLM chatbots, like M365 Copilot.
Run the server locally
To run this app locally, you need Python installed on your machine. You also need to install an LLM client (eg. Claude Desktop) in order to actually use it. (When run locally, the MCP server can't be accessed by web-based apps!)
Run the server
Set up a Python environment and install the dependencies (the first command may start python instead of python3 on your machine):
python3 -m venv .mcpenv
source .mcpenv/bin/activate
pip install -r requirements.txt
Run the MCP server (you need to do this every time you want to use it):
source .mcpenv/bin/activate
python3 -m uvicorn api.index:app --host 127.0.0.1 --port 8001
Connect it to your LLM
To use this local MCSP server, you'll need to install your favourite LLM chatbot on your machine and then configure it. The example below is specific to Claude Desktop, but should be similar for other services.
Open the Settings dialog and then click the Developer tab and Edit config button. This should open a JSON configuration file that you need to edit and save manually.
Add the following lines towards the bottom of the file:
{
...EXISTING CONFIG ABOVE...
"mcpServers": {
"els-mcp-server": {
"command": "npx",
"args": ["-y", "mcp-remote", "http://localhost:8001/mcp"]
}
}
}
Save the file, make sure your MCP server is running, and then restart the Claude Desktop app.
Start using it
Check that your chatbot is connected to the server by asking:
Are you able to connect to els-mcp-server?
Once connected, if you ask questions that can be answered with data on Explore Local Statistics, your chatbot should automatically make use of the API to give you an answer, eg:
Which local authority in Wales has the highest employment rate?
Deploy to Vercel
This app has the configuration files necessary to deploy it to Vercel. This is not intended to be a solution for use in production, but allows the MCP server to be tested by other people without having to run it locally on their machine.
Deployment steps
- Fork this repo to your own Github account.
- In Vercel, create a new project from that repo.
- Vercel will auto-detect Python and install from requirements.txt.
- Deploy the app.
Use it with your LLM
Once set up on Vercel, you can add the MCP server to your favourite LLM chatbot. If you're using Claude (on web or desktop), the steps are as follows:
- Go to Settings (Customize) → Connectors
- Click +, then Add custom connector
- Paste in the URL:
https://<your-app>.vercel.app/mcp - Click Add, then Connect
Once you've done this, you can start asking questions in chat.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.