Skip to main content
Glama

TaskFlow: an MCP server powered by the Appwrite OAuth2 server

TaskFlow is a small task manager built on Appwrite. It ships a remote MCP server, hosted as an Appwrite Function, so AI tools like Claude Code can read and manage a user's tasks with the user's permission.

The interesting part is the auth. TaskFlow's Appwrite project acts as the OAuth2 server: AI clients register themselves, users approve access on a consent screen TaskFlow hosts, and the MCP server verifies the tokens the project issues. No API keys are handed out, and users can disconnect a tool at any time.

Companion repository for the Appwrite blog tutorial "Turn your app into an MCP server".

Layout

apps/taskflow          The TaskFlow web app (TanStack Start): tasks, sign-in,
                       the OAuth2 consent screen, and a connected apps page.
functions/taskflow-mcp The MCP server, deployed as an Appwrite Function.
scripts                One-time database provisioning.

Related MCP server: Motion MCP Server

Setup

  1. Create an Appwrite project and copy .env.example to .env with your endpoint, project ID, an API key (scopes: sessions.write, users.read, apps.read, databases.read, databases.write, tables.read, tables.write), and a random session secret.

  2. Install and provision the database:

    pnpm install
    pnpm provision
  3. In the Console, open Auth > OAuth2 server, enable the server, set the authorization URL to http://localhost:4100/oauth/consent, and add the tasks.read and tasks.write scopes.

  4. Deploy the web app and the MCP server (uses the Appwrite CLI), then set the site's variables in the Console (same values as .env):

    appwrite login
    appwrite push site --site-id taskflow
    appwrite push function --function-id taskflow-mcp --activate
  5. Update the OAuth2 server's authorization URL to https://<SITE_DOMAIN>/oauth/consent.

  6. Connect from Claude Code, using the function's domain from the deploy output:

    claude mcp add --transport http taskflow https://<FUNCTION_DOMAIN>/mcp

    Run /mcp inside Claude Code and pick Authenticate. Sign in as a TaskFlow user, approve access, and ask Claude about your tasks.

Live demo

The deployed result of this repository: the app at taskflow.appwrite.network and the MCP server at https://taskflow-mcp.appwrite.network/mcp. Create an account, connect Claude Code with the command above, and manage your tasks from the conversation.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Person-owned, portable AI memory as a remote MCP server, readable and writable by any MCP client.

  • An MCP server that integrates with Discord to provide AI-powered features.

  • MCP server for Argo RPG Platform — connects AI assistants to campaign data via OAuth2

View all MCP Connectors

Latest Blog Posts

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/appwrite-community/taskflow-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server