AppFlowy Cloud MCP Server
The AppFlowy Cloud MCP Server allows you to interact with AppFlowy Cloud to manage workspaces, databases, rows, and documents through the following capabilities:
Authentication: Login with email and password to obtain access/refresh tokens, and refresh expired tokens.
Workspace Operations: List all workspaces for the authenticated user and get workspace folder metadata.
Database Operations: List all databases within a workspace and retrieve the fields/schema of a specific database.
Row Operations: List row IDs, get detailed row information (optionally including document content), create new rows with cell values and optional markdown documents, and upsert rows (update existing or create new, with support for pre-hash validation).
Document Operations: Create, update, get, duplicate, search, publish, unpublish, import, and manage collaborative documents and pages.
Supports using Markdown for document content when creating or updating rows in AppFlowy Cloud databases.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AppFlowy Cloud MCP Serverlist all my workspaces and their databases"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AppFlowy Cloud MCP Server
A Model Context Protocol (MCP) server for interacting with AppFlowy Cloud API, providing tools for workspace, database, and row operations.
Features
Authentication: Login and refresh token management
Workspace Operations: List all workspaces
Database Operations: List databases, get database fields
Row Operations: List rows, get row details, create rows, upsert rows
Related MCP server: Appwrite MCP Server
Authentication
The server uses in-memory token storage. To authenticate:
Use
appflowy_loginwith your email and passwordThe tokens are stored automatically
Use
appflowy_refresh_tokenwhen the access token expires
Available Tools
Authentication Tools
appflowy_login(request: LoginRequest)- Login to AppFlowy Cloudappflowy_refresh_token(request: RefreshTokenRequest)- Refresh access token
Workspace Tools
appflowy_list_workspaces()- List all workspacesappflowy_get_workspace_folder(workspace_id: str, depth: int | None = None, root_view_id: str | None = None)- Get workspace folder metadata
Database Tools
appflowy_list_databases(workspace_id: str)- List databases in a workspaceappflowy_get_database_fields(workspace_id: str, database_id: str)- Get database fields
Row Tools
appflowy_list_rows(workspace_id: str, database_id: str)- List row IDsappflowy_get_row_details(workspace_id: str, database_id: str, row_ids: str, with_doc: bool = False)- Get row detailsappflowy_create_row(workspace_id: str, database_id: str, request: RowCreateRequest)- Create a new rowappflowy_upsert_row(workspace_id: str, database_id: str, request: RowUpdateRequest)- Update or create row
Document Tools
appflowy_create_collab(...)appflowy_update_collab(...)appflowy_get_collab(...)appflowy_get_collab_json(...)appflowy_batch_create_collab(...)appflowy_full_sync_collab(...)appflowy_web_update_collab(...)appflowy_create_page_view(...)appflowy_get_page_view(...)appflowy_append_block_to_page(...)appflowy_create_orphaned_view(...)appflowy_duplicate_page(...)appflowy_create_quick_note(...)appflowy_list_quick_notes(...)appflowy_search_documents(...)appflowy_publish_page(...)appflowy_unpublish_page(...)appflowy_import_zip(file_path: str)appflowy_create_import_task(...)
Running the Server
uv run python main.pyUsage Example
Login:
request = LoginRequest(email="your@example.com", password="your_password")
response = appflowy_login(request)List workspaces:
workspaces = appflowy_list_workspaces()Get database fields:
fields = appflowy_get_database_fields("workspace_id", "database_id")Create a row:
row_request = RowCreateRequest(cells={"Field_Name": "Value"}, document="Optional markdown")
result = appflowy_create_row("workspace_id", "database_id", row_request)Note
The server maintains tokens in memory. For production use, consider adding persistent storage (Redis, database, etc.) and proper error handling.
Self hosting
if you are slef hosting and you want the mcp to work just added as env in where you get you AI
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Jemo69/Appflowy-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server