← Back to all sparks
A

Appwrite

DEVOPS
Velocity10.0

Appwrite keeps reworking its own plumbing — Go CLI, SquashFS mounts, and an MCP layer that refreshes itself

backend-as-a-servicemcpperformancecold-startscredentialsdeveloper-tooling
Current state
Appwrite is shipping near-daily to its Cloud platform, and the August run is dominated by execution-layer work rather than new product surface. The CLI was rewritten as a single Go binary, deployments moved to SquashFS mounts instead of file extraction, dependency installs gained a build cache, and scheduled executions on free tiers were deliberately jittered off the minute boundary. Running alongside that is a second thread — the MCP server is being maintained as a first-class product surface, with tool search, schema clarity, and now documentation freshness each addressed in turn.
Where it's heading
The consistent target is startup and install latency across every layer a developer touches — CLI invocation, dependency resolution, function cold start — each reported with concrete before-and-after numbers and each explicitly non-breaking. The MCP work has shifted from adding the surface to operating it: the docs embeddings now refresh on a daily cron rather than piggybacking on version releases, which decouples what AI clients know from Appwrite's own release cadence. Credential semantics are moving the other way, with capabilities removed on containment grounds.
Prediction
Having decoupled MCP documentation freshness from release cadence, the tool definitions themselves are the obvious next thing to generate from live API state rather than ship on a version boundary. Expect the remaining artifact-handling stages to get the same measured latency treatment.

Recent moves

  1. 1d ago

    MCP documentation embeddings now refresh daily, independent of version releases

    Moves the MCP server's documentation embeddings onto a daily cron so appwrite_search_docs reflects docs changes without waiting for a version release. It is an operational change to a surface Appwrite already sparked on twice this quarter — the capability is unchanged, but what AI clients see is no longer pinned to the release calendar.

    View source ↗
  2. 2d ago

    Better tool search and clearer schemas in the Appwrite MCP server

    Improves the MCP server's tool search to surface enum values and object shapes, stop truncating parameter descriptions, and filter non-matching results. The stated goal is first-try correctness for AI clients, which is a different optimization target than human-readable docs.

    View source ↗
  3. 2d ago

    API keys and JWTs can no longer mint further credentials

    Blocks API keys from creating further API keys and JWTs from minting further JWTs on Appwrite Cloud, while leaving existing credentials working. A deliberate removal of capability on containment grounds — a leaked credential can no longer grow a hidden set of replacements that outlive revocation.

    View source ↗
  4. 5d ago

    Send your MFA code through any channel with the custom factor

    Adds a custom MFA factor where Appwrite generates and verifies the code but the application delivers it over any channel it chooses — WhatsApp, voice, or an internal system. It removes the channel ceiling on MFA by declining to own delivery at all.

    View source ↗
  5. 6d ago

    Up to 4x faster dependency installs with the build cache

    Caches the package manager store between builds, cutting install time on a Next.js app from 11.7s to 2.8s with pnpm and 9.6s to 2.3s with bun, with no configuration change. Another entry in the August sequence of latency work reported with measured figures.

    View source ↗
  6. 7d ago

    Faster cold starts for Appwrite Sites and Functions with SquashFS

    Switches new Sites and Functions deployments to mounted SquashFS images instead of extracting every file, removing extraction from the cold-start path for up to 51% faster starts and near-constant mount time as deployments grow. Existing deployments keep running and must be redeployed to migrate.

    View source ↗