Ordnance Survey - MCP Server
A Python-based MCP server that provides access to the Ordnance Survey APIs.
Overview
This service creates a bridge between MCP clients and the OS APIs, making it easy to query geographic data through a standardised protocol.
The service handles authentication, (basic) rate limiting, and provides a simplified interface to complex OS APIs.
Project Structure
- api_service - Asynchronous HTTP client implementation for the OS APIs
- Handles authentication, request formatting, and response processing
- Manages rate limiting and error handling
- Provides a clean interface to the external API endpoints
- mcp_service - Exposes OS APIs functionality as MCP tools
- Converts API responses to MCP-compatible formats
- Implements business logic for feature operations
- Provides a standardized interface for other services
Features
- Collection management (listing and querying collections)
- Feature search with spatial and attribute filters
- Individual feature retrieval by ID
- Linked identifier operations
- Bulk feature operations
Requirements
- Python 3.11+
- OS API Key (set as environment variable
OS_API_KEY
) - You will need to register for an OS Data Hub account to get an API key
- Dependencies: aiohttp, mcp[cli]
Usage
Configure in your MCP host configuration file (e.g Claude Desktop):
Claude Desktop Integration
This MCP service has only been tested with Claude Desktop.
The aim is to make this service work with various MCP hosts/clients, but this has not been tested yet.
When using with Claude Desktop:
- Ensure Claude Desktop is configured to access local tools
- The service will be available as a tool once it's running
- No additional network configuration is needed
Available Tools
All of this is a work in progress, but the following tools are available:
hello_world
- Test connectivitycheck_api_key
- Verify API key configurationlist_collections
- List available feature collectionsget_collection_info
- Get details about a specific collectionget_collection_queryables
- Get filterable properties for a collectionsearch_features
- Search features by various criteriaget_feature
- Retrieve a specific feature by IDget_linked_identifiers
- Find related identifiersget_bulk_features
- Retrieve multiple features in a single callget_bulk_linked_features
- Get linked features in bulkget_prompt_templates
- Get standard prompt templates for common operations
Using Prompt Templates
This service provides pre-configured prompt templates to help you get started.
To access these templates ask Claude "show me available prompt templates"
Contributing
Contributions are welcome! Please open an issue or submit a pull request.
License
This project is licensed under the MIT License.
This project does not have the endorsement of Ordnance Survey.
This server cannot be installed
A Python-based MCP server that provides access to Ordnance Survey APIs, allowing querying of geographic data through a standardized protocol with features like collection management, feature search, and spatial filtering.
Related MCP Servers
- AsecurityAlicenseAqualityThe MCP server provides an interface to the Datadog API, enabling seamless management of incidents, monitoring, logs, dashboards, metrics, traces, and hosts. Its extensible design allows easy integration of additional Datadog APIs for future expansions.Last updated -1432236TypeScriptApache 2.0
- AsecurityFlicenseAqualityAn MCP server implementation that enables interaction with the Unstructured API, providing tools to list, create, update, and manage sources, destinations, and workflows.Last updated -3925
- -securityFlicense-qualityAn MCP server that provides access to Paylocity API endpoints, allowing retrieval of employee data, earnings, company codes, local taxes, and pay statements.Last updated -Python
- -securityFlicense-qualityA Python-based server that helps users easily install and configure other MCP servers across different platforms.Last updated -2Python