mcpField
N
Neshan Maps

Neshan Maps

本地服务
github.com地图与出行02 天前更新

关于 Neshan Maps

Neshan Maps 是面向 AI Agent 的伊朗地图 MCP 服务,可查询地点信息并规划出行。它以只读方式提供 Neshan 地图的公开数据,无需 API 密钥或账户。

主要功能

  1. 01搜索地点及查看详情、评价和照片
  2. 02查询附近地点与地址反向地理编码
  3. 03查看城市空气质量
  4. 04规划驾车、骑行、步行及公共交通路线
  5. 05估算多地点出行时间
  6. 06检查德黑兰交通管制区域

适用场景

  1. 01查找伊朗地点及营业时间、评价和菜单照片
  2. 02比较前往多个地点的出行时间
  3. 03查询城市空气质量或坐标地址
  4. 04规划路线并检查是否进入德黑兰管制区

MCP 相关

作为 MCP 服务,它向客户端提供 11 个只读工具,用于查询 Neshan 地图中的地点、路线、交通、空气质量等数据。通过 stdio 与 MCP 客户端通信。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"sepehr071-neshan": {
"command": "uvx",
"args": [
"neshan-mcp"
],
"env": {
"NESHAN_MCP_PROXY": "<NESHAN_MCP_PROXY>"
}
}
}
}
启动命令uvx neshan-mcp
需要配置的环境变量
NESHAN_MCP_PROXYOptional HTTP proxy URL for the neshan.org requests; system proxy settings are ignored. Also accepts a comma-separated list: one is used until it gets blocked or fails to connect, then the next.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypineshan-mcp0.2.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

neshan-mcp:面向 Claude、Cursor 和 Copilot 的非官方 Neshan 地图 MCP 服务,展示从阿扎迪塔到德黑兰大巴扎的实时路线

neshan-mcp:面向 AI Agent 的伊朗 Neshan 地图 MCP 服务

让你的 AI Agent 在 Neshan(نشان)上搜索地点、获取路线并查看德黑兰的交通管制区。
neshan-mcp 是面向 Neshan 的非官方只读 MCP 服务;Neshan 是伊朗的地图和导航应用。
它的 11 个工具涵盖地点搜索、地点详情、评价、照片和菜单、附近地点、反向地理编码、城市空气质量、汽车、摩托车、自行车、步行和公交/地铁路线、前往多个地点的预计时间,以及德黑兰交通管制区查询。 无需 API 密钥或账号。

PyPI Python CI MCP Registry License: MIT

Install in VS Code

面向 AI Agent · 快速开始 · 功能介绍 · 工具 · 常见问题 · فارسی


面向 AI Agent

  • 简介: 面向 neshan.org/maps(伊朗 Neshan 地图)的非官方 MCP 服务(模型上下文协议)。查询可以使用波斯语或英语;回答保留 Neshan 的波斯语名称、地址和路线步骤。
  • 安装: uvx neshan-mcp 或 claude mcp add neshan -- uvx neshan-mcp。传输方式:stdio。需要安装 uv(Python 3.10+)。
  • 身份验证: 无需身份验证,也无需 API 密钥或账号。可选的 NESHAN_MCP_PROXY(HTTP 代理 URL,或以逗号分隔的列表);系统代理设置会被忽略。
  • 访问权限: 只读。它无法登录、保存地点或发布评价,因此调用任何工具前都无需确认。
  • 工具: 共 11 个,名称均以 ns_ 开头。典型调用顺序:ns_search -> ns_place / ns_reviews / ns_photos / ns_nearby; ns_search -> ns_travel_times -> ns_route;驾车进入德黑兰市中心前先调用 ns_zone_check。
  • 适用场景: 用户询问伊朗境内某个地点在哪里、附近有什么、某家商铺是否营业、人们对它的评价或它的菜单是什么样、某个坐标对应的地址、某个城市的空气污染程度、某个地址是否位于德黑兰交通管制区,或如何从 A 点前往 B 点以及需要多长时间(现在或指定时间)。
  • 不适用场景: 用户想查询伊朗境外的地点、出租车或配送价格,或想将地点保存到 Neshan 账号。
  • 输出: 精简 JSON。坐标格式为 lat,lng(先纬度,后经度)。距离单位为米或千米,时间单位为分钟,车费单位为 Toman,评价日期使用波斯历,出发时间使用德黑兰时间。
  • 网络: 所有工具均可通过伊朗境内的网络连接使用。测试中,通过境外网络连接使用时,除 ns_nearby 外的所有工具均正常;Neshan 会对 ns_nearby 返回 HTTP 403。要使用该工具,请将 NESHAN_MCP_PROXY 设置为伊朗代理。
  • 机器可读信息: server.json 和 iran-mcp 目录。

为什么

Neshan 对伊朗了如指掌:营业时间和评价齐全的商家、实时交通、德黑兰的交通管制区和单双号限行方案,以及公交、BRT 和地铁线路。它的开发者 API 需要付费密钥,而网页地图是为点击操作设计的。 neshan-mcp 让 Agent 通过几个简短调用,获取与任何访客在网页地图上看到的相同公开数据:

你: 从自由塔开车到德黑兰大巴扎需要多久?会进入交通管制区吗?

Agent: 调用 ns_search("برج آزادی")、ns_search("بازار بزرگ تهران"),然后调用 ns_route(origin="35.699739,51.338097", destination="35.671897,51.422428", steps=false)

Neshan 建议经由伊斯兰共和国街和穆斯塔法·霍梅尼街,耗时 48 分钟(13 公里);经由赛义迪高速公路和舒什的路线为 16 公里,耗时 45 分钟。三条路线都会进入交通管制区(طرح ترافیک)和单双号限行区,这两个区域的管制时间均为 06:30 至 18:00。大巴扎本身位于这两个区域内。

这是 2026-10-31 德黑兰时间 17:21 的实时调用结果;时间会随交通状况变化。

每条回复都是精简的 JSON,只包含重要字段,不会占满 Agent 的上下文。

功能

  • 查找地点:按名称或类别搜索城市或某个点附近的地点,包括咖啡馆、药店、加油站、街道和广场。可像网站一样按当前是否营业和评分筛选
  • 查看地点信息:地址、坐标、电话、网站、评分和投票数、当前是否营业、每周每天的营业时间、最新照片
  • 查看评价:按最新顺序查看,或查看 Neshan 推荐的评价;还可浏览照片,包括菜单相册
  • 查看附近地点:某个地点周围的餐厅、咖啡馆、公园、厕所、银行、ATM、停车场和公交站
  • 反向地理编码:将坐标转换为街道地址和省份
  • 查询空气质量:城市当天的 AQI、污染物和所有监测站数据,或某个地点的空气质量指数
  • 获取路线:驾车、骑摩托车、骑自行车或步行路线;可查看备选路线、实时行程时间、波斯语逐向导航,以及最多 3 个途经点
  • 按时间规划:设定出发或到达时间(驾车;适用于德黑兰、卡拉季和马什哈德),并获取 Neshan 的交通预测
  • 按行程时间排序:从一个起点前往最多 10 个地点,并按最快路线排序
  • 查询德黑兰的管制区:查看某个地点是否位于交通管制区或单双号限行区内,以及路线是否会经过这些区域;还可避开这些区域或收费道路
  • 搭乘公共交通:查看公交、BRT 和地铁方案,包括线路、站点、步行路段和以托曼计价的费用
  • 仅支持只读操作:无需登录,不会保存或发布内容

示例提示词:

  • “查找米拉德塔附近 24 小时营业、现在开门且评分不低于 4 分的药店。”
  • “Gisha 的 Lamiz Coffee 现在营业吗?电话号码是多少?大家怎么评价?”
  • “给我看看米拉德塔的菜单照片。”
  • “从自由广场开车出发,这三家分店中哪家最近?”
  • “我明天 9 点要到米拉德塔。我应该什么时候从自由广场出发?”
  • “费尔多西广场位于德黑兰交通管制区内吗?”
  • “伊斯法罕今天的空气污染有多严重?”
  • نزدیک‌ترین داروخانه شبانه‌روزی به برج میلاد کجاست؟
  • از میدان آزادی تا بازار تهران با ماشین چقدر راه است؟ وارد طرح ترافیک می‌شوم؟
  • با مترو و اتوبوس از میدان آزادی به برج میلاد چطور بروم و هزینه‌اش چقدر است؟

快速开始

你需要安装 uv。无需 API 密钥或账户。

Claude Code
claude mcp add neshan -- uvx neshan-mcp
Claude Desktop

依次点击“设置”→“开发者”→“编辑配置”,然后添加:

{
  "mcpServers": {
    "neshan": { "command": "uvx", "args": ["neshan-mcp"] }
  }
}
Cursor

将上面的 Claude Desktop 配置块添加到 ~/.cursor/mcp.json(或项目中的 .cursor/mcp.json)。

VS Code(Copilot Agent 模式)

点击上方的 Install in VS Code,或添加到 .vscode/mcp.json:

{
  "servers": {
    "neshan": { "type": "stdio", "command": "uvx", "args": ["neshan-mcp"] }
  }
}
Codex CLI
codex mcp add neshan -- uvx neshan-mcp

或者添加到 ~/.codex/config.toml:

[mcp_servers.neshan]
command = "uvx"
args = ["neshan-mcp"]
Gemini CLI

添加到 ~/.gemini/settings.json:

{
  "mcpServers": {
    "neshan": { "command": "uvx", "args": ["neshan-mcp"] }
  }
}
Windsurf

将 Claude Desktop 配置块添加到 ~/.codeium/windsurf/mcp_config.json。

其他客户端

这是一个标准的 stdio MCP 服务:运行 uvx neshan-mcp,或运行 pip install neshan-mcp 后再运行 neshan-mcp。

工具

坐标格式为 lat,lng,例如 35.6997,51.3380。地点 ID 来自 ns_search。

工具功能
ns_search按名称或类别,在城市或坐标附近查找 Neshan 地图上的地点、商家、街道和广场
ns_place获取 Neshan 上某个地点的详细信息:地址、坐标、电话、网站、评分、营业时间和照片
ns_reviews列出 Neshan 上某个地点的访客评价:星级评分、波斯历日期、评论、点赞数和商家回复
ns_photos列出 Neshan 上某个地点的照片,按图片 URL 返回,每页 10 张,附日期和上传者信息,也包括菜单照片
ns_nearby按类别列出 Neshan 上某个地点周边的设施:餐厅、咖啡馆、公园、厕所、银行、ATM、停车场
ns_reverse_geocode将纬度/经度转换为 Neshan 的街道地址和省份(反向地理编码)
ns_air_quality从 Neshan 获取伊朗城市当天的空气质量指数(AQI),以及污染物和各监测站的读数
ns_route获取 Neshan 上的驾车、摩托车、自行车或步行路线:距离、行程时间和逐向导航步骤
ns_travel_times获取从一个坐标到 Neshan 上多个地点的行程时间,并按最快优先排序
ns_zone_check检查某个坐标是否位于德黑兰交通管制区或单双号(空气污染)区域,并提供管制时段
ns_transit_route获取 Neshan 上两点之间的公交、BRT 和地铁方案,包括线路、站点、步行路程和票价

全部 11 个工具均标注为 readOnlyHint: true。

工作原理

  AI agent  (Claude, Cursor, Copilot, ...)
      │
      │  MCP over stdio
      ▼
  neshan-mcp  (runs on your machine)
      │
      │  HTTPS
      └──────▶  neshan.org/maps/pwa-api   search, places, reviews, photos, routes, transit, air quality

neshan-mcp 在本地运行,并调用 neshan.org/maps 网页应用使用的相同端点,中间没有托管服务,也无需 API 密钥。请求通过一个模拟 Chrome 的客户端发送,形式与网页应用自身的请求相似。它一次最多发送 3 个请求,并加入少量随机延迟;缓存结果(地点和地址缓存 5 分钟,实时路线缓存 1 分钟,公交、区域和空气质量缓存 10 分钟);调用失败时最多重试两次,并且只与 neshan.org 通信。

Neshan 的网页应用会对大多数响应进行编码:响应以打乱顺序的 base64 文本形式返回,公交响应还经过 XOR 编码。服务会像网页应用自身的脚本一样解码。如果 Neshan 更改了编码方案,服务会像浏览器加载网页一样,从网站当前的 JavaScript 中读取新值,然后重试。对于仍无法读取的响应,服务会报告错误,绝不捏造数据。

需要了解

  • 坐标格式为 lat,lng。 纬度在前。若顺序颠倒,系统会拒绝并给出提示。
  • near 可以填写城市或坐标点。 支持用英语或波斯语填写 23 个大城市的名称(Tehran、Mashhad、Isfahan、Shiraz、 Tabriz、Karaj、Qom、Ahvaz 等)。对于较小的城镇,请将其名称填写在查询中。
  • 搜索最多返回 30 个地点,不支持分页。赞助结果(在网站上标记为 آگهی)不会显示。 open_now 和 min_rating 使用 Neshan 自带的筛选条件(当前营业;3.5+、4+、4.5+)。
  • 行程时间是 Neshan 对现在出发或在 depart_at 指定时间出发的估算值。 出发和到达时间均为德黑兰时间(公历,YYYY-MM-DD HH:MM);Neshan 仅为德黑兰、卡拉季和马什哈德的汽车提供这些信息。
  • 会标记收费道路(toll_road),但不会提供费用:Neshan 的网页应用不会显示通行费金额。
  • 公共交通不提供行程时间。 Neshan 网页地图会显示公交车和地铁的票价、线路及站点,但不显示行程时长。
  • ns_nearby 需要连接伊朗网络。 在境外使用时,Neshan 会以 HTTP 403 响应;请将 NESHAN_MCP_PROXY 设置为伊朗代理,或在 ns_search 中将地点的 lat,lng 作为 near。
  • 空气质量城市请使用英语名称(Tehran、bandar abbas)或上述 23 个城市的波斯语名称。没有监测站的城市会返回“无数据”。
  • 输出为波斯语。 名称、地址、营业时间(波斯数字)、步骤和评价日期均与 Neshan 显示的内容一致。
  • 不支持的功能: 不支持登录、收藏或评价;不提供伊朗境外的地点、实时交通事故、气温或 AI 评价摘要(Neshan 仅向已登录用户提供这些内容)。

常见问题

有 Neshan MCP 服务或免费的 Neshan API 吗?

Neshan 提供需要 API 密钥的开发者 API。neshan-mcp 是一个非官方 MCP 服务,包含 11 个只读工具,会调用 neshan.org 网络地图的公共端点,因此不需要密钥、账户或付费。

需要 Neshan API 密钥吗?

不需要。它不使用 API 密钥、令牌或登录。使用 uvx neshan-mcp 安装,然后用自然语言提问即可。

我的车现在可以进入德黑兰的交通管制区吗?

ns_zone_check 会告知某个点是否位于交通规划区(طرح ترافیک)或单双号限行区(طرح آلودگی هوا),以及 Neshan 显示的各项限行时段,例如 06:30 至 18:00。你的车是否可以进入,取决于你的通行许可和车牌信息,而该服务并不知道这些信息。ns_route 可以使用 avoid_traffic_zone 和 avoid_odd_even 避开这两个区域规划路线。

今天德黑兰的空气质量如何?

向 Agent 提问即可;ns_air_quality("Tehran") 会返回今天按 0-500 刻度计算的 AQI、Neshan 给出的评级(例如 قابل قبول,即可接受)、污染物读数,以及所有监测站的数据,并按污染程度从高到低排列。

如何将它与 Claude、Cursor 或 Copilot 搭配使用?

使用 claude mcp add neshan -- uvx neshan-mcp 添加服务,或使用快速开始中的相应配置,然后用波斯语或英语提问。

它在伊朗境外也能使用吗?

可以,ns_nearby 除外。测试中,其他功能通过境外网络均可正常使用。如果你的网络受到限制,请将 NESHAN_MCP_PROXY 设置为 HTTP 代理。系统代理变量会被有意忽略。

它与 balad-mcp 有什么不同?

balad-mcp 使用的是另一款伊朗地图 Balad。两者都能搜索地点并提供路线;neshan-mcp 还提供骑行、步行和公共交通路线、按出发时间规划路线、检查德黑兰任意地点是否位于管制区内,以及查询空气质量。你可以同时安装两者并进行比较。

它可以保存地点或撰写评论吗?

不可以。它不需要登录,只读取公开数据。

如何调试 Agent 看到的内容?
npx @modelcontextprotocol/inspector uvx neshan-mcp

配置

变量默认值含义
NESHAN_MCP_PROXYunsetneshan.org 请求使用的可选 HTTP 代理 URL;系统代理设置会被忽略。逗号分隔的列表会逐个使用:某个代理被屏蔽或无法连接时,将切换到下一个代理

波斯语:Neshan 地图 MCP 服务

neshan-mcp 是一个非官方、只读的 Neshan 地图 MCP 服务。借助它,您的 AI 助手(Claude、Cursor、Copilot 和其他应用)可以查找地点、规划路线,并查询德黑兰交通管制区范围。无需 API 密钥或用户账户。

功能

  • 地点搜索:按名称或类别(咖啡馆、药店、加油站、街道、广场)在城市内或某个地点附近搜索,并可按“营业中”和评分筛选,结果与 Neshan 网站一致。
  • 地点详情:地址、坐标、电话、网站、评分、一周每天的营业时间以及最新照片。
  • 用户评论(最新或精选)和照片,包括菜单照片。
  • 每个地点附近的设施:餐厅、咖啡馆、公园、卫生间、银行、ATM、停车场和公交车站。
  • 坐标转地址。
  • 空气质量:各城市今日指数、污染物以及所有监测站。
  • 路线规划:支持汽车、摩托车、自行车和步行,提供实时行程时间、波斯语路线步骤,并可设置最多 3 个途经点。
  • 按出发或到达时间规划路线:支持德黑兰、卡拉季和马什哈德的汽车路线,并提供 Neshan 交通预测。
  • 比较行程时间:从一个起点前往最多 10 个目的地,按从最快到最慢排序。
  • 交通管制区和单双号限行:查询某个地点是否位于区域内,以及路线是否会进入区域;可选择绕开区域和收费站。
  • 公共交通:提供公交、BRT 和地铁选项,包括线路、车站以及以托曼计价的车费。

注意事项

  • 只读:不会登录账户、保存地点或发布评论。
  • 坐标请按 lat,lng 格式提供,即先写纬度(例如 35.6997,3380)。
  • 附近设施工具(ns_nearby)仅在伊朗境内可用。在伊朗境外,请将 NESHAN_MCP_PROXY 设置为一个伊朗出口代理。
  • 出发和到达时间使用德黑兰时间和公历日期(例如 2026-11-01 08:00)。
  • 对于收费路线,只会返回收费标记,因为 Neshan 网站本身不显示收费金额。
  • Neshan 网站的响应经过加密,本服务会按照网站自身使用的方式解密。

安装(请先安装 uv)。在 Claude Code 中:

claude mcp add neshan -- uvx neshan-mcp

在 Claude Desktop、Cursor 和其他应用中,请使用 Quick start 部分中的相同配置。

示例问题

  • “米拉德塔最近的 24 小时药店在哪里?现在营业吗?”
  • “从自由广场到德黑兰大巴扎开车要多久?我会进入交通管制区吗?”
  • “我明天 9 点要到米拉德塔;应该几点从自由广场出发?”
  • “从自由广场怎么乘地铁和公交去米拉德塔?要花多少钱?”
  • “伊斯法罕今天空气污染严重吗?”
  • “Gisha 的 Lamiz 咖啡馆现在营业吗?大家怎么评价它?”

开发

git clone https://github.com/sepehr071/neshan-mcp && cd neshan-mcp
uv sync
uv run ruff check . && uv run ruff format --check .
uv run python -m pytest -q          # offline unit tests
uv run python -m pytest -m live -q  # calls neshan.org
uv build

地点工具位于 src/neshan_mcp/maps.py,路线工具位于 src/neshan_mcp/routes.py,Neshan 响应的解码代码位于 src/neshan_mcp/codec.py。每个工具都是带类型注解的异步函数,并附有说明何时使用该工具的文档字符串。欢迎提交问题和 PR。

发布版本:更新 pyproject.toml 和 server.json 中的版本号,然后推送一个 v* 标签。GitHub Actions 会发布到 PyPI。

相关服务

  • balad-mcp:适用于 Balad(另一个伊朗地图服务),支持地点、评论和驾车路线
  • iran-mcp:伊朗各类服务的 MCP 服务目录
  • mrbilit-mcp:适用于伊朗的航班、火车、公交车和酒店
  • jabama-mcp:适用于伊朗各地的别墅和住宿
  • snapp-mcp:适用于 Snappfood 和 SnappMarket

免责声明

本项目为非官方项目,与 Neshan 无关,也未获得其认可。本项目为只读服务,使用 neshan.org Web 应用的接口,这些接口可能会在不另行通知的情况下发生变化。行程时间、区域时段和空气质量仅供参考;请在依赖这些信息前查阅官方来源。

作者

Sepehr Radmard:面向伊朗网络的开源 MCP 服务。LinkedIn:linkedin.com/in/sepehr-radmard

由 Sepehr Radmard(سپهر رادمرد)构建并维护。欢迎在 LinkedIn 上联系,或在 GitHub 上关注 @sepehr071,了解更多面向伊朗网站的 MCP 服务,所有服务均列于 iran-mcp。如果这为你节省了时间,欢迎给仓库点个星,让更多人发现它。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。