police-uk-api-mcp-server
About
official MCP TypeScript SDK server providing tools to access and interact with the police.uk API, offering data on crimes, police forces, neighbourhoods, and stop-and-search incidents.
Details
- Author
- dwain-barnes
- GitHub stars
- 2
- Downloads
- 213
- Categories
- Developer Tools
Jump to
- 21 distinct tools for querying police.uk API endpoints
- Retrieve street-level crimes, neighbourhood details, and force information
- Access stop-and-search records
- Built with the official MCP TypeScript SDK
- Easy integration with MCP-compatible systems
- Comprehensive error handling and type safety
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
police-uk-api-mcp-serverCommand (node, npx, python, etc.)Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
Install globally via npm (npm install -g mcp-server-police-uk) or run with npx (npx mcp-server-police-uk). For Claude Desktop, add a configuration entry pointing to the server command. For development, clone the repository, install dependencies, build, and start locally.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"police-uk-api-mcp-server": {
"police-uk-api-mcp-server": {
"command": "python",
"args": [
"server.py"
]
}
}
}
}
McpServers
{
"police-uk-api-mcp-server": {
"command": "python",
"args": [
"server.py"
]
}
}
MCP Server Police UK
A Model Context Protocol (MCP) server providing tools to access and interact with the police.uk API, offering comprehensive data on crimes, police forces, neighbourhoods, and stop-and-search incidents across the UK.
Features
- 21 distinct tools for querying police.uk API endpoints
- Retrieve street-level crimes, neighbourhood details, force information, stop-and-search records, and more
- Built with the official MCP TypeScript SDK
- Easy integration with MCP-compatible systems
- Comprehensive error handling and type safety
Installation
Install directly from npm:
npm install -g mcp-server-police-uk
Or use with npx (no installation required):
npx mcp-server-police-uk
Usage
With Claude Desktop
Add to your Claude Desktop configuration file:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"police-uk": {
"command": "npx",
"args": ["-y", "mcp-server-police-uk"]
}
}
}
Development
To contribute or run locally:
# Clone the repository
git clone https://github.com/dwain-barnes/police-uk-api-mcp-server.git
cd mcp-server-police-uk
Install dependencies
npm install
Build the project
npm run build
Run locally
npm start
With other MCP clients
npx mcp-server-police-uk
Available Tools
Crime Data
-get_street_level_crimes - Retrieve street-level crimes by location or area
- get_crimes_at_location - Get crimes at a specific location
- get_crimes_no_location - Retrieve crimes that couldn't be mapped to a location
- get_crime_categories - Get valid crime categories
- get_last_updated - Get the date when crime data was last updated
- get_outcomes_for_crime - Get outcomes for a specific crime
- get_street_level_outcomes - Retrieve outcomes by location or area
Police Forces
-get_list_of_forces - Get all police forces
- get_force_details - Get details for a specific police force
- get_senior_officers - Get senior officers for a police force
Neighbourhoods
-get_neighbourhoods - Get neighbourhoods for a police force
- get_neighbourhood_details - Get details for a specific neighbourhood
- get_neighbourhood_boundary - Get boundary coordinates for a neighbourhood
- get_neighbourhood_team - Get team members for a neighbourhood
- get_neighbourhood_events - Get scheduled events for a neighbourhood
- get_neighbourhood_priorities - Get policing priorities for a neighbourhood
- locate_neighbourhood - Find neighbourhood team for given coordinates
Stop and Search
-get_stop_searches_by_area - Get stop and searches within an area
- get_stop_searches_by_location - Get stop and searches at a specific location
- get_stop_searches_no_location - Get stop and searches with no location
- get_stop_searches_by_force - Get stop and searches by police force
Examples
Get crimes near a location
// Get crimes within 1 mile of coordinates
get_street_level_crimes({
lat: 51.5074,
lng: -0.1278,
date: "2024-01"
})
Find your local police team
// Find neighbourhood team for coordinates
locate_neighbourhood({
lat: 51.5074,
lng: -0.1278
})
Get force information
// Get details about Metropolitan Police
get_force_details({
force_id: "metropolitan"
})
API Rate Limits
This server respects the police.uk API rate limits. The API is free to use but has usage limits in place to ensure fair access for all users.
Data Source
All data is sourced from the official police.uk API, which provides open data about policing in England, Wales, and Northern Ireland. The data is typically updated monthly.
Contributing
Contributions are welcome! Please feel free to:
- Report issues on GitHub Issues
- Submit Pull Requests
- Suggest new features or improvements
Repository
- GitHub: https://github.com/dwain-barnes/mcp-server-police-uk
- npm: https://www.npmjs.com/package/mcp-server-police-uk
License
MIT License - see LICENSE file for details.
Support
If you encounter any issues or have questions:
- File an issue on GitHub Issues
- Check the police.uk API documentation for API-specific questions
Author
Created by Dwain Barnes
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.





