Metro Publisher工具服务器

一个通过模型上下文协议(MCP)服务器提供Metro Publisher工具的服务,用于查询和管理位置信息、导出数据至CMS工作流。

  • by alexschad
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 alexschad/metropublisher-mcp

使用说明

Metro Publisher的MCP服务器

通过模型上下文协议(MCP)服务器公开有用的Metro Publisher工具的服务器。使用它可以查询Metro Publisher位置、获取位置详细信息、添加位置以及导出WordPress或其他CMS工作流的数据。 它还公开了辅助工具,以获取位置的地理名称id、纬度和经度。

安装

npm install

在本地运行

# Starts the demo MCP server on http://localhost:8000/mcp
npm run server:dev

打开检查器UI

# Launch the inspector tooling so you can interact with prompts & tools in a UI
npm run server:inspect

服务器公开的内容:

可用工具

add_mp_位置

添加新的Metro Publisher位置。

  • 参数:
    • title(字符串,必填)——位置的可读名称(例如“城市图书馆”)。
    • urlname(字符串,必填)——用于公共位置URL的URL安全段符(无空格;例如“城市图书馆”)。
    • description(字符串,可选)——简短摘要或标语。
    • 经纬度(数字,可选)——坐标;提供两者以设置 coords 对于位置。
    • street(字符串,可选)——街道名称。
    • 街道号(字符串,可选)——街道号或单位。
    • pcode(字符串,可选)--邮政编码。
    • geoname_id(数字,可选)——GeoNames id(用于将Metro Publisher连接到GeoNames记录)。
    • phone(字符串,可选)--联系电话号码。
    • 网站(字符串,可选)——网站URL。
    • email(字符串,可选)--联系电子邮件地址。
    • fax(字符串,可选)--传真号码(如果适用)。
    • content(字符串,可选)——位置的较长HTML或文本内容(该工具在发送时将其包装在p标签中)。

get_mp_位置

列出Metro Publisher位置(分页)。

  • 参数:
    • page:分页页码,

get_mp_location_details

获取Metro Publisher位置的详细信息。

  • 参数:
    • uuid:Metro Publisher中位置的uuid,

获取日期数据

获取位置的geoname id、经度和纬度。

  • 参数:
    • location_name:位置的人类可读名称,

get_nominatim_data

从Nominim获取位置名称的纬度和经度。

  • 参数:
    • location_name:位置的人类可读名称,

可用提示

export_mp_位置

提示获取、收集metropoublisher位置并将其格式化为所选格式的文件。

创建位置数据

使用get_nomatim_data工具生成格式化位置数据以获取地理位置数据的助手提示。

获取日期数据

提示使用get_geoname_data工具获取位置的地理位置数据。

export_mp_内容

提示获取、收集metropoublisher内容并将其格式化为所选格式的文件。

环境变量(.env)

在'.env'文件中设置这些环境变量:

  • PORT——可选。演示服务器监听的端口。代码使用的默认端口为 8000 当未设置PORT时。
  • MP_INSTANCE_ID——Metro发布器实例ID
  • MP_API_KEY/MP_API_SECRET-Metro发布服务器实例的API凭据。
  • GEONAME_USERNAME--使用的地名用户名 get_geoname_data 获取位置的geoname_id。需要地理名称才能将位置添加到metropoublisher。您可以在此处注册geonames.org:https://www.geonames.org/login