> For the complete documentation index, see [llms.txt](https://guides.noloco.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://guides.noloco.io/settings/integrations-and-api-keys/mcp-integration.md).

# MCP Integration

{% hint style="info" %}
**New to MCP?** Start with [Connect your own AI agent](/quickstart/connect-an-ai-agent.md) — it walks through both the app-data MCP and the guides MCP together.
{% endhint %}

The Noloco MCP (Model Context Protocol) server lets AI assistants list your tables, read records, and create, update, or delete entries through natural language.

One MCP URL covers every Noloco app where you're a data admin:

```
https://api.core.noloco.io/mcp
```

There's no API key and no per-app URL. The first time a client calls the server, a browser window opens for you to sign in and pick which apps the client can access and whether it gets read or read + write on each.

<figure><img src="/files/uFdz6tzW65ejqJropOOr" alt=""><figcaption><p>The Noloco consent screen — pick which apps the client can use, and whether it gets read or write on each.</p></figcaption></figure>

{% hint style="warning" %}
A connected client acts with your data admin role on every app you approve. It can read and modify all records in those apps regardless of row-level permissions. Only approve clients you trust.
{% endhint %}

### Connecting an AI Client

The Noloco MCP server uses [Streamable HTTP transport](https://modelcontextprotocol.io/specification/2025-03-26/basic/transports#streamable-http) with OAuth, which all major MCP clients support.

#### Claude Desktop

Open **Settings → Connectors**, find **Noloco** in the directory, and click **Connect**. The consent screen opens in your browser.

#### Claude Code

Run:

```bash
claude mcp add --transport http noloco https://api.core.noloco.io/mcp
```

The next time you start a session, Claude Code opens the consent screen in your browser.

#### Cursor & Windsurf

Open the MCP settings panel and add:

```json
{
  "mcpServers": {
    "noloco": {
      "url": "https://api.core.noloco.io/mcp"
    }
  }
}
```

The first tool call opens the consent screen.

#### Other MCP Clients

Any client that supports OAuth over Streamable HTTP can connect. Point it at `https://api.core.noloco.io/mcp` — no header, no key. The client handles the OAuth flow on first connection.

### Available Tools

Every data tool takes a `projectName` argument. The agent calls `list_projects` first to discover which apps it can see, then passes the right project name on each call.

| Tool               | What it does                                                                                               |
| ------------------ | ---------------------------------------------------------------------------------------------------------- |
| `list_projects`    | Lists every Noloco app you approved for this client, with the scope (read or read + write) granted on each |
| `list_tables`      | Lists tables in an app                                                                                     |
| `get_table_schema` | Returns a table's field types, options, and relationships                                                  |
| `list_records`     | Fetches records with optional filtering, sorting, and pagination                                           |
| `get_record`       | Fetches a single record by ID                                                                              |
| `create_record`    | Creates a record                                                                                           |
| `update_record`    | Updates a record by ID                                                                                     |
| `delete_record`    | Deletes a record by ID                                                                                     |

### Security and Access Management

* **OAuth, not API keys.** No long-lived secret is stored in the client config.
* **Per-app role check on every call.** If you lose data admin access on an app, the next call from any connected client is rejected — no token reissue needed.
* **Per-client revocation.** Each client has its own OAuth token; revoking one doesn't affect the others.
* **Scope chosen at sign-in.** Pick read-only or read + write per app on the consent screen. Re-run the flow any time to change either.
* **HTTPS only.**

### FAQ

{% content-ref url="/pages/RcBhKRljI9jgmDkTf9Pm" %}
[MCP FAQ](/settings/integrations-and-api-keys/mcp-integration/mcp-faq.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://guides.noloco.io/settings/integrations-and-api-keys/mcp-integration.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
