印度尼西亚海关关税和Hascode API的MCP服务器示例
此存储库提供了一个示例实现 模型上下文协议(MCP) 服务器,专为教育用途而定制 印尼海关关税数据 和 Hascode API集成该项目演示了如何构建一个功能强大的MCP服务器,该服务器连接到Hascode等API,以获取AI模型的关税和HS编码信息。
什么是MCP?
MCP(模型上下文协议)是一个开放标准,旨在为大型语言模型(LLM)提供结构化上下文。您可以将MCP视为AI的USB-C端口,它提供了一种标准化的方式将模型插入各种外部数据源,例如 海关关税API, HS编码查询,或 物流数据库.
关键利益
- 为以下服务预先构建的集成 Hascode API,提供实时HS编码和占空比信息
- 灵活地跨不同的LLM提供商(OpenAI、Anthropic等)工作
- 一个干净的抽象层,用于安全访问受监管的数据,如进出口关税结构
架构概述
MCP使用支持多个数据接入点的客户端-服务器架构:
- MCP主机:像Claude Desktop这样的人工智能工具或要求结构化海关数据的企业助理
- MCP客户端:处理与服务器1:1通信的协议中介
- MCP服务器:暴露数据和功能的轻量级组件,例如通过API获取印度尼西亚关税
- 数据源:包括本地文件(如PDF关税表)和远程API,如Hascode或海关数据库
MCP核心概念
MCP服务器通常公开三种类型的功能:
- 资源:HS代码数据集、关税表或API响应(例如,特定产品的关税率)
- 工具:LLM可以调用的API函数,以获取更新的海关信息
- 提示:预先配置的模板(例如,“印度尼西亚HS编码8703.23.91.00的进口关税是多少?”)
系统要求
- Python 3.10或更高版本
- MCP SDK 1.2.0或更高版本
uv包管理器
入门指南
安装 uv 程序包管理器
在MacOS/Linux上:
curl -LsSf https://astral.sh/uv/install.sh | sh然后重新启动终端以启用 uv 命令。
项目设置
- 初始化您的MCP项目:
uv init mcp-server
cd mcp-server
uv venv
source .venv/bin/activate # Use .venv\Scripts\activate on Windows
uv add "mcp[cli]" httpx- 创建主服务器文件:
touch main.py示例:与Hascode API集成
在……里面 main.py,您可以使用Hascode定义一个资源来获取关税数据:
import httpx
from mcp import Resource
class HsCodeTariffResource(Resource):
def read(self, hs_code: str):
response = httpx.get(f"https://api.hascode.id/tariff?code={hs_code}")
return response.json()运行服务器
启动服务器:
uv run main.py连接到克劳德桌面
- 安装克劳德桌面
- 在以下位置编辑配置文件:
~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"mcp-server": {
"command": "uv",
"args": [
"--directory",
"/ABSOLUTE/PATH/TO/YOUR/mcp-server",
"run",
"main.py"
]
}
}
}- 重新启动克劳德桌面
故障排除
如果Claude Desktop无法检测到您的服务器:
- 检查配置文件路径和语法
- 对所有目录使用绝对路径
- 确保
uv已安装并工作 - 查看Claude日志以了解连接问题
许可证
该项目根据MIT许可证获得许可。请参阅 许可证 文件以获取更多详细信息。
______________________________________________________________________
