diff --git a/package.json b/package.json index c36fc1175ba..225bf4c4ce5 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "version": "14.25.1", "description": "Command-Line Interface for Firebase", "main": "./lib/index.js", + "mcpName": "io.github.firebase/firebase-mcp", "bin": { "firebase": "./lib/bin/firebase.js" }, diff --git a/scripts/publish.sh b/scripts/publish.sh index 54575e83428..4a38c2b82ee 100755 --- a/scripts/publish.sh +++ b/scripts/publish.sh @@ -120,6 +120,11 @@ if [[ $VERSION != "preview" ]]; then npm --prefix ./scripts/publish/firebase-docker-image install echo "Updated package-lock.json for Docker image." + + echo "Updating server.json for MCP registry..." + . ./scripts/update-server.sh $NEW_VERSION + echo "Updated server.json for MCP registry." + echo "Cleaning up release notes..." rm CHANGELOG.md touch CHANGELOG.md diff --git a/scripts/update-server-json-version.sh b/scripts/update-server-json-version.sh new file mode 100644 index 00000000000..ae6ba6df2f2 --- /dev/null +++ b/scripts/update-server-json-version.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +set -e + +if [ -z "$1" ]; then + echo "Usage: $0 " + exit 1 +fi + +NEW_VERSION=$1 +SERVER_JSON_PATH="src/mcp/server.json" + +awk -v new_version="$NEW_VERSION" ' + BEGIN { in_packages = 0 } + /packages/ { in_packages = 1 } + in_packages && /"version":/ { + sub(/"version": ".*"/, "\"version\": \"" new_version "\"") + } + { print } +' "$SERVER_JSON_PATH" > tmp.json && mv tmp.json "$SERVER_JSON_PATH" + + +echo "Successfully updated firebase-tools version to $NEW_VERSION in $SERVER_JSON_PATH" + diff --git a/src/mcp/server.json b/src/mcp/server.json new file mode 100644 index 00000000000..394803e0bf9 --- /dev/null +++ b/src/mcp/server.json @@ -0,0 +1,23 @@ +{ + "$schema": "https://static.modelcontextprotocol.io/schemas/2025-10-17/server.schema.json", + "name": "io.github.firebase/firebase-mcp", + "description": "A MCP server that provides AI development tools the ability to work with Firebase in your app.", + "repository": { + "url": "https://github.com/firebase/firebase-tools", + "source": "github", + "subfolder": "src/mcp" + }, + "version": "0.3.0", + "packages": [ + { + "registryType": "npm", + "identifier": "firebase-tools", + "runtimeHint": "npx", + "runtimeArguments": [{"type": "positional", "value": "mcp"}], + "version": "14.25.1", + "transport": { + "type": "stdio" + } + } + ] +}