MCP数据存储服务器
用于Google Cloud Datastore的MCP(模型上下文协议)服务器,提供简单的查询功能。
特性
- 列出种类:获取数据存储中所有可用的实体类型(表)
- 获取实体:按键检索特定实体
- 查询实体:带分页的基本查询
- 筛选实体:对任何字段(包括关键字段)进行简单的相等性过滤
- 计数实体:使用可选筛选对某一类型中的实体进行计数
设置
- 安装依赖项:
npm install- 设置身份验证:
- 集 GOOGLE_CLOUD_PROJECT 环境变量 - 集 GOOGLE_APPLICATION_CREDENTIALS 指向您的服务帐户密钥文件 - 或使用应用程序默认凭据(ADC)
- 构建项目:
npm run build- 运行服务器:
npm start可用工具
datastore_list_kinds
列出数据存储中所有可用的实体类型。
datastore_get
按实体的键获取实体。
kind:实体类型key:实体密钥(名称或ID)parent:父密钥(可选)
datastore_query
查询具有可选分页的实体。
kind:要查询的实体类型limit:最大结果(默认值:100)offset:要跳过的结果(默认值:0)
datastore_filter
按字段相等性过滤实体。
kind:要查询的实体类型field:要筛选的字段名(包括__key__或key)value:值要完全匹配limit:最大结果(默认值:100)
datastore_count
统计具有可选过滤功能的实体种类。
kind:要计算的实体类型field:要筛选的字段名(可选)value:要完全匹配的值(如果提供了字段,则为必填项)
例子
// List kinds
{"name": "datastore_list_kinds", "arguments": {}}
// Get entity
{"name": "datastore_get", "arguments": {"kind": "User", "key": "12345"}}
// Query with pagination
{"name": "datastore_query", "arguments": {"kind": "User", "limit": 10}}
// Filter by field
{"name": "datastore_filter", "arguments": {"kind": "User", "field": "status", "value": "active"}}
// Filter by key
{"name": "datastore_filter", "arguments": {"kind": "User", "field": "__key__", "value": "12345"}}
// Count all entities
{"name": "datastore_count", "arguments": {"kind": "User"}}
// Count with filter
{"name": "datastore_count", "arguments": {"kind": "User", "field": "status", "value": "active"}}