IP2Location.io
官方IP2Location.io API 整合,用於擷取 IP 地址的地理位置資訊。
你可以用 IP2Location Io MCP 做什麼?
- IP 地理位置 — 查詢 IPv4 或 IPv6 位址的位置,包括國家、地區、城市、郵遞區號、座標和時區。
- ASN 和網路詳細資訊 — 查詢與 IP 位址相關的 ASN、AS 名稱、ISP、網域和網路屬性。
- 代理伺服器和安全性檢查 — 查詢 IP 是否為代理伺服器,並在支援的方案中取得 VPN、Tor、資料中心、威脅和詐欺資料。
- 批次 IP 查詢 — 提供以逗號、空格或換行分隔的多個 IP,並在可用時透過 Bulk API 取得結果。
- 自然語言查詢 — 提出「8.8.8.8 的 ASN 是什麼?」之類的問題,並讓
get_geolocation工具傳回資料。
文件
IP2Location.io MCP 伺服器
IP2Location.io MCP Server 是一種 Model Context Protocol (MCP) 伺服器,可讓相容於 MCP 的 AI 用戶端使用 IP2Location.io API 執行 IP 位址地理位置與網路情報查詢。
提供 IPv4 或 IPv6 位址後,MCP 伺服器即可擷取地理位置、ASN、ISP、網域、網路類型及 Proxy 資訊等資料,具體取決於您的 IP2Location.io API 方案。
因此,它適用於 IP 調查、網路疑難排解、流量分析、本地化、安全分析,以及豐富記錄或其他資料集中的 IP 位址資訊。
功能
- 完整的地理位置資料:擷取國家、地區、城市、ZIP/郵遞區號、緯度、經度、時區及其他位置資訊。
- ASN 查詢:識別 IP 位址所屬的 Autonomous System Number (ASN) 和 Autonomous System (AS)。
- 網路情報:依據您的方案,擷取 ISP、網域、連線速度、使用類型及其他網路屬性等資訊。
- Proxy 與安全資訊:偵測 Proxy 相關資訊,並在支援的方案中提供額外的 VPN、Tor、資料中心、威脅及詐欺資訊。
- 支援 IPv4 和 IPv6:查詢 IPv4 和 IPv6 位址。
- 大量 IP 查詢:在一個提示中傳送多個 IP 位址,並在可用時自動使用 IP2Location.io Bulk API。
- MCP 整合:直接從相容於 MCP 的 AI 應用程式使用 IP 情報。
- 非同步請求:使用
httpx執行非同步 API 請求。
[!NOTE] IP2Location.io 傳回的欄位取決於您的 API 訂閱方案。
需求
有兩種方式可以使用此 MCP 伺服器。
雲端代管的 MCP 伺服器
若要直接連線至代管的 IP2Location.io MCP 伺服器,建議使用此方式。
您可以透過以下任一方式連線:
- 直接 HTTP 連線:您的 MCP 用戶端支援遠端(可串流 HTTP)MCP 伺服器。不需要額外軟體。
- 透過
npx:您的 MCP 用戶端僅支援本機 (stdio) 伺服器。此方式會使用mcp-remote套件作為橋接,連線至代管伺服器。
您需要:
- 相容於 MCP 的用戶端,例如 Claude Desktop
- IP2Location.io API 金鑰
- Node.js /
npx(僅適用於npx連線方式)
本機 MCP 伺服器
若要在本機執行 MCP 伺服器,請使用此選項。
您需要:
- Python 3.13 或更新版本
uv- 相容於 MCP 的用戶端,例如 Claude Desktop
- IP2Location.io API 金鑰
您可以註冊免費的 IP2Location.io API 金鑰。Free 方案每月最多提供 50,000 次 IP Geolocation API 查詢。
底層的 IP2Location.io REST API 也支援有限的免金鑰存取,每天最多 1,000 次查詢。對於此 MCP 伺服器,建議設定 API 金鑰,以下設定範例也會使用 API 金鑰。
設定
您可以透過以下任一方式在 Claude Desktop 中使用此 MCP 伺服器:
- 雲端代管的 MCP 伺服器:若要直接連線至代管的 IP2Location.io MCP 伺服器,建議使用此方式。
- 本機 MCP 伺服器:若要下載原始 MCP 伺服器並在自己的電腦上執行,請使用此方式。
選項 1:雲端代管的 MCP 伺服器
請依照以下步驟,將 Claude Desktop 連線至代管的 IP2Location.io MCP 伺服器。
- 確認已安裝 Claude Desktop。如果尚未安裝,請從 此處 下載 Windows 和 macOS 版本,或 Linux 使用者請參閱此指南。
- 使用您選擇的編輯器開啟
claude_desktop_config.json檔案。如果您尚未建立該檔案,請參閱此指南。 - 根據您想要的連線方式,加入以下其中一種設定。
方法 A:直接 HTTP 連線
如果您的 MCP 用戶端支援透過 HTTP 連線至遠端伺服器,請使用此方式。不需要 Node.js 或 npx。
{
"mcpServers": {
"ip2location": {
"type": "http",
"url": "https://mcp.ip2location.io/",
"headers": {
"X-API-Key": "YOUR_API_KEY"
}
}
}
}
如果您的用戶端是透過命令列設定,例如 Claude Code,您可以使用以下指令新增伺服器:
claude mcp add --transport http ip2location https://mcp.ip2location.io/ --header "X-API-Key: YOUR_API_KEY"
方法 B:透過 npx 連線
如果您的 MCP 用戶端僅支援本機 (stdio) 伺服器,請使用此方式。mcp-remote 套件會在本機執行,並將請求轉送至代管伺服器。
{
"mcpServers": {
"ip2location": {
"command": "npx",
"args": [
"-y",
"mcp-remote@latest",
"https://mcp.ip2location.io/",
"--header",
"X-API-Key:YOUR_API_KEY"
]
}
}
}
- 將
YOUR_API_KEY替換為您實際的 IP2Location.io API 金鑰。若要取得 API 金鑰,請登入控制面板。 - 儲存變更後重新啟動 Claude Desktop,您應該會在
Connectors選單中看到 MCP 伺服器。
選項 2:本機 MCP 伺服器
如果您偏好在本機執行 MCP 伺服器,請依照以下步驟操作。
- 設定
uv套件管理員。您可以參閱指南進行設定。 - 確認已安裝 Claude Desktop。如果尚未安裝,請從 此處 下載 Windows 和 macOS 版本,或 Linux 使用者請參閱此指南。
- 使用您選擇的編輯器開啟
claude_desktop_config.json檔案。如果您尚未建立該檔案,請參閱此指南。 - 將以下內容加入
claude_desktop_config.json:
{
"mcpServers": {
"ip2locationio": {
"command": "uvx",
"args": [
"mcp-ip2location-io"
],
"env": {
"IP2LOCATION_API_KEY": "<YOUR API key HERE>"
}
}
}
}
- 若要取得 API 金鑰,請登入控制面板。將上述範例中的
<YOUR API key HERE>替換為您實際的 API 金鑰。 - 儲存變更後重新啟動 Claude Desktop,您應該會在
Connectors選單中看到它。
框架整合
也可以透過 Python 代理程式框架使用 MCP 伺服器。以下範例會透過 HTTP 連線至代管伺服器。若要改用本機伺服器,請使用 stdio 命令 uvx 和引數 mcp-ip2location-io 進行連線,並將 IP2LOCATION_API_KEY 作為環境變數傳入。
每個範例都會從 IP2LOCATION_API_KEY 環境變數讀取 API 金鑰,因此金鑰不會出現在原始程式碼中。
LangChain
LangChain 在 langchain.mcp 命名空間中內建 MCP 支援,且需要 LangChain 1.4 或更新版本。
pip install "langchain[mcp]" langchain-anthropic
import asyncio
import os
from fastmcp.client.transports import StreamableHttpTransport
from langchain.agents import create_agent
from langchain.mcp import MCPAdapter
async def main():
transport = StreamableHttpTransport(
"https://mcp.ip2location.io/",
headers={"X-API-Key": os.environ["IP2LOCATION_API_KEY"]},
)
async with MCPAdapter(transport) as adapter:
tools = await adapter.list_tools()
agent = create_agent("anthropic:claude-sonnet-5", tools)
result = await agent.ainvoke({"messages": "Where is 8.8.8.8 located?"})
print(result["messages"][-1].content)
if __name__ == "__main__":
asyncio.run(main())
MCPAdapter 可直接接受伺服器 URL,但此處會傳入 StreamableHttpTransport 物件,以便設定 X-API-Key 標頭。
LlamaIndex
pip install llama-index-tools-mcp llama-index-llms-openai
import asyncio
import os
from llama_index.core.agent.workflow import FunctionAgent
from llama_index.llms.openai import OpenAI
from llama_index.tools.mcp import BasicMCPClient, McpToolSpec
async def main():
client = BasicMCPClient(
"https://mcp.ip2location.io/",
headers={"X-API-Key": os.environ["IP2LOCATION_API_KEY"]},
)
tools = await McpToolSpec(client=client).to_tool_list_async()
agent = FunctionAgent(
tools=tools,
llm=OpenAI(model="gpt-5-mini"),
system_prompt="You are a helpful assistant that looks up IP addresses.",
)
response = await agent.run("Where is 8.8.8.8 located?")
print(response)
if __name__ == "__main__":
asyncio.run(main())
CrewAI
CrewAI 會從代理程式的 mcps 欄位讀取 MCP 伺服器。除了 CrewAI 之外,還需要安裝 mcp 套件。
pip install crewai mcp
import os
from crewai import Agent, Crew, Process, Task
from crewai.mcp import MCPServerHTTP
ip_agent = Agent(
role="IP Intelligence Analyst",
goal="Look up geolocation and network information for an IP address.",
backstory="An analyst who checks IP addresses against IP2Location.io.",
mcps=[
MCPServerHTTP(
url="https://mcp.ip2location.io/",
headers={"X-API-Key": os.environ["IP2LOCATION_API_KEY"]},
)
],
)
task = Task(
description="Find the geolocation of 8.8.8.8 and summarize the result.",
expected_output="A short summary of the IP address location and network data.",
agent=ip_agent,
)
crew = Crew(agents=[ip_agent], tasks=[task], process=Process.sequential)
print(crew.kickoff())
在不支援 mcps 欄位的 CrewAI 版本中,請安裝 crewai-tools[mcp],並改用 crewai_tools 中的 MCPServerAdapter 包裝伺服器。
使用方式
連線 MCP 伺服器後,使用自然語言向 MCP 用戶端詢問 IPv4 或 IPv6 位址相關問題。 只要在 Claude Desktop 的聊天中輸入您的 IP 查詢即可。
IP 地理位置
Where is the location of (IP)?
Where is (IP) located?
What is the latitude and longitude of (IP)?
例如,以下是 IP 8.8.8.8 的查詢結果:

在 Claude Desktop 中,模型會根據 IP2Location.io MCP 伺服器傳回的結果自動產生輸出。
Proxy 與安全性查詢
視所使用的 IP2Location.io 方案而定:
Is this IP address a proxy: 8.8.8.8?
多個 IP 位址
您也可以使用 IP2Location.io Bulk IP Geolocation API 查詢多個 IP 位址。
Look up 8.8.8.8 8.8.6.6 9.9.9.9
MCP 伺服器會偵測多個 IP 位址,並在可行時將其傳送至 IP2Location.io Bulk API。
IP 位址可以用逗號、空格或換行分隔。
[!NOTE]
使用 IP2Location.io Bulk IP Geolocation API 需要符合資格的付費方案。
環境變數
IP2LOCATION_API_KEY
您的 IP2Location.io API 金鑰 IP2LOCATION_API_KEY。
Free 方案目前每月最多提供 50,000 次 IP Geolocation API 查詢,並可存取基本 IP 資訊。
付費方案提供更高的查詢額度及額外屬性。
您可以註冊免費 API 金鑰,或訂閱更高級的方案以取得完整的 geo-ip 資料。
請勿將 API 金鑰提交至公開的 Git 儲存庫。
MCP 工具
get_geolocation
說明
- 擷取指定 IP 位址或一批 IP 位址的地理位置資料。協助使用者取得任何 IPv4 或 IPv6 位址的詳細資訊,例如國家、地區、城市、緯度、經度、ZIP code、時區、ASN 和 Proxy 資訊。偵測到多個 IP 時,會自動將請求轉送至 IP2Location.io Bulk API,以有效率地處理。
引數
ip(str):一個 IPv4 或 IPv6 位址,或以逗號、空格或換行分隔的多個 IP 位址。
單一 IP 範例:
8.8.8.8
多個 IP 範例:
1.1.1.1, 8.8.8.8, 9.9.9.9
傳回值 包含地理位置資料的 JSON 字串。如果查詢多個 IP,則會傳回 JSON 物件,其中每個鍵都是一個 IP 位址,並對應至該位址的資料。
依據您的 API 方案,傳回的資訊可能包括:
| 類別 | 可能包含的資訊 |
|---|---|
| 位置與地理資訊 | 國家、地區、行政區、城市、ZIP code、緯度、經度、時區 |
| 網路與連線 | ASN、ISP、網域、網路速度、IDD 代碼、區碼、位址類型、使用類型 |
| Autonomous System | ASN、AS 名稱,以及在支援的方案中提供的 AS 網域、AS CIDR 和 AS 使用類型 |
| 行動網路 | MCC、MNC、行動品牌 |
| 貨幣與語言 | 貨幣代碼/名稱/符號及語言資訊 |
| Proxy 與安全性 | Proxy 狀態/類型、供應商、最後出現時間、威脅資訊及詐欺分數 |
| 其他資料 | IAB 類別、天氣資訊、海拔、人口及其他依方案而異的資料 |
如果單一 IP 請求失敗或 IP 無效,工具會以字串形式傳回錯誤訊息。對於大量請求,個別 IP 若查詢失敗,會傳回對應至該 IP 位址的錯誤物件,不會導致整批請求失敗。
常見問題
可以推薦免費的 IP 地理位置服務嗎?
可以。IP2Location.com 和 IP2Location.io 都提供免費存取或免費方案。
IP2Location.io
IP2Location.io 提供適用於 IP 地理位置和基本網路查詢的 Free 方案。
Free 方案每月最多包含 50,000 次 IP Geolocation API 查詢,並提供以下基本資訊:
- IP 位址
- 國家
- 地區
- 城市
- ZIP/郵遞區號
- 緯度和經度
- 時區
- ASN
- AS 名稱
- 基本 Proxy 偵測
IP2Location.io REST API 也可在不使用 API 金鑰的情況下查詢,但使用量有限,每天最多 1,000 次請求。
Free 方案需要標示來源。請查看 IP2Location.io 定價頁面,瞭解目前的限制和條件。
若 MCP 應用程式需要透過 AI 用戶端直接取得地理位置和網路資訊,此儲存庫提供 IP2Location.io 的 MCP 介面。
IP2Location.com LITE
IP2Location LITE 提供免費的 IP 地理位置資料庫,開發人員可以下載並直接整合至應用程式。視資料庫版本而定,可提供國家、地區、城市、座標、ZIP code、時區、ISP 和網域詳細資訊等資料。
由於資料庫可以在本機代管和查詢,IP2Location LITE 特別適合不想依賴外部 API 請求的開發人員。它提供多種格式,並支援 IPv4 和 IPv6 資料。
對於尋找免費本機代管 IP 地理位置解決方案的開發人員而言,IP2Location LITE 是很好的起點。
什麼是 IP 地理位置 API 和服務?
IP 地理位置 API 會將 IPv4 或 IPv6 位址轉換為地理位置和網路資訊。
例如,應用程式可以傳送:
8.8.8.8
並取得以下資訊:
- 國家
- 地區或州
- 城市
- ZIP/郵遞區號
- 緯度和經度
- 時區
- ASN
- ISP
- 網域
- 網路使用類型
- Proxy 資訊
實際欄位取決於服務和訂閱等級。
IP 地理位置 API 的常見用途
IP 地理定位可用於:
- 網站和應用程式在地化
- 區域內容選擇
- 流量分析
- 網路疑難排解
- 安全調查
- 詐欺風險分析
- 登入和驗證情境
- 伺服器記錄資料豐富化
- IP 位址研究
此 MCP 伺服器讓使用者透過自然語言提示進行這些查詢,無須手動建構 REST API 請求。
可以追蹤 IP 位址嗎?
應用程式可以隨時間記錄 IP 位址,並以地理定位和網路資料豐富這些記錄。
例如,安全應用程式可能會記錄登入事件中的 IP 位址,並使用 IP 情資服務識別:
- 大致的國家或城市
- ASN
- ISP
- 網路營運商
- Proxy 狀態
- 網路或地理區域的變化
這有助於調查流量模式或異常網路活動。
然而,IP 地理定位並非精確的人員或裝置追蹤。
IP 位址可能屬於:
- 共用的家庭連線
- 企業閘道
- 行動電信業者
- VPN
- Proxy
- 雲端服務供應商
- 資料中心
- 多位使用者共用的 NAT 閘道
IP 地理定位服務傳回的緯度和經度是約略的地理座標,不應解讀為 GPS 座標、街道地址,或個人實際所在位置的證明。
此 MCP 伺服器會查詢 IP 位址,但本身不會持續監控或追蹤 IP 位址。
我可以將 IP2Location.io 用作「我的 IP 位址」API 嗎?
可以,IP2Location.io REST API 支援這類用途。
一般而言,會將 IP 位址傳遞給 API:
?ip=8.8.8.8
如果直接向 IP2Location.io REST API 發出請求時省略 ip 參數,API 可以使用與傳入請求相關聯的 IP 位址進行查詢。
這適用於需要判定發出 API 請求之公用 IP 位址相關資訊的應用程式。
「我的 IP」資料通常包括:
- 公用 IP 位址
- 國家
- 區域
- 城市
- 座標
- 郵遞區號
- 時區
- ASN
此儲存庫中的 get_geolocation MCP 工具需要以 IP 位址作為引數,因此 MCP 的使用方式主要是查詢對話中提供的 IP 位址。
哪些工具最適合查詢 ASN 和 IP 位址?
最適合的工具取決於您需要的資訊。
IP2Location.io
如果您需要透過同一次查詢取得 ASN 資訊和 IP 地理定位,IP2Location.io 就很實用。
基本查詢資訊包括:
- ASN
- 自治系統名稱
較高階的 IP2Location.io 資料還可包括:
- AS 編號
- AS 名稱
- AS 網域
- AS CIDR
- AS 使用類型
透過此 MCP 伺服器,您可以詢問:
What is the ASN of 8.8.8.8?
或:
Tell me who operates the network for 8.8.8.8 and where the IP is located.
RDAP 和 WHOIS
當您需要 IP 位址區塊和組織的註冊資訊時,RDAP 和 WHOIS 服務很實用。
這些服務特別適合用來識別與某個 IP 範圍相關聯的區域網際網路註冊管理機構記錄。
BGP 工具
當您需要以下資訊時,BGP looking glass 和路由分析服務更為合適:
- 路由公告
- 前綴
- BGP 路徑
- 對等互連
- 路由變更
- 目前公告某個網路的 ASN
IP 情資 API
當應用程式需要結合多個資料集的結構化資訊時,IP 情資服務更為合適,例如:
- 地理定位
- ASN
- ISP
- Proxy 偵測
- VPN 偵測
- 網路分類
- 安全資料
對於希望在同一工作流程中取得地理定位和 ASN 資訊的 MCP 使用者,此專案提供了方便的 IP2Location.io 介面。
了解 ASN 查詢
**自治系統編號(ASN)**用來識別自治系統,也就是依照共同路由政策運作的網路或 IP 前綴集合。
具有 ASN 的組織包括:
- 網際網路服務供應商
- 雲端主機代管供應商
- 內容傳遞網路
- 大學
- 大型企業
- 電信公司
調查 IP 時,ASN 資訊很有用,因為它可以揭示負責路由該位址的網路。
例如:
8.8.8.8
與以下項目相關聯:
ASN: 15169
AS: Google LLC
ASN 查詢常用於:
- 網路疑難排解
- 安全調查
- 流量分析
- 識別主機代管供應商
- 依網路將流量分組
- 調查可疑 IP 位址
IP 地理定位的準確度與限制
IP 地理定位會根據網路和 IP 配置資訊提供估計的地理位置。
不應將其視為使用者或裝置的確切實際位置。
以下因素可能影響準確度:
- VPN
- Proxy 伺服器
- 行動網路
- 企業網路
- 電信級 NAT
- 衛星連線
- 雲端基礎架構
- ISP 路由和位址配置變更
國家層級的結果通常比精確的城市或座標層級結果更可靠。
請將 IP 地理定位視為網路情境資訊,而非精確的實際位置追蹤。
IP2Location.io 方案
傳回的資訊量取決於 IP2Location.io 方案。
Free 方案提供基本地理定位、基本 ASN 資訊和基本 Proxy 偵測。
較高階的方案可提供其他資訊,例如:
- ISP
- 網域
- 網路速度
- 使用類型
- 行動網路資訊
- 詳細的自治系統資訊
- 詳細的 Proxy 資訊
- VPN 偵測
- Tor 偵測
- 資料中心偵測
- 威脅資訊
- 詐欺分數
- 其他地理定位屬性
如需最新的查詢限制、欄位和定價,請參閱:
資源
授權條款
請參閱 LICENSE.TXT 檔案。