Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions src/partials/mcp-add-ides-tools.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@ You can add the MCP server to various AI tools and code editors:
{% cards_item href="/docs/tooling/mcp/claude-code" title="Claude Code" image="/images/docs/mcp/logos/claude.svg" %}
{% /cards_item %}

{% cards_item href="/docs/tooling/mcp/zenflow" title="Zenflow" image="/images/docs/mcp/logos/zenflow.svg" %}
{% /cards_item %}

{% cards_item href="/docs/tooling/mcp/cursor" title="Cursor" image="/images/docs/mcp/logos/cursor-ai.svg" %}
{% /cards_item %}

Expand Down Expand Up @@ -36,6 +39,9 @@ You can add the MCP server to various AI tools and code editors:
{% cards_item href="/docs/tooling/mcp/claude-code" title="Claude Code" image="/images/docs/mcp/logos/dark/claude.svg" %}
{% /cards_item %}

{% cards_item href="/docs/tooling/mcp/zenflow" title="Zenflow" image="/images/docs/mcp/logos/dark/zenflow.svg" %}
{% /cards_item %}

{% cards_item href="/docs/tooling/mcp/cursor" title="Cursor" image="/images/docs/mcp/logos/dark/cursor-ai.svg" %}
{% /cards_item %}

Expand Down
4 changes: 4 additions & 0 deletions src/routes/docs/tooling/mcp/+layout.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@
label: 'Claude Code',
href: '/docs/tooling/mcp/claude-code'
},
{
label: 'Zenflow',
href: '/docs/tooling/mcp/zenflow'
},
{
label: 'Cursor',
href: '/docs/tooling/mcp/cursor'
Expand Down
128 changes: 128 additions & 0 deletions src/routes/docs/tooling/mcp/zenflow/+page.markdoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
---
layout: article
title: Appwrite MCP and Zenflow
description: Learn how to add the Appwrite MCP servers to agents in Zenflow to interact with both the Appwrite API and documentation.
---

Learn how you can add the Appwrite MCP servers to agents in Zenflow to interact with both the Appwrite API and documentation.

Before you begin, ensure you have the following **prerequisites** installed on your system:
{% tabs %}
{% tabsitem #api-server-prerequisites title="API server" %}

[uv](https://docs.astral.sh/uv/getting-started/installation/) must be installed on your system.

{% /tabsitem %}

{% tabsitem #docs-server-prerequisites title="Docs server" %}

[Node.js](https://nodejs.org/en/download) and npm must be installed on your system.

{% /tabsitem %}
{% /tabs %}

{% section #step-1 step=1 title="Add MCP servers" %}

To add the Appwrite MCP server, open Zenflow and go to the **Settings** > **MCP servers**. From there, select your agent you want to configure MCP for, and then add your custom MCP server.

{% tabs %}
{% tabsitem #api-only title="API server" %}

Update the
```json
{
"mcpServers": {}
}
```
to include the API server:

```json
{
"mcpServers": {
"appwrite-api": {
"command": "uvx",
"args": [
"mcp-server-appwrite",
"--sites"
],
"env": {
"APPWRITE_PROJECT_ID": "your-project-id",
"APPWRITE_API_KEY": "your-api-key",
"APPWRITE_ENDPOINT": "https://<REGION>.cloud.appwrite.io/v1"
}
}
}
}
```

**Configuration:**
- Replace `your-project-id` with your actual Appwrite project ID
- Replace `your-api-key` with your Appwrite API key
- Replace `<REGION>` with your Appwrite Cloud region (e.g., `nyc`, `fra`)

{% /tabsitem %}

{% tabsitem #docs-only title="Docs server" %}

Update the
```json
{
"mcpServers": {}
}
```
to include the docs server:

```json
{
"mcpServers": {
"appwrite-docs": {
"url": "https://mcp-for-docs.appwrite.io",
"type": "http"
}
}
}
```

{% /tabsitem %}
{% /tabs %}

Click **Save**. Once you save the configuration, Zenflow will connect with the MCP server(s) and load all available tools.

{% /section %}

{% section #step-2 step=2 title="Test the integration" %}

Open **Zenflow Chat** of your existing task to test your MCP integrations. If you don't have an existing task, you can create one by clicking **New Task**, selecting a task type, and writing a task description. Click **Create and Run**.
If you are new to Zenflow, learn more about [how to set up Zenflow](https://docs.zencoder.ai/user-guides/guides/set-up-your-zenflow#step-6:-create-your-first-task).

You can try out the following example prompts based on the MCP server you have configured:

{% tabs %}
{% tabsitem #test-api title="API server" %}

**Example prompts:**
- `Create a new user in my Appwrite project`
- `List all databases in my project`
- `Show me the collections in my database`
- `Create a new document in my collection`
- `Delete a specific user by ID`
Comment on lines +106 to +108
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Update terminology to rows/columns.

The example prompts still use “collections” and “document,” which should be replaced with “columns” and “rows” per the docs terminology update.

✏️ Proposed fix
- - `Show me the collections in my database`
- - `Create a new document in my collection`
+ - `Show me the columns in my database`
+ - `Create a new row in my column`

Based on learnings “In appwrite/website, update terminology to use 'rows' and 'columns' instead of 'documents' and 'collections' across all documentation files with the .markdoc extension, including generated SDK documentation. Ensure consistent usage in content, metadata, and any code samples or schemas.”

📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
- `Show me the collections in my database`
- `Create a new document in my collection`
- `Delete a specific user by ID`
- `Show me the columns in my database`
- `Create a new row in my column`
- `Delete a specific user by ID`
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@src/routes/docs/tooling/mcp/zenflow/`+page.markdoc around lines 106 - 108,
Replace the outdated terminology in the example prompts that use "collections"
and "document" with the new docs terminology "columns" and "rows": update the
strings `Show me the collections in my database` -> `Show me the columns in my
database`, `Create a new document in my collection` -> `Create a new row in my
column` (or `Create a new row in my table/collection` consistent with your
schema wording), and `Delete a specific user by ID` if it references document
semantics ensure any surrounding text uses "row" instead of "document"; search
other .markdoc content and generated SDK docs for occurrences of "document(s)"
and "collection(s)" and replace them with "row(s)" and "column(s)" (or the
singular/plural variants) so usage in content, metadata, code samples and
schemas is consistent.


{% /tabsitem %}

{% tabsitem #test-docs title="Docs server" %}

**Example prompts:**
- `How do I set up real-time subscriptions in Appwrite?`
- `Show me how to authenticate users with OAuth`
- `What are the best practices for database queries?`
- `How do I implement file uploads with Appwrite Storage?`
- `Show me an example of using Appwrite Functions`

{% /tabsitem %}

{% /tabs %}

![Search for portfolio site in Appwrite project](/images/docs/mcp/zenflow/zenflow-chat.png)


{% /section %}
7 changes: 7 additions & 0 deletions static/images/docs/mcp/logos/dark/zenflow.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 7 additions & 0 deletions static/images/docs/mcp/logos/zenflow.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added static/images/docs/mcp/zenflow/zenflow-chat.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.