Mako

io.github.mako-ai由 GitHub 账号 mako-ai 发布v1.0.0更新于 Oct 24, 2026

Explore your databases, validate SQL, and build & publish data apps in your Mako workspace.

已验证Streamable HTTP可网页运行数据库开发者工具数据与分析

概览

AI 生成的概览

Mako 是其 AI 原生 SQL 客户端的远程 MCP 端点(需 OAuth),让助手在 Mako 工作区中浏览数据库、校验 SQL,并构建和发布数据应用。

可以做什么
  • 浏览已连接的数据库并查看结构,覆盖 PostgreSQL、MongoDB、BigQuery、ClickHouse、MySQL、Redshift、Cloud SQL、Cloudflare D1 与 KV
  • 用自然语言生成、校验并执行 SQL 查询,控制台保存会形成版本快照
  • 构建并发布与查询结果绑定的实时 React 数据应用
  • 处理 dbt Core 转换:项目、任务、运行历史与血缘
  • 把 Stripe、PostHog、Close.com、Calendly、GraphQL、REST 等外部 SaaS 数据同步到工作区数仓
适用场景
当数据已在 Mako 中,且希望助手用自然语言查询数据、在运行前检查 SQL,或直接搭建并发布数据应用与 dbt 转换、无需切换到 Mako 网页控制台时适用。
运行要求
通过 streamable HTTP 访问 app.mako.ai 的远程 MCP 端点,需用 OAuth 登录 Mako 工作区。数据库或数据连接器须已在该工作区配置好。未声明本地包、环境变量或请求头。
安装前请注意
服务器以你的 OAuth 身份在 Mako 工作区内操作,可对已连接数据库执行查询,并创建或发布应用与转换。查询结果和应用数据会写入 Mako 后端的产物存储,同步连接器会把第三方 SaaS 数据拉入该数仓。发布前请确认其写入内容。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Mako,将其添加到工作区。
  2. 连接 所需的 凭据。它们会被私密存储,绝不会在公开页面上展示。
  3. 为需要使用其工具的对话启用该服务。

Web executable,通过 Streamable HTTP。 远程服务在工作区中配置后即可从网页运行时运行。

交给智能体安装

把这段提示词粘贴到 Claude Code、Codex、Cursor 等智能体,或 SourceWeft 对话中。智能体会读取该服务器的安装指南,先向你展示发布者、端点和登录方式,经你同意后再把它添加到你的客户端。密钥不会写进任何命令。

阅读 https://sourceweft.com/mcp/io.github.mako-ai%2Fmako/install.md,并按其中说明把这个 MCP 服务器接入我的客户端。修改任何配置之前,先告诉我它的发布者、端点和登录方式,等我确认。不要把 API 密钥写进命令或我会提交的文件;问我密钥应从哪里获取。

查看智能体所依据的安装指南

其他 MCP 客户端

把它添加到你客户端的 mcpServers 配置中。 客户端会在首次连接时完成 OAuth 登录。

{
  "mcpServers": {
    "mako": {
      "type": "http",
      "url": "https://app.mako.ai/api/mcp"
    }
  }
}

README

[Mako Logo] Mako

The AI-native SQL Client.

The Cursor for Data. Connect to any database, query with AI, and build live data apps -- all from your browser.

Stop wrestling with complex SQL and slow, bloated database tools. Write queries in plain English, get instant results, and turn them into live React apps with scheduled data refresh.

[Mako App Interface]

🚀 Why Mako?

A modern SQL client built for the AI era, replacing slow desktop tools with a fast, collaborative, AI-powered experience.

  • ✨ AI Query Generation: Write queries in natural language. Our schema-aware AI generates optimized SQL instantly.
    • Replaces: DataGrip, DBeaver, Postico
  • 🧱 dbt Transforms: Build, run, and schedule dbt Core projects in-app -- file IDE, jobs, run history, lineage, and GitHub sync.
    • Replaces: dbt Cloud
  • ⚛️ React Apps: Ask the agent to build live React apps wired to your data through secure, credential-free bindings -- scheduled Parquet materialization, queried with DuckDB in the browser.
    • Replaces: Metabase, Looker, Lovable, v0, internal-tool builders
  • 🕓 Version History: Every console save is an immutable snapshot, and apps live in git -- browse and restore either.
    • Replaces: Lost SQL files, manual backups
  • 🖥️ Mako Desktop: Native app that bundles a local agent so localhost databases work out of the box.
    • Replaces: SSH tunnels and bastion hops for local DBs
  • 👥 Team Collaboration: Share connections, version-control queries, and work together in real-time.
    • Replaces: Passing credentials around, lost SQL files
  • ⚡ Blazing Fast: No Java or Electron bloat. Opens instantly in your browser and runs smooth.
    • Replaces: Slow desktop database tools

📸 Screenshots

AI-powered console — ask in plain English, get a verified query and live results.

[AI-powered console]

Transforms (dbt) — build, run, and schedule dbt Core projects with a file IDE, jobs, run history, and lineage.

[dbt Transforms IDE]

Apps — build live React apps wired to your data, rendered in a sandboxed preview.

[React Apps live preview]

🔌 Integrations

Databases

IntegrationStatusDescription
PostgreSQL✅ LiveConnect to PostgreSQL for relational data queries
MongoDB✅ LiveConnect to MongoDB for flexible document-based data
BigQuery✅ LiveAnalyze large datasets with Google BigQuery
ClickHouse✅ LiveFast OLAP queries on ClickHouse
MySQL✅ LiveQuery MySQL databases with natural language
Redshift✅ LiveQuery Amazon Redshift data warehouses
Cloud SQL✅ LiveConnect to Google Cloud SQL (Postgres)
Cloudflare D1✅ LiveQuery Cloudflare D1 SQLite databases
Cloudflare KV✅ LiveBrowse and query Cloudflare Workers KV

Data Connectors

Sync external SaaS data into Mako's data warehouse for querying and apps.

IntegrationStatusDescription
Stripe✅ LiveTrack payments, subscriptions, and billing data
PostHog✅ LiveAnalyze product analytics and user behavior
Close.com✅ LiveSync CRM data (leads, opportunities, activities)
Claap✅ LiveSync recordings and workspace data
Calendly✅ LiveSync events, invitees, and event types
GraphQL✅ LiveQuery any GraphQL API with custom endpoints
REST✅ LiveQuery any REST API with custom endpoints
BigQuery✅ LiveSync BigQuery datasets into the warehouse

🏗️ Architecture

┌─────────────────────────────────────────────────────────┐│  Frontend (React + Vite)                                ││  ┌──────────┐ ┌──────────────┐ ┌─────────────────────┐ ││  │ Console  │ │  Apps        │ │   AI Chat (Vercel   │ ││  │ (Monaco) │ │  (React +    │ │    AI SDK)          │ ││  │          │ │   DuckDB)    │ │                     │ ││  └──────────┘ └──────────────┘ └─────────────────────┘ ││           ▲          ▲                   ▲              ││           │     Parquet/Arrow            │              ││           │     via OPFS cache           │              │└───────────┼──────────┼──────────────────┼──────────────┘            │          │                  │┌───────────┼──────────┼──────────────────┼──────────────┐│  API (Hono + Node.js)                                  ││  ┌──────────────────────────────────────────────────┐  ││  │ Unified Agent (expertise modes: Query /          │  ││  │   Sync Flow / React App / Transforms /           │  ││  │   Explore, switched via enable_mode)             │  ││  └──────────────────────────────────────────────────┘  ││  ┌──────────────┐ ┌───────────────┐ ┌──────────────┐  ││  │  DB Drivers   │ │  Connectors   │ │  App binding │  ││  │  (9 drivers)  │ │  (8 sources)  │ │  engine      │  ││  │              │ │               │ │  (DuckDB     │  ││  │              │ │               │ │   + Parquet) │  ││  └──────────────┘ └───────────────┘ └──────────────┘  ││                          ▲                             ││                    ┌─────┴──────┐                      ││                    │  Inngest   │ (scheduled refresh,   ││                    │            │  incremental sync)    ││                    └────────────┘                      │└────────────────────────────────────────────────────────┘            │                │     ┌──────┴──────┐  ┌─────┴──────────┐     │  MongoDB    │  │  User DBs      │     │  (metadata, │  │  (PG, BQ, CH,  │     │   warehouse)│  │   MySQL, etc.) │     └─────────────┘  └────────────────┘

Key technology choices:

  • DuckDB (both server-side via @duckdb/node-api and browser-side via @duckdb/duckdb-wasm): powers Parquet artifact generation for app bindings and in-browser SQL over them
  • Apache Arrow / Parquet: server materializes query results into Parquet, served to browser as Arrow IPC for zero-copy rendering
  • Inngest: event-driven job queues for scheduled app binding refresh and incremental data sync
  • Hono: lightweight, fast HTTP framework for the API
  • Monaco Editor: VS Code's editor for the SQL console
  • Vercel AI SDK: multi-provider LLM abstraction (OpenAI, Anthropic, Google)

📦 Artifact Storage

App data bindings (and app deployments, dbt outputs, and chat attachments) are materialized into an artifact store on the backend. The configuration names below predate apps -- they come from the since-removed dashboards feature -- and are kept so existing deployments keep working. Three storage backends:

  • filesystem -- default; stores files on local disk
  • gcs -- Google Cloud Storage
  • s3 -- S3-compatible bucket
env
DASHBOARD_ARTIFACT_STORE=filesystem
# Optional shared settingsDASHBOARD_ARTIFACT_PREFIX=dashboardsDASHBOARD_ARTIFACT_DIR=/absolute/path/to/artifacts  # filesystem only
Google Cloud Storage
env
DASHBOARD_ARTIFACT_STORE=gcsGCS_DASHBOARD_BUCKET=your-bucket-nameDASHBOARD_ARTIFACT_PREFIX=dashboard-artifacts/prod

See the docs for full GCS/S3 provisioning instructions.

🛠️ Quick Start

  1. Clone & Install

    bash
    git clone https://github.com/mako-ai/mako.gitcd makopnpm install
  2. Configure Environment Copy .env.example (if available) or create .env:

    env
    # Local development connects to the shared `dev` database, an Atlas DB that is# refreshed nightly from production. Grab the `dev` connection string from the# team vault. (`staging` backs non-migration PR previews; never point local at# `production`.)DATABASE_URL=mongodb+srv://<user>:<password>@<cluster>.mongodb.net/devENCRYPTION_KEY=your_32_character_hex_key_for_encryptionWEB_API_PORT=8080BASE_URL=http://localhost:8080CLIENT_URL=http://localhost:5173
  3. Start Services

    bash
    # Start the local notebook Python kernel so notebook `code` cells run# locally. Requires the KERNEL_* vars from .env.example in your .env.# (The dev database is hosted MongoDB Atlas, set via DATABASE_URL.)pnpm run docker:up
    # Start the full stack (API + App + Inngest)pnpm run dev
  4. Analyze

    • Open http://localhost:5173 to access the app.
    • Add a Data Source (e.g., Stripe or Close.com).
    • Use the chat interface to ask questions about your data.

🌐 IP Whitelisting

If your database requires IP whitelisting, add the following static IP to your allowlist:

34.79.190.46

This IP is used by Mako's cloud service for all outbound database connections.

💻 Development Commands

CommandDescription
pnpm run devStart API, frontend, and Inngest dev server
pnpm run app:dev:scanStart the frontend with React Scan and render debug logging
pnpm run migrateRun database migrations
pnpm run docker:upStart the local notebook Python kernel (run notebook code cells)
pnpm run testRun test suite
pnpm run buildBuild all packages
pnpm run docs:devStart documentation site locally

🔎 React Performance Profiling

Use React Scan when working on render churn, streaming chat responsiveness, Monaco console performance, or explorer/result table interactions:

bash
pnpm run app:dev:scan

This enables the React Scan Vite plugin via VITE_REACT_SCAN=true and turns on Mako's render-debug logs via VITE_RENDER_DEBUG=true. React Scan highlights components that re-render in the browser, while render-debug logs summarize why hot components such as Chat, ResourceTree, Console, and ResultsTable changed.

Keep React Scan off during normal development. The plugin and debug hooks are gated behind env flags so regular pnpm run app:dev runs without profiling overlays or extra debug logging.

🤝 Community & Support


Built with ❤️ by the Mako Team. Open Source and self-hostable.

来源:README.md,提交 e36e3e0

工具

0
该服务器需要登录,因此 SourceWeft 无法在没有账号的情况下读取其工具,也未收录。已连接账号所能看到的内容可能因账号及其权限而异。

版本历史

1
  1. v1.0.0最新Sep 16, 2026

评分

已满足适用检查项的 85%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通必需25 分
  • 已声明认证方式必需10 分
  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分