使用说明
项目简介
本项目 'mcp-kai' 是一个 MCP 服务器的实现,旨在为大型语言模型 (LLM) 提供访问印尼 KRL 通勤铁路系统数据的能力。通过 MCP 协议,LLM 可以调用此服务器提供的工具,查询车站列表、列车时刻表、列车线路,甚至进行模拟购票和获取票务二维码。
主要功能点
- 车站列表查询: 获取所有 KRL 车站的名称和 ID。
- 列车时刻表查询: 根据出发车站和时间范围查询列车时刻表。
- 列车线路查询: 根据列车 ID 查询列车途经的所有车站。
- 模拟购票: 模拟购买火车票,提供票务信息和唯一的票务 ID。
- 生成票务二维码: 为模拟购买的火车票生成二维码。
- 查询票务状态: 根据票务 ID 查询票务状态(模拟状态)。
安装步骤
-
克隆仓库:
git clone [email protected]:adityaputra11/mcp-kai.git cd mcp-kai -
安装依赖 (如果需要): 虽然仓库信息中没有明确提及,但根据 'server.ts' 中的 'import' 语句,可能需要安装依赖。建议检查 'package.json' 或 'package-lock.json' 文件,如果存在,请运行 'npm install' 或 'yarn install' 安装依赖。如果不存在,并且运行 'server.ts' 时报错缺少依赖,请根据错误提示安装相应的依赖包,例如:
npm install @modelcontextprotocol/sdk zod axios uuid qrcode tsx
服务器配置
要将此 MCP 服务器配置到 MCP 客户端,您需要提供以下 JSON 配置信息。请注意,以下配置假设 'server.ts' 文件位于 '/[YourDirectory]/mcp-kai/' 目录下,并且您使用 'tsx' 运行 TypeScript 代码。请根据您的实际目录结构和运行环境调整路径。
{ "mcpServers": { "mcp-kai": { "command": "npx", "args": [ "tsx", "/[YourDirectory]/mcp-kai/server.ts" ] } } }
配置参数说明:
- '"mcpServers"': MCP 服务器配置的根节点。
- '"mcp-kai"': 您为此 MCP 服务器定义的名称,可以自定义,将在 MCP 客户端中用于标识此服务器。
- '"command"': 运行 MCP 服务器的命令,这里使用 'npx' 来运行本地安装的 'tsx'。
- '"args"': 传递给 'command' 的参数数组:
- '"tsx"': 用于运行 TypeScript 代码的工具。
- '"/[YourDirectory]/mcp-kai/server.ts"': 请务必替换 '/[YourDirectory]' 为 'mcp-kai' 仓库在您本地文件系统中的实际父目录的路径。 例如,如果 'mcp-kai' 仓库位于 '/home/user/projects/mcp-kai',则应修改为 '"/home/user/projects/mcp-kai/server.ts"'。
请注意: '"args"' 中的路径必须是 MCP 服务器能够访问到的绝对路径或相对路径。建议使用绝对路径以避免路径问题。
基本使用方法
此 MCP 服务器设计为与 LLM 客户端配合使用。LLM 客户端会通过 MCP 协议与此服务器通信,并调用服务器提供的工具来获取 KRL 相关信息。
您无法直接手动调用此服务器的工具。您需要使用支持 MCP 协议的 LLM 客户端,配置上述服务器信息,然后通过自然语言指令指示 LLM 使用相应的工具。
例如,您可以指示 LLM "查询所有 KRL 车站列表" 或 "帮我查询从 Jakarta Kota 站到 Bogor 站下午 3 点到 4 点的列车时刻表"。LLM 客户端会解析您的指令,并根据配置调用 'mcp-kai' 服务器的相应工具,并将结果返回给您。
重要提示: 本项目中的购票和票务状态功能为模拟实现 (Mock),不涉及真实的 KRL 购票系统。生成的票务信息和二维码仅为演示目的。
信息
分类
网页与API