# Zuwiki

## MCP Server

> Category: Integrations

---

## Pages

- [Welcome to Zuwiki](https://docs.zuwiki.com/welcome-to-zuwiki)

### Getting Started

- [Create Your First Wiki](https://docs.zuwiki.com/getting-started/create-your-first-wiki)
- [Organize with Categories](https://docs.zuwiki.com/getting-started/organize-with-categories)
- [Publish Your First Page](https://docs.zuwiki.com/getting-started/publish-your-first-page)

### Core Concepts

- [Wikis, Categories, and Pages](https://docs.zuwiki.com/core-concepts/wikis-categories-and-pages)
- [Page Lifecycle](https://docs.zuwiki.com/core-concepts/page-lifecycle)
- [Page History and Restore](https://docs.zuwiki.com/core-concepts/page-history-and-restore)

### Access & Sharing

- [Public vs Internal Wikis](https://docs.zuwiki.com/access-sharing/public-vs-internal-wikis)
- [Visibility for Public Wikis](https://docs.zuwiki.com/access-sharing/visibility-and-access)
- [Share Links](https://docs.zuwiki.com/access-sharing/share-links)
- [Access Grants](https://docs.zuwiki.com/access-sharing/access-grants)
- [Classification and Sensitivity](https://docs.zuwiki.com/access-sharing/classification-and-sensitivity)

### Editor Guide

- [Markdown Basics](https://docs.zuwiki.com/editor-guide/markdown-basics)
- [Linking Between Pages](https://docs.zuwiki.com/editor-guide/linking-between-pages)
- [Icons and Visual Touches](https://docs.zuwiki.com/editor-guide/icons-and-visual-touches)
- [Rich Content Blocks](https://docs.zuwiki.com/editor-guide/rich-content-blocks)
- [OpenAPI Pages](https://docs.zuwiki.com/editor-guide/openapi-pages)

### Plans & Account

- [Plans and Limits](https://docs.zuwiki.com/plans-account/plans-and-limits)
- [Custom Domain](https://docs.zuwiki.com/plans-account/custom-domain)
- [Zuwiki for Open Source](https://docs.zuwiki.com/plans-account/zuwiki-for-open-source)

### Integrations

- [MCP Server](https://docs.zuwiki.com/integrations/mcp-server)

---

# MCP Server

Zuwiki runs a hosted MCP server, the Model Context Protocol endpoint that lets an AI assistant read and edit your wikis on your behalf. Connect it once and you can ask Claude, ChatGPT, or any MCP capable client things like "add a troubleshooting section to the onboarding page" and the change lands in your wiki, saved to history just like a manual edit.

This page walks you through it end to end. It takes about a minute.

## What you need

- A Zuwiki account that belongs to at least one organization.
- An MCP capable client. Claude, ChatGPT (Codex), Cursor, and VS Code are all covered below.
- The server address, which is always this:

```
https://mcp.zuwiki.com/mcp
```

That single URL is everything you paste. There is no API key to copy and no client secret to manage. Signing in happens in your browser, and your client registers itself with Zuwiki automatically.

## Step 1: Connect your client

Pick your client below and copy the command or config. They all point at the same URL.

### Claude Code

Run this in your terminal:

```bash
claude mcp add --transport http zuwiki https://mcp.zuwiki.com/mcp
```

Then open Claude Code, type `/mcp`, select **zuwiki**, and choose **Authenticate**. Your browser opens the Zuwiki sign in and consent screen.

### Claude Desktop

1. Open **Settings**, then **Connectors**.
2. Click **Add custom connector**.
3. Name it `Zuwiki` and paste this URL:

```
https://mcp.zuwiki.com/mcp
```

4. Save, then click **Connect**. Your browser opens the Zuwiki sign in and consent screen.

### ChatGPT (Codex CLI)

Add the server and start the login:

```bash
codex mcp add zuwiki --url https://mcp.zuwiki.com/mcp
codex mcp login zuwiki
```

`codex mcp login` opens the Zuwiki sign in and consent screen in your browser. OAuth for remote servers needs the rmcp client, so make sure your `~/.codex/config.toml` contains this once:

```toml
experimental_use_rmcp_client = true

[mcp_servers.zuwiki]
url = "https://mcp.zuwiki.com/mcp"
```

On recent Codex versions the same flag is written as `[features]` with `rmcp_client = true`.

### Cursor

Add this to `~/.cursor/mcp.json` (or `.cursor/mcp.json` in a project):

```json
{
  "mcpServers": {
    "zuwiki": {
      "url": "https://mcp.zuwiki.com/mcp"
    }
  }
}
```

Cursor shows a login prompt for the server. Click it to open the Zuwiki sign in and consent screen.

### VS Code (GitHub Copilot)

Add this to `.vscode/mcp.json` in your project, or open the user config with **MCP: Open User Configuration**:

```json
{
  "servers": {
    "zuwiki": {
      "type": "http",
      "url": "https://mcp.zuwiki.com/mcp"
    }
  }
}
```

Press **Start** above the server entry. VS Code walks you through the Zuwiki sign in and consent screen.

### Other clients

Any client that supports remote MCP servers over HTTP works the same way. Add a new server, choose the HTTP transport (sometimes labelled "streamable HTTP"), and paste `https://mcp.zuwiki.com/mcp`. The client discovers the login automatically, so you never type credentials into the client itself.

## Step 2: Sign in and approve

When the browser opens you will:

1. Sign in to Zuwiki, or confirm you are already signed in.
2. See a consent screen that names the app asking for access, for example "Claude".
3. Review what it is allowed to do:
   - **Read your wikis**, so the assistant can see your pages.
   - **Edit your wikis**, so it can create and update content.
4. Click **Allow**.

The browser hands control back to your client and the connection is live. You only do this once per client. The connection stays active until you remove it.

Access is always tied to your own account. The assistant can see and change exactly what you can, nothing more. If you are a reader in one organization and an editor in another, those limits apply on their own.

## Step 3: Point the assistant at a wiki

Your account may belong to several organizations, each with several wikis, so the first thing to do in a new conversation is tell the assistant where to work. Just ask in plain language:

> List my Zuwiki organizations.

> Use the "The Zu Company" organization and show me its wikis.

> Open the Zuwiki documentation wiki and show me its structure.

Behind the scenes the assistant selects the organization, loads the list of wikis, and fetches the page tree. From there you work in natural language.

## Step 4: Work in plain language

Once a wiki is open, describe what you want and let the assistant do it:

- "Create a page called Release Notes under the Guides category."
- "Read the Getting Started page and fix any typos."
- "Add a section about rate limits to the API page with a short example."
- "Rename 'Intro' to 'Introduction' and move it to the top."
- "Show me the history of this page and restore the version from yesterday."

You never call a tool by name. You describe the outcome, and the assistant maps it to the matching operation.

## What the assistant can do

The server exposes the same operations you have in the editor, so an assistant can:

- **Browse**: list your organizations and wikis, and load the full structure of categories and pages.
- **Read**: open the Markdown of any page, and inspect its settings and history.
- **Write**: create, rename, move, and delete pages, update their content, and switch them between draft and published.
- **Organize**: create, rename, and delete categories, and reorder items in the tree.
- **Travel in time**: view a page's history and restore an earlier version.

Every write goes through the same rules as the editor, so an assistant can never bypass visibility or your role.

## Good to know

- **Every save is versioned.** An assistant's edits create a history entry, exactly like manual edits, so anything can be rolled back.
- **It acts as you.** Authorization is per user through OAuth. The assistant inherits your access and your limits.
- **One organization at a time.** The active organization is remembered for the session only, so switching context in one client never affects another.
- **No secrets in the client.** There is nothing to paste but the URL. The browser handles sign in, and the client refreshes its own access in the background.

## Disconnecting

To stop a client's access, remove the Zuwiki server from that client.

- **Claude Code:** run `claude mcp remove zuwiki`.
- **Claude Desktop:** open the connector under **Settings**, then **Connectors**, and remove it.
- **ChatGPT (Codex):** run `codex mcp logout zuwiki`, then `codex mcp remove zuwiki`.
- **Cursor or VS Code:** delete the `zuwiki` entry from the `mcp.json` file.

## Troubleshooting

- **The browser did not open, or sign in loops.** Make sure you are signed in to Zuwiki in that browser, then trigger the connection again from your client.
- **"Forbidden" or "not a member".** You asked the assistant to use an organization you do not belong to. Ask it to list your organizations and pick one of those.
- **Your change is not visible.** Refresh the wiki in the app. The assistant edits the same data the editor shows, so a reload is all it takes.
- **Things slow down briefly.** The API allows a generous number of calls per minute. During a long burst the assistant simply waits a moment and continues.

## Related

- [OAuth for AI Clients](oauth-for-ai-clients) for the full authorization details.
- [REST API Overview](rest-api-overview) if you would rather integrate without an AI client.
