Back to MCP directory
publicPublicdnsLocal runtime

mcp-server-proj

MCP服务器项目实现坐标系统转换功能,支持EPSG、WKT和Proj格式,提供坐标转换和坐标系列表工具

article

README

🚀 MCP 服务器投影

MCP 服务器投影( cartographic projections and coordinate transformations) 能够实现不同坐标系统之间的转换,为地理数据处理提供了便利。

✨ 主要特性

服务器实现了两个坐标转换工具:

  1. 转换坐标

    • 可在不同的坐标系统之间转换坐标。
    • 支持以下坐标系统格式:
      • EPSG 代码(例如,EPSG:4326 表示 WGS84)
      • WKT 格式
      • Proj 格式
    • 必填输入参数:
      • source_crs: 源坐标系统
      • target_crs: 目标坐标系统
      • coordinates: 包含 x, y 值的点数组

    示例:从 WGS84(EPSG:4326)转换到正交投影

    输入:
    - source_crs: EPSG:4326
    - target_crs: +proj=ortho +lon_0=112.364017384874 +lat_0=34.9227297291321 +a=6371010 +units=m +no_defs
    - coordinates: [112.364017384874, 34.9227297291321]
    
    输出:
    - 转换后的坐标:[0.00000000, 0.00000000]
    
  2. 列出支持的 CRS

    • 列出所有支持的坐标系统格式及其示例。
    • 提供以下详细示例:
      • EPSG 代码格式
      • 地理和投影坐标系统的 WKT 格式
      • Proj 格式

📦 安装指南

要调试服务器,请按照以下步骤操作:

  1. 安装必要的依赖项:
    npm install mcp-proj
    
  2. 使用 MCP Inspector 工具进行调试:
    • 下载并安装 MCP Inspector:https://github.com/mcpgis/mcp-inspector/releases
    • 打开终端并运行以下命令:
    inspector.cmd --host localhost:3000
    

📚 详细文档

配置

以下是服务器的配置信息:

开发环境配置

const development = {
    port: 3000,
    host: 'localhost',
    db: {
        url: 'mongodb://localhost:27017',
        name: 'mcp_proj'
    }
}

发布环境配置

const production = {
    port: 80,
    host: 'api.mcp.com',
    db: {
        url: 'mongodb://db:mongo@cluster0.mongodb.net/test',
        name: 'mcp_prod'
    }
}

坐标系统信息

EPSG 代码

  • EPSG:4326:WGS84 地理坐标系,使用度、分、秒表示。
  • EPSG:3857:Web Mercator 投影坐标系,以米为单位。

WKT 格式

  • WGS84:
GEOGCS["WGS 84",
    DATUM["WGS84",
        SPHEROID["WGS84",6378137,2550000.001,
            AUTHORITY["EPSG","7008"]],
        AUTHORITY["EPSG","6085]],
    PRIMEM["Greenwich",0,
        AUTHORITY["EPSG","8901"]],
    UNIT["Degree",0.01745329251994329,
        AUTHORITY["EPSG","9108"]],
    AUTHORITY["EPSG","4326"]]
  • Web Mercator:
PROJCS["WGS84 / Web Mercator",
    DATUM["WGS84",
        SPHEROID["WGS84",6378137,2550000.001,
            AUTHORITY["EPSG","7008"]],
        AUTHORITY["EPSG","6085]],
    PRIMEM["Greenwich",0],
    UNIT[" metre",1],
    PROJECTION["Mercator_1SP",
        PARAMETER["central_meridian",0],
        PARAMETER["latitude_of_origin",0],
        PARAMETER["scale_factor",1],
        PARAMETER["false_easting",0],
        PARAMETER["false_northing",0]],
    AUTHORITY["EPSG","3857"],
    AXIS["X",EAST],
    AXIS["Y",NORTH]]

Proj 格式

  • WGS84:
+proj=longlat +datum=WGS84 +no_defs +type=crs
  • Web Mercator 投影:
+proj=merc +a=6378137 +b=6378137 +lat_ts=0 +lon_0=0 +x_0=0 +y_0=0 +k=1 +units=m +no_defs

参考资料

有关坐标系统的更多信息,请访问:https://epsg.io/ 如果对 JavaScript 实现的坐标转换感兴趣,可以查看:https://github.com/proj4js/proj4js

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client