haksnbot地图
为AI代理提供持久位置存储的MCP(模型上下文协议)服务器。使用SQLite进行全文搜索,以高效存储和检索具有坐标、标签和空间查询的命名位置。
特性
- 指定地点 -使用唯一名称存储位置(例如,“spawn”、“my_base”、“nether_hub”)
- 完整坐标 -X、Y、Z,带尺寸支持(外周、下周、末端)
- 标签系统 -用灵活的标签组织位置(例如“农场”、“公共”、“危险”)
- 全文搜索 -使用FTS5按名称、描述或标签查找位置
- 空间查询 -查找最近的位置,在半径内搜索,计算距离
- 更抽象的数学 -转换上世界和下世界之间的坐标(÷8或×8)
安装
git clone https://github.com/haksndot/haksnbot-map.git
cd haksnbot-map
npm install使用Claude代码
添加到您的Claude Code MCP设置中(~/.claude/settings.json):
{
"mcpServers": {
"map": {
"command": "node",
"args": ["/path/to/haksnbot-map/src/index.js"]
}
}
}配置
数据库路径可以通过环境变量设置:
{
"mcpServers": {
"map": {
"command": "node",
"args": ["/path/to/haksnbot-map/src/index.js"],
"env": {
"MAP_DB_PATH": "/path/to/locations.db"
}
}
}
}如果未设置,则默认为 locations.db 在包目录中。
可用工具
核心业务
| 工具 | 说明 |
|---|---|
save_location | 使用坐标、尺寸、描述、标记和所有者保存命名位置 |
get_location | 按名称检索特定位置 |
list_locations | 列出所有具有可选维度/所有者筛选的位置 |
delete_location | 删除已保存的位置 |
搜索和标签
| 工具 | 说明 |
|---|---|
search_locations | 在名称、描述和标签之间进行全文搜索 |
find_by_tags | 查找具有特定标签的位置(匹配全部或任何位置) |
list_tags | 获取所有具有使用次数的唯一标签 |
add_tags | 将标签添加到现有位置 |
remove_tags | 从某个位置删除标签 |
空间查询
| 工具 | 说明 |
|---|---|
get_distance | 计算两点之间的距离(支持名称或原始坐标) |
find_nearest | 找到离一点最近的N个位置 |
find_in_radius | 查找指定半径内的所有位置 |
get_nether_coords | 转换世界和地狱之间的坐标 |
统计
| 工具 | 说明 |
|---|---|
get_location_stats | 获取概述:总位置、按维度、按所有者、顶部标签 |
位置结构
每个位置包含:
- 名字 -位置的唯一标识符(必填,不区分大小写)
- x、 y,z -坐标(必填)
- 维度 -overworld、neather或end(默认值:overworld)
- 描述 -这是什么地方
- 标签 -分类标签阵列(例如。,
["farm", "public", "wheat"]) - 所有者 -谁保存了此位置(玩家姓名)
- created_at / updated_at -时间戳
例子
> Save my base at coordinates 100, 64, -200
> Where is the nether hub?
> What locations are near spawn?
> Find all public farms
> How far is it from my base to the end portal?
> What are the nether coordinates for the witch farm?需求
- Node.js 18+
依赖项
- 更好平方3 -SQLite绑定
- @模型上下文协议/sdk -MCP服务器SDK
相关项目
- haksnbot头脑 -使用Claude Agent SDK的自主Minecraft机器人
- haksnbot工具 -Minecraft MCP工具
- haksnbot管理员 -服务器管理MCP工具
- haksnbot内存 -持久内存存储
许可证
麻省理工学院
