Skip to content

Commit b4a46d9

Browse files
authored
feat: add Init MCP App (#10261)
* feat: add mcpapps experiment flag and helper ### Description - Adds mcpapps experiment flag to src/experiments.ts. - Adds applyAppMeta helper function to src/mcp/util.ts to conditionally add UI metadata. - Adds unit tests for applyAppMeta in src/mcp/util.spec.ts. ### Scenarios Tested - Unit tests passed. - Build succeeds. * chore: address PR comments on experiments and util ### Description - Fixes applyAppMeta to preserve existing metadata. - Moves mcpapps flag to be grouped with other MCP experiments. - Removes as any in util.spec.ts by importing CallToolResult. ### Scenarios Tested - Build succeeds. - Lint passes for modified files (ignoring pre-existing warnings). - Unit tests for applyAppMeta pass. * feat: add infrastructure for MCP Apps Adds support for returning structured content from tools, which is used by MCP Apps to pass complex data to the host. Also updates the resource index. - Verified build and file changes. * feat: add Update Environment MCP App ### Description Adds the Update Environment MCP App, allowing users to switch projects and directories from the UI. ### Scenarios Tested - Verified build and file changes. * feat: add Init MCP App ### Description Adds the Init MCP App for interactive initialization of Firestore and Auth products. Includes support for Google Sign-In configuration and project selection. ### Scenarios Tested - Verified build and file changes. * chore: address PR comments and fix build on mcp-init-app - Remove non-existent login_ui and deploy_ui from resources index to fix build. - Avoid using any in mcp-app.ts, use specific interfaces. - Check isError on tool results. - Reduce page_size to 1000. - Fix lint warnings for catch blocks. * fix: add missing vite.config.ts for update_environment MCP app * chore: add missing MCP app dependencies and update shrinkwrap on mcp-init-app * fix: resolve lint errors for unused variables on mcp-init-app * chore: format mcp-app.ts to fix lint issues * refactor: clean up typing and UI options structure per review
1 parent 868a687 commit b4a46d9

File tree

11 files changed

+1314
-47
lines changed

11 files changed

+1314
-47
lines changed

npm-shrinkwrap.json

Lines changed: 128 additions & 45 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88
"firebase": "./lib/bin/firebase.js"
99
},
1010
"scripts": {
11-
"build": "tsc && npm run copyfiles",
11+
"build:mcp-apps": "vite build --config src/mcp/apps/update_environment/vite.config.ts && vite build --config src/mcp/apps/init/vite.config.ts",
12+
"build": "npm run build:mcp-apps && tsc && npm run copyfiles",
1213
"build:publish": "tsc --build tsconfig.publish.json && npm run copyfiles",
1314
"build:watch": "npm run build && tsc --watch",
1415
"clean": "node -e \"fs.rmSync('lib', { recursive: true, force: true }); fs.rmSync('dev', { recursive: true, force: true });\"",
@@ -185,6 +186,7 @@
185186
"@angular-devkit/architect": "^0.1402.2",
186187
"@angular-devkit/core": "^14.2.2",
187188
"@google/events": "^5.1.1",
189+
"@modelcontextprotocol/ext-apps": "^1.3.2",
188190
"@types/archiver": "^6.0.0",
189191
"@types/async-lock": "^1.4.2",
190192
"@types/body-parser": "^1.17.0",
@@ -266,7 +268,8 @@
266268
"ts-node": "^10.4.0",
267269
"typescript": "^5.3.3",
268270
"typescript-json-schema": "^0.65.1",
269-
"vite": "^4.2.1"
271+
"vite": "^4.2.1",
272+
"vite-plugin-singlefile": "^0.13.5"
270273
},
271274
"overrides": {
272275
"@angular-devkit/core": {

0 commit comments

Comments
 (0)