🚗 CarsXE MCP服务器
一个模块化、可扩展的模型上下文协议(MCP)服务器,用于查询和分析来自 CarsXE API,为LLM和聊天机器人提供美观、聊天友好的Markdown输出。
______________________________________________________________________
ℹ️ 什么是CarsXE MCP服务器?
CarsXE MCP服务器是 Node.js/TypeScript 该应用程序公开了一套用于从CarsXE API查询综合车辆数据的工具。它旨在与LLM(如Anthropic Claude、OpenAI GPT等)、聊天机器人和开发工具无缝集成,提供:
- 🧩 干净的模块化代码 对于每个CarsXE端点
- 📝 一致的、富含Markdown的输出 用于聊天/LLM环境
- 🛡️ 稳健的错误处理 以及用户友好的消息
- 🔌 易于扩展 用于新的端点和功能
______________________________________________________________________
✨ 特性
- 🤖 使用Anthropic-Claude根据API数据和用户查询生成全面、专业的答案
- 🚙 查询车辆规格、历史、图像、召回、市场价值等
- 🏷️ 解码车牌和VIN(包括图像的OCR)
- 🛠️ 解码OBD(车载诊断)代码
- 🎨 所有端点都返回优雅的分组表情Markdown
- 🧑💻 模块化代码:类型、API逻辑和格式化程序是分开的,以便于维护
- 🧪 易于运行、测试和扩展
______________________________________________________________________
⚙️ 先决条件
- Node.js v18或更高版本
- npm (附带Node.js)
- CarsXE API钥匙 (在这里买一个)
- _(可选)_ 人类克劳德API密钥 用于高级LLM集成
______________________________________________________________________
📦 安装
- 克隆存储库:
git clone https://github.com/carsxe/carsxe-mcp.git
cd carsxe-mcp- 安装依赖项:
npm install- 设置环境变量:
创建一个名为的文件 .env 在项目根目录中:
CARSXE_API_KEY=your_carsxe_api_key_here______________________________________________________________________
🗂️ 项目结构
carsxe-mcp/
build/ # Compiled JavaScript output (after build)
src/
formatters/ # Markdown/LLM formatters for API responses
tools/ # Tool modules for each CarsXE API endpoint
types/ # TypeScript type definitions for API responses
utils/ # Utility functions (API request logic, etc.)
index.ts # Main MCP server entrypoint (tool registration)
package.json # Project metadata and dependencies
README.md # Project documentation (this file)
tsconfig.json # TypeScript configuration
...______________________________________________________________________
🔑 如何获取和设置CarsXE API密钥
1.️⃣ 步骤1:注册CarsXE帐户
- 首选 CarsXE开发人员仪表板
- 注册免费或付费帐户(选择适合您需求的计划)
2.️⃣ 第2步:获取API密钥
- 登录后,导航到仪表板的“开发人员”部分
- 复制API密钥(它看起来像一个长串的字母和数字)
3.️⃣ 步骤3:在项目中设置API密钥
CARSXE_API_KEY=your_carsxe_api_key_here⚠️ 安全警告: - 永远不要将真正的API密钥提交到公共存储库。 -.env文件仅用于本地开发,应添加到.gitignore. - 将您的API密钥视为密码-保密!
4.️⃣ 步骤4:测试您的密钥
- 运行服务器并尝试任何CarsXE工具(例如,获取车辆规格)
- 如果出现身份验证错误,请双击API密钥和配额
______________________________________________________________________
🖥️ 一步一步:使用CarsXE MCP服务器安装和配置Claude桌面
按照以下步骤设置Claude Desktop并将其连接到本地CarsXE MCP服务器:
1.️⃣ 下载并安装Claude Desktop
- 去找官方 克劳德桌面下载页面
- 下载适用于您的操作系统(macOS、Windows或Linux)的安装程序
- 按照屏幕上的说明安装Claude Desktop
2.️⃣ 建设CarsXE MCP项目
- 打开终端并导航到您的
carsxe-mcp项目目录
- 🚀 运行:
npm run build3.️⃣ 配置Claude Desktop以使用CarsXE MCP服务器
a.打开克劳德桌面设置
- 启动Claude Desktop应用程序
- 点击 文件 在菜单栏中
- 选择 设置
- 在“设置”窗口中,转到 开发者 选项卡(您可能需要滚动或展开高级选项)
- 点击 编辑配置 (或 打开配置文件)
b.编辑配置文件
- 这将打开
claude_desktop_config.json默认文本编辑器中的文件。
- 找到
"mcpServers"部分。如果不存在,请按如下所示添加。
- 为CarsXE添加或更新以下条目:
{
"mcpServers": {
"carsxe": {
"command": "node",
"args": [
"/absolute/path/to/carsxe-mcp/build/index.js",
"--mcp-server-name",
"carsxe"
]
}
}
}- 替换
/absolute/path/to/carsxe-mcp/build/index.js与您构建的实际路径index.js文件。例如:
- 在 macOS 上: /Users/yourname/carsxe-mcp/build/index.js - 在Windows上: C:/Users/yourname/carsxe-mcp/build/index.js
- 提示: 您可以在下面添加多个MCP服务器
"mcpServers"如果你使用多个。
- 保存 打开配置文件并关闭编辑器。
c.重新启动克劳德桌面
- 关闭并重新打开Claude Desktop应用程序以应用新配置。
4.️⃣ 验证CarsXE MCP服务器是否可用
- 重新启动后,打开Claude Desktop。
- 转到工具或插件部分(通常在侧边栏或工具菜单下)。
- 你应该看看 CarsXE 列为可用的MCP服务器/工具。
- 尝试运行CarsXE工具(例如,获取车辆规格)以验证一切正常。
______________________________________________________________________
🛠️ 可用工具和示例提示
下面列出了所有可用的CarsXE工具、它们的参数、预期输出和在Claude Desktop中使用的示例提示。
1. get-vehicle-specs 🚙
- 说明: 通过VIN获取全面的车辆规格
- 参数:
- vin (字符串,必填):17个字符的车辆识别号
- ⚡ 示例提示:
> 获取规格 WBAFR7C57CC811956
- 输出: Markdown格式的车辆规格(年份、品牌、型号、发动机、尺寸、颜色、设备等)
2. decode-vehicle-plate 🏷️
- 说明: 解码车辆牌照以获取VIN和基本信息
- 参数:
- plate (字符串,必填):车牌号 - state (字符串,可选):州缩写(例如CA) - country (字符串,必填,默认值:美国):国家代码
- ⚡ 示例提示:
> 板解码器: 7XER187 CA
- 输出: 解码车辆信息的Markdown摘要(VIN、品牌、型号、年份等)
链式示例
- 印版解码器→ 获取规格:
1. > 板解码器: 7XER187 CA 1. > 获取其规格 - 首先,对车牌进行解码以获取VIN,然后使用VIN获取完整的车辆规格 get-vehicle-specs 工具。
3. international-vin-decoder 🌍
- 说明: 解码国际VIN以获取详细信息
- 参数:
- vin (字符串,必填):17个字符的VIN
- ⚡ 示例提示:
> 获取规格 WF0MXXGBWM8R43240
- 输出: 带有国际车辆详细信息(制造商、规格、排放等)的Markdown
4. get-market-value 💰
- 说明: 通过VIN获取车辆的估计市场价值
- 参数:
- vin (字符串,必填):17个字符的VIN - state (字符串,可选):美国州缩写 - country (字符串,可选):国家代码
- ⚡ 示例提示:
> 市场价值 WBAFR7C57CC811956
- 输出: 带市值细分的Markdown(零售、折价、MSRP等)
5. get-vehicle-history 🕓
- 说明: 按VIN获取全面的车辆历史报告
- 参数:
- vin (字符串,必填):17个字符的VIN - format (字符串,可选):响应格式(json或xml)
- ⚡ 示例提示:
> 车辆历史记录 WBAFR7C57CC811956
- 输出: 带有历史记录的Markdown(垃圾/打捞、保险、品牌、标题、里程表等)
6. get-vehicle-images 🖼️
- 说明: 按品牌、型号和过滤器获取车辆图像
- 参数:
- make (字符串,必填) - model (字符串,必填) - year, trim, color, transparent, angle, photoType, size, license, format (全部可选)
- ⚡ 示例提示:
> 获取a的图像 blue 2018 Toyota Tacoma
- 输出: Markdown最多可包含5张图片(链接、缩略图、详细信息)
7. get-vehicle-recalls 🚨
- 说明: 按VIN获取车辆召回信息
- 参数:
- vin (字符串,必填):17个字符的VIN
- ⚡ 示例提示:
> 获取车辆召回 1C4JJXR64PW696340
- 输出: 带有召回详细信息(日期、描述、风险、补救措施、状态等)的Markdown
8. recognize-plate-image 🏷️
- 说明: 从车辆图像URL中识别和提取车牌
- 参数:
- imageUrl (string,必填):指向车辆牌照图像的直接URL
- ⚡ 示例提示:
> 拿盘子
- 输出: 带有检测到的车牌、置信度评分、边界框、车辆类型等的Markdown。
9. vin-ocr 🔍
- 说明: 使用OCR从车辆图像中提取VIN
- 参数:
- imageUrl (字符串,必填):指向车辆VIN图像的直接URL
- ⚡示例提示:
- > vin ocr
- > vin ocr
- 输出: 带有检测到的VIN、置信度、边界框和候选者的Markdown
10. get-year-make-model 📅
- 说明: 按年份、品牌、型号和可选装饰获取全面的车辆信息
- 参数:
- year (字符串,必填) - make (字符串,必填) - model (字符串,必填) - trim (字符串,可选)
- ⚡ 示例提示:
> 麦克默里堡 Toyota Camry 2020
- 输出: 带有车辆详细信息、颜色、功能、选项和包装的Markdown
11. decode-obd-code 🛠️
- 说明: 解码OBD代码并获取诊断信息
- 参数:
- code (字符串,必填):OBD代码(例如P0115)
- ⚡ 示例提示:
> obd代码 P0115
- 输出: 带有代码、诊断和日期的Markdown
______________________________________________________________________
⚙️ 每种工具的工作原理
- 所有工具 使用通用API请求实用程序(
carsxeApiRequest)使用正确的端点和参数调用CarsXE API。 - TypeScript类型 确保正确的参数和响应处理。
- 使用格式器 将API响应转换为带有表情符号、粗体和项目符号的漂亮分组Markdown,以实现聊天/LLM兼容性。
- 错误处理:如果API调用失败或参数无效,则所有工具都会返回用户友好的错误消息。
______________________________________________________________________
🧩 如何扩展或添加新端点
- 添加响应类型 向
src/types/carsxe.ts. - 添加格式化程序 向
src/formatters/carsxe.ts用于Markdown输出。 - 注册新工具 在……里面
src/index.ts:
- 使用 carsxeApiRequest 具有正确的端点和参数。 - 将响应传递给您的格式化程序。
- 重建项目
- 测试 带有示例数据的新工具。
______________________________________________________________________
📚 支持和参考
对于问题或功能请求,请在存储库上打开问题或联系维护人员。
______________________________________________________________________
