项目介绍
MCPKG - 模型上下文协议知识图谱
MCPKG 是一个通过模型上下文协议(MCP)暴露的知识图谱系统,用 Go 语言实现。它提供了一种简单而强大的方式来存储、管理和查询以主语-谓语-宾语三元组形式存在的语义信息。
特性
- 用于存储结构化信息的有向图实现
- 支持创建和查询语义三元组
- 通过序列化实现持久化存储
- 提供 MCP 服务器接口进行编程访问
- 自定义 URI 格式进行图查询
- 为并发使用实现线程安全
组件
知识图谱(KG)
核心数据结构:
- 将实体存储为节点
- 将关系表示为谓语(边)
- 提供插入和查询三元组的方法
- 支持序列化和反序列化
- 使用读写互斥锁确保并发安全
MCP 服务器
接口层:
- 将知识图谱作为 MCP 服务器暴露
- 提供插入三元组的工具
- 通过 URI 格式支持图查询
- 实现无状态设计以提高可靠性
使用方法
插入信息
使用带有主语、谓语和宾语参数的 insert_triple 工具将信息添加到图中。
查询信息
使用 graph:// URI 格式查找实体之间的关系。
依赖项
- Go 1.24+
- github.com/mark3labs/mcp-go
- gonum.org/v1/gonum
- github.com/stretchr/testify (用于测试)
许可证
MIT