Skip to content

MCP

Fontana Files exposes a first-party Model Context Protocol server on your tenant origin at /_fontana-files/mcp (Streamable HTTP). Clients work with buckets: named git-backed file trees with viewer, editor, and admin grants.

This MCP port is for operators and external clients (Cursor, ChatGPT). It is text-only; binary and large files use the HTTP API on the same /_fontana-files prefix.

In Flow, open Admin → File buckets to create buckets, set grants, and browse files in a left-hand explorer. The explorer lists a bucket by its own name with the bucket tags as small chips after it, so a skill bucket reads as its namespace. The cog in the explorer header opens the explorer settings: names that start with a period stay hidden until you turn on Show dot files there, and Resync cache rebuilds the derived skill catalog from the buckets. A .gitignore you save is kept in the bucket history; files it matches stay in the bucket and are not added to that history. Bucket admins can edit grants from the bucket menu. Grant lists show people by name and email, and teams by name. Text files (markdown, JSON, and similar) can be edited in the page. Skill packages live in buckets named Skills (<Namespace>), and AI → Skills is an explorer over those buckets. Knowledge Graph and Agents still use their own file trees.

Tool What it does
ffs_list_buckets List buckets the caller can read (optional any-of tags filter)
ffs_create_bucket Create a bucket (the creating user becomes an admin)
ffs_delete_bucket Delete a bucket
ffs_get_perms Read the grant list (admin)
ffs_update_perms Replace the grant list
ffs_add_tag Add a display tag
ffs_remove_tag Remove a display tag
ffs_list_files Flat { path, size } subtree (folders are implicit)
ffs_get_file Read a UTF-8 file
ffs_put_file Write or replace a UTF-8 file
ffs_rename_file Rename a file inside a bucket
ffs_delete_file Delete a file

File paths are relative to the bucket file root. Bucket name and file path are always separate arguments.

Every tool call authenticates as you (a personal access token or a signed-in browser session) and is checked against that bucket’s grants. A bucket you cannot access is invisible. Calls without valid credentials fail closed.

On your tenant Flow origin:

  • Health: https://<tenant>.<baseDomain>/_fontana-files/health (no auth)
  • MCP (Streamable HTTP): https://<tenant>.<baseDomain>/_fontana-files/mcp

Use a personal access token (PAT) to connect external MCP clients to your tenant’s public /_fontana-files/mcp endpoint. PATs authenticate as you; bucket grants follow your user, team, and tenant permissions.

Create a PAT under Admin → Personal access tokens and paste the full fnt_pat_… value into your client config.

{
"mcpServers": {
"fontana-files": {
"url": "https://<tenant>.<baseDomain>/_fontana-files/mcp",
"headers": {
"Authorization": "Bearer fnt_pat_…"
}
}
}
}

After editing MCP config, run Developer: Reload Window in Cursor (or fully quit and reopen).