README
🚀 mcp-nhost
mcp-nhost是一个用于与Nhost云项目和服务交互的模型上下文协议(MCP)服务器实现,它通过模型上下文协议为管理Nhost云项目提供统一接口,让您能无缝地与Nhost云服务交互,并提供强大工具来管理和配置项目。
🚀 快速开始
mcp-nhost旨在通过模型上下文协议为管理Nhost云项目提供统一接口,让您可以无缝地与Nhost云服务交互,提供了一套强大的工具来管理和配置项目。
✨ 主要特性
可用工具
以下是当前通过MCP界面公开的工具:
- cloud_get_graphql_schema
- 提供Nhost云平台的GraphQL模式。
- 让您访问用于云管理的查询和突变。
- 获取有关可用查询和突变的信息。
- cloud_graphql_query
- 执行针对Nhost云平台的GraphQL查询和突变。
- 实现项目和组织管理。
- 允许查询和更新项目配置。
- 突变需要在启动服务器时启用。
- local_get_graphql_schema
- 获取本地Nhost开发项目的GraphQL模式。
- 让您访问特定于项目的查询和突变。
- 帮助生成代码以理解可用操作。
- 默认使用“用户”角色,除非另有说明。
- local_graphql_query
- 执行针对本地Nhost开发项目的GraphQL查询。
- 使您可以测试和开发特定于项目的操作。
- 支持查询和突变操作。
- 默认使用“用户”角色,除非另有说明。
- local_get_possible_query mutations
- 获取有关可用查询和突变的信息。
- 显示当前项目的查询和突变选项。
- 帮助您了解项目功能。
- 提供清晰的结构化输出。
安全特性
强化保护层
MCP服务器在设计时考虑了安全性,提供了现有GraphQL权限之外的额外保护层。关键安全功能包括:
- 强制身份验证:对所有请求。
- 基于角色和权限的尊重:根据您现有的授权系统和提供的凭证。
- 查询/突变过滤:进一步限制允许的操作。
精细访问控制
MCP服务器的一个关键安全优势是能够精确指定允许通过的操作,即使对于具有更广泛项目权限的用户也是如此:
[[projects]]
subdomain = "my-blog"
region = "eu-central-1"
pat = "nhp_project_specific_pat"
allow_queries = ["getBlogs", "getComments"]
allow_mutations = ["insertBlog", "insertComment"]
通过上述配置,LLM只能在用户具备更广泛权限的情况下,执行指定的查询和突变操作。
📦 安装指南
要安装mcp-nhost,请运行以下命令:
git clone https://github.com/your-username/mcp-nhost.git
cd mcp-nhost
cargo install --path .
📚 详细文档
配置
在config.toml文件中,您可以指定允许的查询和突变。例如:
[[projects]]
subdomain = "my-blog"
region = "eu-central-1"
pat = "your_project_access_token"
allow_queries = ["getPost", "getComments"]
allow_mutations = ["insertPost", "insertComment"]
客户端配置
对于Cursor,请在config.toml中添加以下内容:
[["projects"]]
subdomain = "my-blog"
region = "eu-central-1"
pat = "your_project_access_token"
allow_queries = ["getPost", "getComments"]
allow_mutations = ["insertPost", "insertComment"]
CLI 使用
运行以下命令查看如何使用CLI:
mcp-nhost --help
路线图
已完成功能
- 安全保护层
- 精细访问控制
- 项目配置支持
计划功能
- 支持更多云提供商
- 增强的错误处理
- 自动化文档生成
如有任何建议或功能请求,请随时打开问题进行讨论。
🤝 贡献
我们欢迎为mcp-nhost做贡献!如果您有任何建议、问题报告或功能请求,请随时打开问题或提交拉取请求。
感谢您的支持与合作!
微信扫一扫