Knack MCP Server
Connect your Knack data model to AI-powered development tools using the Knack MCP server.
What is an MCP Server?
MCP (Model Context Protocol) is an open standard that lets AI assistants and coding tools connect directly to external services and take real actions on your behalf — not just generate code, but actually read data, create records, and modify app structure in real time.
When you connect an MCP server to an AI tool like Lovable, Claude Code, or Bolt, the AI gains a set of callable functions that go beyond its built-in knowledge. Instead of describing how to do something, it can just do it.
For Knack builders, this means:
- Describe your app in plain English and the AI creates your tables, fields, and relationships directly in your Knack application — no manual Builder clicks required.
- Ask the AI to inspect your existing schema, suggest changes, or fix structural issues, and it reads your Knack app's backend schema to give accurate, grounded answers.
- Use your preferred AI coding environment as the interface for building your Knack data model, then hand off to Knack's Builder or live app for the rest.
The Knack MCP server is the bridge that makes this possible. It handles authentication, translates the AI's intent into Knack API calls, and ensures everything it creates lands safely inside your Knack application.
Table of Contents
- Overview
- Prerequisites
- Authentication
- Sample Prompt
- Tool Reference
getKnackApplicationInformationcreateKnackObjectWithFieldsupdateKnackTableNamedeleteKnackFielddeleteKnackObjectupsertFieldupdateKnackApplicationInfosearchKnackDocumentation
- Limitations & Important Notes
- Connecting in Specific Tools
Overview
The Knack MCP server allows AI development tools to directly read and build your Knack application's data model — creating tables, defining fields, setting up relationships, and updating your app structure — all through natural language conversation.
All tables, fields, and data are created and stored inside your Knack application, hosted on Knack's cloud infrastructure. Nothing is stored locally or inside the AI tool — the AI acts as the interface, while Knack remains the system of record for your data model. You can verify and manage everything the AI creates at any time from the Knack Builder area by logging in through your Knack Dashboard.
Instead of manually configuring your Knack schema through the Builder interface, you describe what you need in plain English and the AI handles the data model construction, using the Knack MCP server as the secure bridge to your application.
Note: The Knack MCP server is focused on building your app's backend data model — tables, fields, and relationships. It does not support frontend / Page / Theme building.
Additionally, for authenticating live-app end users and making record-data API calls from a generated UI, please see the Runtime Data API guide.
Prerequisites
Before connecting, make sure you have the following:
| Requirement | Details |
|---|---|
| Knack account | Sign up at knack.com — a free trial is sufficient to get started |
| Knack application | An existing app or a new one created in the Knack Builder |
| Builder credentials | The email and password you use to log into you Knack Dashboard and Builder area (dashbaord.knack.com) |
Important: The credentials used during authentication must belong to a user with Builder access to the Knack application you want to work with. Account-level admin access is recommended.
Authentication
The Knack MCP server uses OAuth 2.1 with PKCE — the same secure standard used by modern web applications. You do not need to generate API keys or copy tokens manually. The entire flow is handled through a browser window.
What happens when you connect
- The AI tool contacts the MCP server and receives a
401 Unauthorizedresponse with a pointer to the authorization server. - The tool discovers the Knack OAuth server automatically by following the standard OAuth discovery protocol.
- A Knack login window opens in your browser (either a popup or a new tab).
- You log in using your Knack Builder credentials (the email and password you use to sign in to your Knack Dashboard at
dashboard.knack.com). - You approve the authorization — a consent screen confirms that the tool will be granted access to manage your app's schema.
- The tool receives a secure access token and stores it. The connection is established.
What credentials to use
Use your Knack Builder login credentials:
- Email: the email address registered to your Knack account
- Password: your Knack Builder password
These are the same credentials you use to log into the Knack Builder at
builder.knack.com. Do not use live app user credentials.
Token lifetime
| Token | Lifetime |
|---|---|
| Access token | 1 hour |
| Refresh token | 30 days |
The AI tool handles token refresh automatically. If your session expires after 30 days, you will be prompted to log in again.
Two-factor authentication (2FA)
If your Knack account has 2FA enabled, you will be prompted to enter your TOTP code during the login step. This is the 6-digit code from your authenticator app (e.g. Google Authenticator, Authy).
Sample Prompt
Once connected, try this prompt to get started building a Knack app:
I need to build a project management application in Knack.
The app needs:
- A Projects table with fields for: project name, status (active/on hold/completed),
start date, due date, and a description
- A Tasks table with fields for: task name, assignee (text), priority
(high/medium/low), due date, completion checkbox, and notes
- A connection from Tasks to Projects so each task belongs to a project
- A People table for team members with: full name, email, role, and department
Please create this data model in my Knack application, using descriptive names
for all tables and fields. After creating the schema, give me a summary of
what was built.
Tool Reference
The Knack MCP server exposes the following tools to the AI. These are invoked automatically based on your conversation — you do not call them directly.
getKnackApplicationInformation
getKnackApplicationInformationReads your application's structure in a single batched call. This is the primary inspection tool — the AI calls it before making any changes to understand what already exists in your app. Can retrieve app metadata, tables, field definitions, pages, views, and active theme.
createKnackObjectWithFields
createKnackObjectWithFieldsCreates a new table and its fields in a single operation. This is the primary tool for building your data model from scratch. Supports all standard field types. Connection fields and formula fields must be added separately using upsertField after the table is created.
updateKnackTableName
updateKnackTableNameRenames an existing table. The new name must be unique across all tables in the application.
deleteKnackField
deleteKnackFieldPermanently removes a field from a table. This action cannot be undone. The AI will ask for your confirmation before executing. Cannot delete the last field in a table, fields in the Accounts table, or fields that have existing record data.
deleteKnackObject
deleteKnackObjectPermanently deletes an entire table — its schema, all fields, and all records. This action cannot be undone. The AI will display the table name and record count before asking for your explicit confirmation. The Accounts table cannot be deleted.
upsertField
upsertFieldCreates or updates a field in a table. More flexible than createKnackObjectWithFields — supports all field types including connections, formulas, equations, and text formulas. Use this to add relationships between tables after they've been created. Note: field types cannot be changed on an existing field.
updateKnackApplicationInfo
updateKnackApplicationInfoUpdates the application's display name and/or short description. Useful for giving a newly created app a meaningful identity.
searchKnackDocumentation
searchKnackDocumentationSearches the official Knack documentation using semantic search and returns the most relevant sections. The AI uses this to answer questions about Knack features or find guidance on things that require manual setup in the Builder. If nothing relevant is found, it will refer you to docs.knack.com.
Limitations & Important Notes
Backend Schema-only access (no Frontend Page / UI access)
The Knack MCP server manages your application's data model (tables, fields, relationships, app settings). The Frontend UI design and implementation — screens, forms, layouts, and user interactions — is either built by you in your frontend AI/vibe-coding platform of choice, or you can build no-code Pages within the Knack Builder area
Destructive operations require confirmation
Any tool that permanently deletes data (deleteKnackField, deleteKnackObject) will always ask for your explicit confirmation before executing. Never confirm deletion unless you are certain.
Field type changes are not supported
Changing an existing field's type (e.g., from short_text to number) is not supported via the MCP server. To change a field type, you must delete the field and create a new one — be aware this will remove any existing data in that field.
Connection and formula fields
Connection fields and formula fields (sum, count, etc.) cannot be created as part of createKnackObjectWithFields. Create the tables first, then add connections and formulas using upsertField.
User-role table fields
The password and user_roles fields are automatically managed by Knack when creating user-role tables. Do not attempt to create these fields manually — they will be rejected.
Accounts table
The Accounts table is a protected system table. Its fields cannot be deleted, and the table itself cannot be deleted.
Access is scoped to your account
The MCP server only has access to applications owned by the Knack account you authenticated with. It cannot access other accounts' applications.
Connecting in Specific Tools
The Knack MCP server uses the standard MCP protocol with OAuth 2.1, so it works with any MCP-compatible AI tool. Below are step-by-step instructions for the most popular platforms.
Lovable
-
In your Lovable project, navigate to Connectors in the left sidebar or top navigation menu, then select Custom MCP.
Note: The exact menu path may vary depending on your Lovable version. Look for "Connectors", "Integrations", or "MCP Servers" in the project settings.
-
Click Add MCP Server (or + New Connector) and select the option for an external/custom MCP server.
-
In the Server URL field, enter
https://knack-mcp-server.us-east-1.prd.knack.com/mcp. -
Click Save or Connect. Lovable will immediately attempt to reach the MCP server, which triggers the authentication flow described above.
-
Once connected, if your app will need to authenticate live-app users or make record API calls, add the context from the Runtime Data API guide to your Lovable project's knowledge base.
Replit
-
Open your Replit project and navigate to Tools → Secrets (or AI Settings, depending on your plan).
-
Find the MCP Servers configuration section in your project's AI settings.
-
Add a new MCP server entry with the server URL set to
https://knack-mcp-server.us-east-1.prd.knack.com/mcp. -
Save the configuration. Replit's AI agent will prompt you to complete the OAuth authentication flow in a browser popup on first use.
-
Once connected, if your app will need to authenticate live-app users or make record API calls, add the context from the Runtime Data API guide to a file named
AGENT.mdor your project's AI instructions.
Bolt
-
In your Bolt project, open the Settings panel and navigate to Integrations or MCP Servers.
-
Click Add Integration and select MCP Server as the type.
-
Enter
https://knack-mcp-server.us-east-1.prd.knack.com/mcpas the server URL and give it a name (e.g.,Knack). -
Click Connect. The OAuth flow will open in a new browser tab — log in with your Knack Builder credentials to authorize access.
-
Once connected, if your app will need to authenticate live-app users or make record API calls, add the context from the Runtime Data API guide to Bolt's system instructions or project context.
Claude Code
Claude Code supports MCP servers via its configuration file. You can add the Knack MCP server globally (available in all projects) or per-project.
Option A — Global config (available in all Claude Code sessions):
Add to ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"knack": {
"url": "https://knack-mcp-server.us-east-1.prd.knack.com/mcp",
"transport": "https"
}
}
}Option B — Project config (available only in the current project):
Add to .claude/mcp.json in your project root:
{
"mcpServers": {
"knack": {
"url": "https://knack-mcp-server.us-east-1.prd.knack.com/mcp",
"transport": "https"
}
}
}After saving, restart Claude Code (or run /mcp to reload servers). On first use, Claude Code will open a browser window for the OAuth authentication flow.
Tip: If your app will need to authenticate live-app users or make record API calls, add the context from the Runtime Data API guide to your project's
CLAUDE.mdfile.
GitHub Codespaces
Codespaces supports MCP servers when using Claude-powered AI extensions or through the Claude Code CLI.
Via Claude Code CLI in a Codespace:
-
In your Codespace terminal, install Claude Code:
npm install -g @anthropic-ai/claude-code -
Create or edit
.claude/mcp.jsonin your project root:
{
"mcpServers": {
"knack": {
"url": "https://knack-mcp-server.us-east-1.prd.knack.com/mcp",
"transport": "https"
}
}
}-
Run
claudeto start a session. On first use, Claude Code will prompt you to open a browser URL to complete the OAuth authentication flow. Copy the URL from the terminal and open it in a local browser to log in. -
If your app will need to authenticate live-app users or make record API calls, add the context from the Runtime Data API guide to your project's
CLAUDE.md.
Via VS Code extension in a Codespace:
If you are using a VS Code-based Codespace with an MCP-compatible AI extension, add the server to that extension's MCP settings using the server URL https://knack-mcp-server.us-east-1.prd.knack.com/mcp and follow its OAuth connection flow.

