再也不用百度“1英尺等于多少米“了——11种换算工具一网打尽,还能接入大模型
一、单位换算,日常高频但总是靠搜索引擎
做开发的、搞外贸的、写论文的、甚至日常刷个海淘——单位换算无处不在:
- 看美剧里提到"6 feet tall",脑子里得换算成厘米
- 海淘商品标着"2 lb",想知道到底是几斤
- 写代码遇到"256 KB",手算转成字节是多少
- 拿到一组 GPS 坐标,发现偏了几百米——原来是坐标系没对上
每次都要打开搜索引擎搜"1英尺等于多少米",搜完还得翻一下是英制还是美制,效率极低。更别说那些不常见的密度单位(g/cm³ ↔ lb/ft³)或压力单位(psi ↔ bar),连搜索都不一定能找到靠谱答案。
agent.linkedshine.com/tools 的换算工具模块,把这些高频换算需求一网打尽,11 种子工具覆盖数值、物理量、数字存储、地理坐标四大领域。而且每个工具都原生支持 MCP 协议,大模型可以直接调用——这才是重点。

二、工具入口
点击菜单 「换算工具」 即可看到全部 11 个子工具。
三、四大分类,11 种换算工具一览
3.1 数值类
| 工具 | 说明 | 支持的进制 |
|---|---|---|
| 进制转换 | 二进制、八进制、十进制、十六进制互转 | 2/8/10/16 |
输入 255,选十进制 → 十六进制,输出 FF;反过来也行。程序员日常必备。
3.2 物理量类(8 个工具)
| 工具 | 单位数 | 涵盖单位 |
|---|---|---|
| 长度换算 | 12 | 毫米、厘米、米、千米、英寸、英尺、码、英里、里、丈、尺、寸 |
| 重量换算 | 9 | 毫克、克、千克、吨、盎司、磅、斤、两、钱 |
| 温度换算 | 3 | 摄氏度 (°C)、华氏度 (°F)、开尔文 (K) |
| 时间换算 | 8 | 毫秒、秒、分钟、小时、天、周、月、年 |
| 面积换算 | 9 | 平方毫米、平方厘米、平方米、平方公里、公顷、公亩、平方英尺、平方英里、亩 |
| 体积换算 | 10 | 毫升、厘升、分升、升、立方米、立方厘米、立方英尺、立方英寸、美制加仑、英制加仑 |
| 密度换算 | 5 | 千克/立方米、克/立方厘米、克/毫升、千克/升、磅/立方英尺 |
| 压力换算 | 8 | 帕斯卡、千帕、兆帕、巴、标准大气压、psi、毫米汞柱、托 |
亮点:同时覆盖国际单位制(米、千克)、英制(英尺、磅、加仑)和中国传统市制(里、丈、尺、寸、斤、两、钱、亩)。
| 单位 | 换算关系 |
|---|---|
| 1 尺 | = 1/3 米 ≈ 0.3333 米 |
| 1 斤 | = 0.5 千克 |
| 1 亩 | ≈ 666.667 平方米 |
3.3 数字存储类
| 工具 | 单位数 | 涵盖单位 |
|---|---|---|
| 字节换算 | 6 | B、KB、MB、GB、TB、PB |
按 1024 进制(2^10)换算,不是硬盘厂商常用的 1000 进制。
3.4 地理类
| 工具 | 说明 |
|---|---|
| 地理坐标系转换 | WGS84 ↔ GCJ02 ↔ BD09 三种坐标系互转,支持批量 |
搞过地图开发的同学一定懂:GPS 原始坐标(WGS84)放到高德/QQ 地图上会偏移,因为国内地图用的是 GCJ02(火星坐标系);百度地图又额外加了一层加密(BD09)。这个工具一步到位,三系统同时输出。
四、使用步骤
网页端
- 打开 agent.linkedshine.com/tools?module=conversion
- 选择 「换算工具」,点击需要的子工具
- 输入数值 + 选择源单位 / 目标单位
- 结果实时计算,直接复制使用
整个过程纯前端计算,数据不上传服务器。

坐标转换特殊说明
地理坐标系转换为批量模式:每行一个坐标,格式为 经度,纬度(如 116.397428,39.909230),选择源坐标系后一次性输出三种坐标系的结果,保留 6 位小数精度。
五、几个典型场景
场景一:海淘重量换算
美亚上商品标注 2.5 lb,想知道是几斤。打开重量换算,输入 2.5,从 磅(lb) → 斤,结果是 2.2679 斤。
场景二:程序员进制转换
看日志里出现 0xFF,想知道十进制是多少。打开进制转换,十六进制 → 十进制,得出 255。
场景三:地图坐标纠偏
从某数据平台导出了一批 GCJ02 坐标,需要放到 Google 地图上展示(要用 WGS84)。打开地理坐标系转换,粘贴所有坐标行,选 GCJ02 → 输出中取 WGS84 列即可。
场景四:健身数据换算
Apple Watch 显示跑了 5 mi(英里),想知道是多少公里。长度换算:5 mi → km = 8.0467 km。
场景五:存储容量规划
某接口返回文件大小 1048576 B,想知道是几 MB。字节换算:1048576 B → MB = 1 MB。
六、重点:MCP 协议支持——让大模型直接调用换算能力

6.1 什么是 MCP
MCP(Model Context Protocol) 是 Anthropic 推出的开放协议,相当于 AI 应用的"USB-C 接口"。它定义了一套标准,让大模型可以安全、标准化地调用外部工具和数据源。
简单理解:大模型本身不会计算,但通过 MCP 协议,它可以"看到"有哪些工具可用,然后像调用函数一样发送请求,拿到结果后再组织回答。
6.2 MCP Server 端点
换算工具通过统一的 Streamable HTTP 端点暴露:
| 端点 | 方法 | 说明 |
|---|---|---|
POST /api/tools/mcp |
POST | JSON-RPC 请求(initialize、tools/list、tools/call) |
DELETE /api/tools/mcp |
DELETE | 终止会话 |
鉴权方式(三选一):
Authorization: Bearer <api-key>
x-api-key: <api-key>
?apiKey=<api-key>

6.3 按需筛选工具:modules 和 keywords 参数
整个工具集目前有 40+ 个 MCP 工具(涵盖文本、换算、编码、日期、开发、语言等模块)。如果把全部工具一次性暴露给大模型,不仅浪费 context 窗口,还可能让模型在无关工具上"分心"。
因此 MCP 端点提供了两个筛选参数,让你按需获取工具列表。
modules — 按模块筛选
指定要加载的模块,支持模块 ID 或中文名称:
| 值 | 含义 |
|---|---|
conversion 或 换算工具 |
只加载换算类工具 |
text 或 文本工具 |
只加载文本类工具 |
datetime 或 日期时间 |
只加载日期时间工具 |
conversion,text |
同时加载换算和文本工具(逗号分隔) |
keywords — 按关键词搜索
在工具的名称(如 length_convert、温度换算)、标题、描述和关键词标签中搜索匹配项:
| 值 | 匹配结果 |
|---|---|
长度 |
匹配"长度换算"工具 |
坐标,温度 |
匹配"地理坐标系转换"和"温度换算"(逗号分隔) |
WGS84 |
匹配"地理坐标系转换"(命中关键词标签) |
length_convert |
匹配"长度换算"(命中 MCP 工具名) |
温度换算 |
匹配"温度换算"(命中工具名称) |
modules和keywords同时提供时为 AND 逻辑——工具必须同时满足两个条件才会出现。
使用方式
方式一:URL 查询参数(适合 MCP 客户端配置)
直接在 MCP 连接 URL 上附加参数:
https://agent.linkedshine.com/api/tools/mcp?modules=换算工具&keywords=长度,温度
这样大模型 tools/list 时只能看到匹配的换算工具,且只显示长度换算和温度换算。
方式二:JSON-RPC body 参数(适合 API 直接调用)
curl -X POST 'https://agent.linkedshine.com/api/tools/mcp' \
-H "Content-Type: application/json" \
-H "x-api-key: 你的API-KEY" \
-d '{
"jsonrpc":"2.0",
"id":1,
"method":"tools/list",
"params": {
"modules": "换算工具",
"keywords": "坐标,WGS84"
}
}'
返回结果将仅包含"地理坐标系转换"这一个工具。
实战建议
| 使用场景 | 推荐配置 | 效果 |
|---|---|---|
| 只需要换算功能 | ?modules=换算工具 |
11 个换算工具,其他模块不出现 |
| 只做长度和重量换算 | ?modules=换算工具&keywords=长度,重量 |
仅 2 个工具 |
| 坐标数据清洗专用 | ?modules=换算工具&keywords=坐标,WGS84 |
仅坐标系转换工具 |
| 不筛选(默认) | 不带参数 | 全部启用的工具都会列出 |
通过 modules + keywords 的组合,你可以为不同场景的 Agent 精准配置工具集,既省 context 又降低模型选错工具的概率。
6.4 如何让大模型使用换算工具
方式一:通过 CodeBuddy / Claude Desktop 等 MCP 客户端配置
在 MCP 配置文件中添加换算工具服务器。以 CodeBuddy 为例,编辑 mcp.json:
{
"mcpServers": {
"在线小工具": {
"url": "https://agent.linkedshine.com/api/tools/mcp?apiKey=你的API-KEY&modules=换算工具"
}
}
}
配置完成后,你就可以直接对大模型说:
"帮我算一下 168 厘米是多少英尺"
大模型会自动:
- 通过
tools/list发现可用的length_convert工具 - 根据工具的参数 schema(
value: number, from: 'cm' | 'm' | ... , to: 'ft' | 'in' | ...)构造调用 - 发送
tools/call请求,参数为{ value: 168, from: 'cm', to: 'ft' } - 拿到结果
168 厘米 (cm) = 5.5118110236 英尺 (ft),然后以自然语言回复你
"168 厘米约等于 5.51 英尺,也就是 5 英尺 6 英寸左右。"


七、技术实现(给感兴趣的朋友)
7.1 三层架构
整个模块采用清晰的三层架构:
┌─────────────────────────────────────────────┐
│ MCP 适配器层 (mcp/tool-adapters/conversion) │ ← Zod Schema + execute()
├─────────────────────────────────────────────┤
│ 注册层 (registry.ts) │ ← 工具元数据、搜索、按分类过滤
├─────────────────────────────────────────────┤
│ 纯函数层 (processors.ts + geo-coord.ts) │ ← 核心换算逻辑,零副作用
└─────────────────────────────────────────────┘
7.2 核心换算算法
通用单位换算(适用于长度、重量、字节、时间、面积、体积、密度、压力 8 类):
export function convertUnit(value: number, units: UnitDef[], fromId: string, toId: string): number {
const from = units.find(u => u.id === fromId)
const to = units.find(u => u.id === toId)
if (!from || !to) return NaN
return (value * from.toBase) / to.toBase
}
每个单位定义包含一个 toBase 因子(转到基准单位的系数),换算时:源值 × 源到基准因子 ÷ 目标到基准因子。
例如米是基准单位(toBase=1),厘米的 toBase=0.01:
120 cm → m:(120 × 0.01) / 1 = 1.2 m1.2 m → cm:(1.2 × 1) / 0.01 = 120 cm
这种"基准单位中转"的设计,新增一个单位只需加一行数据,不需要写排列组合的换算逻辑。
温度换算:采用"两步法"——先转到摄氏,再转到目标单位,避免 3×3=9 种排列组合。
// Fahrenheit → Celsius → Kelvin
function convertTemperature(value, from, to) {
let celsius
switch (from) {
case 'celsius': celsius = value; break
case 'fahrenheit': celsius = (value - 32) * 5 / 9; break
case 'kelvin': celsius = value - 273.15; break
}
switch (to) {
case 'celsius': return celsius
case 'fahrenheit': return celsius * 9 / 5 + 32
case 'kelvin': return celsius + 273.15
}
}
坐标系转换:移植自经典的 Python CoordTransform 算法,通过非线性三角函数多项式实现 WGS84 ↔ GCJ02 的偏移计算,GCJ02 ↔ BD09 则使用极坐标变换。gcj02ToWgs84 的逆运算尤为巧妙——不是直接反解,而是利用"2 × 原始坐标 - 正向变换结果"逼近 WGS84 真值。
7.3 适配器工厂模式
8 个通用单位换算的 MCP 适配器使用了工厂函数模式,避免代码冗余:
// 每个适配器只需 10 行代码
export const lengthConvertAdapter = createUnitConvertAdapter({
id: 'length-convert',
name: 'length_convert',
description: '长度单位换算...',
units: lengthUnits,
_meta: { modules: 'conversion', keywords: ['长度', '距离', ...] },
})
工厂函数 createUnitConvertAdapter 自动:
- 从
units数组提取单位 ID 生成 Zod enum schema - 提供标准的
execute逻辑(调用convertUnit、格式化输出) - 同时返回
content(人类可读文本)和structuredContent(结构化 JSON)
八、总结
换算工具模块的核心优势:
- 11 种子工具,覆盖 80+ 个不同单位——从程序员日常的进制转换,到普通人海淘的长度/重量换算,再到地图开发的坐标系纠偏,一站式搞定
- 同时支持国际单位、英制和中国市制——丈尺寸、斤两钱、亩,这些传统单位都能换算
- 原生 MCP 协议支持——每个工具都实现了完整的
ToolAdapter接口(含 Zod 参数校验、JSON Schema 输出、结构化数据),大模型可以直接通过 Streamable HTTP 协议调用 - 支持模块筛选——通过
tools/list的modules/keywords参数,可以只暴露换算工具给大模型,避免 context 浪费 - 纯前端 + MCP 双模式——网页端即开即用,API 端给 Agent 无缝集成
MCP 端点:
POST https://agent.linkedshine.com/api/tools/mcp换算工具只是整个工具集的一部分,还有文本工具、编码工具、日期时间、开发工具、语言工具等多个模块,全部支持 MCP 调用。
用得好欢迎点赞收藏,有问题评论区见~
更多免费在线工具 + MCP 集成方案,尽在 agent.linkedshine.com/tools
更多推荐


所有评论(0)