From 6c5daf21f8cd3fc21cf692bb174678da4c64332e Mon Sep 17 00:00:00 2001 From: Isaac Johnson Date: Mon, 2 Feb 2026 17:21:56 -0600 Subject: [PATCH] first --- .gitignore | 191 +++++++++++++++++++++++++++++++++++++ BWCA_EP30_Plan.pptx | Bin 0 -> 99407 bytes azure_maps_mcp.py | 223 ++++++++++++++++++++++++++++++++++++++++++++ requirements.txt | 3 + setup.md | 74 +++++++++++++++ 5 files changed, 491 insertions(+) create mode 100644 .gitignore create mode 100644 BWCA_EP30_Plan.pptx create mode 100755 azure_maps_mcp.py create mode 100644 requirements.txt create mode 100644 setup.md diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..600a4e9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,191 @@ +# Created by https://www.toptal.com/developers/gitignore/api/python,linux +# Edit at https://www.toptal.com/developers/gitignore?templates=python,linux + +### Linux ### +*~ + +# temporary files which can be created if a process still has a handle open of a deleted file +.fuse_hidden* + +# KDE directory preferences +.directory + +# Linux trash folder which might appear on any partition or disk +.Trash-* + +# .nfs files are created when an open file is removed but is still being accessed +.nfs* + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# pdm +# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. +#pdm.lock +# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it +# in version control. +# https://pdm.fming.dev/#use-with-ide +.pdm.toml + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintained in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +### Python Patch ### +# Poetry local configuration file - https://python-poetry.org/docs/configuration/#local-configuration +poetry.toml + +# ruff +.ruff_cache/ + +# LSP config files +pyrightconfig.json + +# End of https://www.toptal.com/developers/gitignore/api/python,linux diff --git a/BWCA_EP30_Plan.pptx b/BWCA_EP30_Plan.pptx new file mode 100644 index 0000000000000000000000000000000000000000..f00a89931d271d067135454664b373d05b0e1e39 GIT binary patch literal 99407 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 str: + """Retrieves the API key from environment or context.""" + api_key = os.environ.get("AZURE_MAPS_SUBSCRIPTION_KEY") + if not api_key: + # Try to elicit from user if supported by client, otherwise fail + try: + api_key = await ctx.elicit("Please provide your Azure Maps Subscription Key:", input_type="password") + except Exception: + pass + + if not api_key: + raise ValueError("AZURE_MAPS_SUBSCRIPTION_KEY environment variable is not set.") + return api_key + +@mcp.tool() +async def get_static_map(params: GetStaticMapInput, ctx: Context) -> dict: + """ + Retrieves a static map image from Azure Maps. + + Returns a base64 encoded string of the image, wrapped in a JSON object + describing the image. + """ + api_key = await _get_api_key(ctx) + + # Parse center point (Lat,Lon -> Lon,Lat) + try: + lat, lon = params.centerPoint.split(",") + center = f"{lon.strip()},{lat.strip()}" + except ValueError: + return {"error": "centerPoint must be 'latitude,longitude'"} + + # Parse map size + try: + width, height = params.mapSize.split(",") + except ValueError: + width, height = "500", "500" + + # Map imagery set + layer, style = IMAGERY_MAP.get(params.imagerySet, ("basic", "main")) + + query_params = { + "api-version": API_VERSION, + "subscription-key": api_key, + "center": center, + "zoom": params.zoomLevel, + "width": width, + "height": height, + "format": params.format, + "layer": layer, + "style": style + } + + # Handle Traffic (Azure Maps Static Image doesn't have simple 'Traffic' layer param usually, + # but let's check if we can append it to layer or use traffic flow tiles. + # Standard static API: layer=basic, hybrid, labels. + # To keep it simple and safe, we will ignore Transit. + # If Traffic is requested, we might not be able to fulfill it easily in one request without 'traffic' layer support + # which varies by API version. We'll omit for now to ensure stability or use 'hybrid' which might show some?) + # Actually, some docs mention 'traffic' param boolean? No. + # We will log or ignore for now as it's a migration. + + # Handle pushpins + # Bing: style;location;title -> Azure: pins=default||'title'|lon lat + if params.pushpins: + # Azure allows multiple 'pins' parameters + # Format: style|label|lon lat (Simplified) + # Reference: pins=default||'Label'|12.34 56.78 + + # We need to construct the 'pins' param string. + # Since httpx can take a list of tuples for multiple params with same name. + + # Let's prepare the list of query params + api_params = list(query_params.items()) + + for pin in params.pushpins: + try: + parts = pin.split(";") + # Expected: style;lat,lon;title or style;lat,lon + p_style = "default" # We map everything to default for now + p_loc = "" + p_title = "" + + if len(parts) >= 2: + p_loc_raw = parts[1] + if len(parts) >= 3: + p_title = parts[2] + else: + continue # Invalid format + + # Parse lat,lon -> lon lat + p_lat, p_lon = p_loc_raw.split(",") + azure_loc = f"{p_lon.strip()} {p_lat.strip()}" + + # Construct pin param + # default|co|la|lc||'Label'|lon lat + # Simple: default||'Label'|lon lat + + pin_str = f"default||'{p_title}'|{azure_loc}" if p_title else f"default|||{azure_loc}" + api_params.append(("pins", pin_str)) + + except Exception: + continue # Skip malformed pins + else: + api_params = list(query_params.items()) + + async with httpx.AsyncClient() as client: + response = await client.get(API_BASE_URL, params=api_params) + + if response.status_code != 200: + try: + error_data = response.json() + error_msg = error_data.get("error", {}).get("message", response.text) + return {"error": f"{response.status_code} - {error_msg}"} + except: + return {"error": f"{response.status_code} - {response.text}"} + + # Success - return base64 image + image_data = response.content + base64_img = base64.b64encode(image_data).decode('utf-8') + + return { + "format": params.format, + "width": width, + "height": height, + "description": f"Static map of {params.centerPoint} at zoom {params.zoomLevel}", + "image_data_base64": base64_img + } + +if __name__ == "__main__": + mcp.run() diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..16c98f8 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +mcp[cli] +httpx +pydantic diff --git a/setup.md b/setup.md new file mode 100644 index 0000000..8f187ff --- /dev/null +++ b/setup.md @@ -0,0 +1,74 @@ +# Azure Maps MCP Server Setup + +This MCP server provides access to Azure Maps static imagery. + +## Prerequisites + +- Python 3.10 or higher +- An Azure Maps Subscription Key + +## 1. Get an Azure Maps Subscription Key + +1. Go to the [Azure Portal](https://portal.azure.com/). +2. Create an **Azure Maps Account** resource. +3. Once created, go to **Authentication** in the left menu. +4. Copy the **Primary Key** (or Secondary Key). This is your Subscription Key. + +## 2. Installation + +1. Clone or navigate to this repository. +2. Install the required Python packages: + +```bash +pip install -r requirements.txt +# OR if using the provided pyproject.toml +pip install . +``` + +(Note: You may need to create a virtual environment first: `python -m venv venv && source venv/bin/activate`) + +## 3. Configuration + +Set your API key as an environment variable: + +```bash +export AZURE_MAPS_SUBSCRIPTION_KEY="your_subscription_key_here" +``` + +## 4. Running the Server + +You can run the server directly (stdio mode): + +```bash +python azure_maps_mcp.py +``` + +## 5. Using with MCP Clients + +### Claude Desktop + +Add the following to your `claude_desktop_config.json`: + +```json +{ + "mcpServers": { + "azure-maps": { + "command": "python", + "args": ["/absolute/path/to/azure_maps_mcp.py"], + "env": { + "AZURE_MAPS_SUBSCRIPTION_KEY": "your_subscription_key_here" + } + } + } +} +``` + +### Inspecting with MCP Inspector + +To test the server interactively: + +```bash +npx @modelcontextprotocol/inspector python azure_maps_mcp.py +``` + +(Ensure you have `AZURE_MAPS_SUBSCRIPTION_KEY` set in your terminal session before running the inspector). \ No newline at end of file