# MCP (Model Context Protocol)

> MCP is a protocol so an AI client (Cursor, Claude Desktop, Codex) can list and call tools on a remote server over Streamable HTTP. On NorthernGo it is three…

Source: https://northerngo.com/glossary/model-context-protocol/
Language: en
Updated: 2026-10-11

---
**MCP is a protocol so an AI client (Cursor, Claude Desktop, Codex) can list and call tools on a remote server over Streamable HTTP. On NorthernGo it is three Pro surfaces, not one: a remote MCP as a data source for a published app (including hosted Bokio and Gmail adapters), NorthernGo’s official MCP so Cursor can generate_app, and an optional hosted MCP for a Gemini- or MCP-created app’s own collections.**

### Three different things on one panel

My Projects → More → MCP is a hybrid. Mixing the keys is the failure mode.

**1. Remote MCP as a data source.** You paste a Streamable HTTP URL, or — for Bokio — a company UUID and a private integration token, or — for Gmail — Connect Gmail (OAuth). NorthernGo hosts those adapters; you do not paste a MCP URL. The published app calls `window.NorthernGoMCP.listTools()` and `.callTool(name, args)`. On a Pro rebuild the builder reads the live tool list into plan and logic. Local stdio servers (`npx …`) cannot run from a browser app. The editor preview does not reach that server. Numbered Bokio steps: [How do I connect Bokio to my app](/faq/#how-do-i-connect-bokio). Gmail: [How do I connect Gmail to my app](/faq/#how-do-i-connect-gmail).

**2. NorthernGo as an MCP server for Cursor.** URL `https://northerngo-backend.onrender.com/api/ng-mcp`, key `ngmcp_` (shown once). `generate_app` starts the same cloud Generate as the editor (no NorthernGo credit). `create_app` lands finished HTML. `get_app` / `save_app` iterate. It cannot publish. Do not paste a Firebase login token.

**3. This app as an MCP server.** Optional, off by default. After a Gemini Generate or MCP `create_app` / `generate_app`, NorthernGo’s backend speaks MCP *on behalf of* that app at `/api/app-mcp/{projectId}` with a separate `ngapp_` key. Tools are `list_` / `save_` / `delete_` for the app’s [NorthernGoDB](/resources/connect-supabase/) collections. When Gmail, Bokio or a remote MCP is connected to that app, the same tool names as `window.NorthernGoMCP.callTool` are listed and callable here. Local Ollama and WebGPU apps are not eligible. Anyone with the key reads rows as the owner.

The generated HTML is static. It is not itself a server.

### Not a REST API and not a webhook

A [REST API](/glossary/rest-api/) is URLs and HTTP verbs your code calls. A [webhook](/glossary/webhook/) is an inbound POST when something happened. MCP is a tool catalog plus JSON-RPC so an agent can discover operations at runtime. The data underneath on NorthernGo is still [CRUD](/glossary/crud/) against collections.

### The misconception

“Connect MCP” does not mean the generated app *is* an MCP server. That third switch is separate, Pro-only, and uses `ngapp_` — never reuse `ngmcp_`. The honest FAQ is [Can my generated app become an MCP server that others connect to](/faq/#can-my-app-become-an-mcp-server).

---

NorthernGo is an AI-powered platform for building production-ready web apps with zero coding. Local AI generation via WebGPU is unlimited and free, and you own all generated source code. https://northerngo.com/
