Firebase Docs MCP Server Setup

Firebase Docs MCP Server Setup

这是一个示例,展示了如何将 Firebase 文档用作 MCP 服务器(包括索引文档)。

nohe427

开发者工具
访问服务器

README

Firebase 文档 MCP 服务器设置

目录结构

docs-mcp

对应于 Firebase 文档的索引器。这是一个 Go 项目,用于索引包含在列出的文件路径中的 Firebase 文档。

docs-mcp-server

这是模型上下文协议服务器,通过 stdio 传输提供内容。

genkit-mcp-tester

这是 MCP 客户端的 Genkit 实现,用于测试 docs-mcp-server。

如何使用

首先进行索引

  1. 设置 API 密钥。我们正在使用 Gemini 嵌入模型来处理文档,因此需要从 AI Studio 获取 API 密钥。 要设置 API 密钥,请在终端中调用 export genaikey="APIKEY"

  2. 确保输出目录为空。 我们正在将文件写入您的主目录中名为 .indexResp 的文件夹中。 当 go 从 Firebase 文档站点获取文档时,它会将文件以 markdown 格式写入磁盘,并将它们索引到此目录中的 SQL lite 数据库中。 如果索引失败,它会执行重试策略以将文档重新索引为 markdown 格式。

  3. docs-mcp 文件夹中,调用 go run . 这将启动对 main.go 文件中第 291 行附近列出的文件进行索引的过程。

测试索引器

  1. 设置 API 密钥。我们正在使用 Gemini 嵌入模型来处理文档,因此需要从 AI Studio 获取 API 密钥。 要设置 API 密钥,请在终端中调用 export genaikey="APIKEY"

  2. 切换到 docs-mcp-server 文件夹。

  3. 将索引的数据库复制到本地 docs-mcp-server 文件夹。 这可以通过调用 cp $HOME/.indexResp/db.sqlite . 来完成。

  4. 安装依赖项并构建项目。 npm ci 然后 npm run build。 构建项目后,您可以通过调用 npm run build && npx @modelcontextprotocol/inspector node build/index.js 来测试项目。 这将启动检查器,并应打印一个 URL,供您查看 STDIO 服务器。

  5. 单击检查器视图中的“连接”,然后单击“工具”->“列出工具”->“find-firebase-doc”,然后输入您要使用的请求。 注意: 作者在使用内置于 VSCode 的终端运行此步骤时遇到了问题,因此如果您遇到类似问题,请尝试系统终端。

使用 Genkit 进行测试

  1. 通过更改 embedding.ts 中的这一行代码来设置代码中的 API 密钥: const genAiKey = process.env.genaikey || ""; 改为 const genAiKey = process.env.genaikey || "MYAPIKEY";

  2. 切换到 genkit-mcp-tester 目录。

  3. 将索引的数据库复制到本地 genkit-mcp-tester 文件夹。 这可以通过调用 cp $HOME/.indexResp/db.sqlite . 来完成。

  4. 安装依赖项并构建项目。 npm ci 然后 npm run build。 构建项目后,您可以通过调用 npx genkit start -- npx tsx --watch src/index.ts 来测试项目。 这将启动 Genkit DevUI,您可以在其中直接与流程和工具进行交互。 打开 DevUI,通常是 http://localhost:4000,然后访问“工具”-> find-firebase-doc/find-firebase-doc 工具并在此处发出请求。 您可以看到该请求随后返回我们在 modelcontextprotocol/inspector 中看到的结果。

推荐服务器

Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
MCP Package Docs Server

MCP Package Docs Server

促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。

精选
本地
TypeScript
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
@kazuph/mcp-taskmanager

@kazuph/mcp-taskmanager

用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。

精选
本地
JavaScript
mermaid-mcp-server

mermaid-mcp-server

一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。

精选
JavaScript
Jira-Context-MCP

Jira-Context-MCP

MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

精选
TypeScript
Linear MCP Server

Linear MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

精选
JavaScript
Sequential Thinking MCP Server

Sequential Thinking MCP Server

这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。

精选
Python
Curri MCP Server

Curri MCP Server

通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。

官方
本地
JavaScript