[{"data":1,"prerenderedAt":172},["ShallowReactive",2],{"doc:guides\u002Fdata":3},{"title":4,"description":5,"url":6,"markdownPath":7,"file":8,"section":9,"sectionTitle":10,"html":11,"toc":12,"navigation":29,"previous":170,"next":171},"Data","Keep Databases, Documents and Canvases in an L4 Server, and let Agents and MCP clients read and update them.","\u002Fdocs\u002Fguides\u002Fdata","\u002Fdocs\u002Fguides\u002Fdata.md","docs\u002Fguides\u002Fdata.md","guides","Guides","\u003Cp>\u003Cstrong>Data\u003C\u002Fstrong> in the rail holds a Server&#39;s shared knowledge: Databases of records, Documents and Canvases. Everything stays inside one Server.\u003C\u002Fp>\n\u003Ch2 id=\"databases\">\u003Ca class=\"heading-anchor\" href=\"#databases\">Databases\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>A Database is a table of records. Create one with \u003Cstrong>New database\u003C\u002Fstrong>, then add fields with \u003Cstrong>+\u003C\u002Fstrong> in the header. Every record has a \u003Cstrong>Title\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cdiv class=\"table-wrap\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Field\u003C\u002Fth>\n\u003Cth>Holds\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Cstrong>Text\u003C\u002Fstrong>, \u003Cstrong>Number\u003C\u002Fstrong>, \u003Cstrong>Checkbox\u003C\u002Fstrong>, \u003Cstrong>Date\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>A line of text, an amount, done or not, one day\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Select\u003C\u002Fstrong>, \u003Cstrong>Multi-select\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>One option, or any number of options, from the field&#39;s list\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>URL\u003C\u002Fstrong>, \u003Cstrong>Email\u003C\u002Fstrong>, \u003Cstrong>Phone\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>An address you can open, write to or call from the record\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Person\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Members of this Server\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Relation\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Records of a Database, this one included; a link opens the record\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Cul>\n\u003Cli>Type in the last row to add a record, or use \u003Cstrong>Record\u003C\u002Fstrong>.\u003C\u002Fli>\n\u003Cli>Click a cell to edit it. \u003Cstrong>Open\u003C\u002Fstrong> on a row, or a card in any other view, opens the record as a page with every field.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Filter\u003C\u002Fstrong>, \u003Cstrong>Sort\u003C\u002Fstrong> and \u003Cstrong>Properties\u003C\u002Fstrong> above the table change the current view as you set them. Saved views keep their own filters, sort and shown fields; \u003Cstrong>View settings\u003C\u002Fstrong> has them all in one place.\u003C\u002Fli>\n\u003Cli>Views come as a \u003Cstrong>Table\u003C\u002Fstrong>, \u003Cstrong>Board\u003C\u002Fstrong> grouped by a Select field, \u003Cstrong>Calendar\u003C\u002Fstrong> on a Date field, \u003Cstrong>List\u003C\u002Fstrong> or \u003Cstrong>Gallery\u003C\u002Fstrong> of cards.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Search\u003C\u002Fstrong> filters the current view.\u003C\u002Fli>\n\u003Cli>Archive a Database you no longer use. \u003Cstrong>Archived databases\u003C\u002Fstrong> lists them for restoring.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch2 id=\"documents\">\u003Ca class=\"heading-anchor\" href=\"#documents\">Documents\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>A Document is a page of formatted text. Create one with \u003Cstrong>New document\u003C\u002Fstrong>; it saves as you type. If you leave the page right after typing, the browser asks before discarding the last change.\u003C\u002Fp>\n\u003Ch2 id=\"canvases\">\u003Ca class=\"heading-anchor\" href=\"#canvases\">Canvases\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>A Canvas is a board of notes and text you can arrange and connect. Add items with \u003Cstrong>Note\u003C\u002Fstrong> or \u003Cstrong>Text\u003C\u002Fstrong>, drag them into place and link two of them with \u003Cstrong>Connect\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Ch2 id=\"who-can-do-what\">\u003Ca class=\"heading-anchor\" href=\"#who-can-do-what\">Who can do what\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>Three Role permissions cover Data:\u003C\u002Fp>\n\u003Cdiv class=\"table-wrap\">\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>Permission\u003C\u002Fth>\n\u003Cth>Allows\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\u003Ctr>\n\u003Ctd>\u003Cstrong>Read data\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Read authorized tables, records and documents\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Write data\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Create and edit records and documents\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003Ctr>\n\u003Ctd>\u003Cstrong>Manage data\u003C\u002Fstrong>\u003C\u002Ftd>\n\u003Ctd>Create Databases, Documents, Canvases and fields\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\n\u003Ch2 id=\"agents-and-mcp\">\u003Ca class=\"heading-anchor\" href=\"#agents-and-mcp\">Agents and MCP\u003C\u002Fa>\u003C\u002Fh2>\n\u003Cp>An Agent whose Role and the person who asks both allow it can find tables with \u003Ccode>list_tables\u003C\u002Fcode>, read records with \u003Ccode>read_records\u003C\u002Fcode>, add and change them with \u003Ccode>create_record\u003C\u002Fcode> and \u003Ccode>update_record\u003C\u002Fcode>, and read or write Documents. Multi-select, Person and Relation values are lists; \u003Ccode>read_records\u003C\u002Fcode> returns the titles of linked records alongside their ids. An Agent&#39;s Role can also be limited to chosen Databases and Documents.\u003C\u002Fp>\n\u003Cp>MCP clients use the \u003Ccode>data:read\u003C\u002Fcode>, \u003Ccode>data:write\u003C\u002Fcode>, \u003Ccode>data:manage\u003C\u002Fcode>, \u003Ccode>documents:read\u003C\u002Fcode> and \u003Ccode>documents:write\u003C\u002Fcode> scopes. See \u003Ca href=\"\u002Fdocs\u002Fagents\u002Fmcp\">MCP\u003C\u002Fa>.\u003C\u002Fp>\n",[13,17,20,23,26],{"id":14,"text":15,"depth":16},"databases","Databases",2,{"id":18,"text":19,"depth":16},"documents","Documents",{"id":21,"text":22,"depth":16},"canvases","Canvases",{"id":24,"text":25,"depth":16},"who-can-do-what","Who can do what",{"id":27,"text":28,"depth":16},"agents-and-mcp","Agents and MCP",[30,55,83,99,118,139,160],{"id":31,"title":32,"pages":33},"get-started","Get started",[34,37,40,43,46,49,52],{"title":35,"url":36},"What is L4","\u002Fdocs\u002Fget-started\u002Fwhat-is-l4",{"title":38,"url":39},"Choose how to run your Server","\u002Fdocs\u002Fget-started\u002Fchoose-how-to-run",{"title":41,"url":42},"Create a Server on Cloudflare","\u002Fdocs\u002Fget-started\u002Fcreate-on-cloudflare",{"title":44,"url":45},"Install on a VPS","\u002Fdocs\u002Fget-started\u002Finstall-on-a-vps",{"title":47,"url":48},"Connect to a Server","\u002Fdocs\u002Fget-started\u002Fconnect-a-server",{"title":50,"url":51},"Invite your team","\u002Fdocs\u002Fget-started\u002Finvite-your-team",{"title":53,"url":54},"Create your first Agent","\u002Fdocs\u002Fget-started\u002Ffirst-agent",{"id":56,"title":57,"pages":58},"cloudflare","Cloudflare",[59,62,65,68,71,74,77,80],{"title":60,"url":61},"L4 on Cloudflare","\u002Fdocs\u002Fcloudflare\u002Foverview",{"title":63,"url":64},"Cloudflare access","\u002Fdocs\u002Fcloudflare\u002Faccess",{"title":66,"url":67},"Costs and limits","\u002Fdocs\u002Fcloudflare\u002Fcosts-and-limits",{"title":69,"url":70},"Custom domain","\u002Fdocs\u002Fcloudflare\u002Fcustom-domain",{"title":72,"url":73},"Mail on Cloudflare","\u002Fdocs\u002Fcloudflare\u002Fmail",{"title":75,"url":76},"Update a Cloudflare Server","\u002Fdocs\u002Fcloudflare\u002Fupdates",{"title":78,"url":79},"Backups on Cloudflare","\u002Fdocs\u002Fcloudflare\u002Fbackups",{"title":81,"url":82},"Remove a Cloudflare Server","\u002Fdocs\u002Fcloudflare\u002Fremove-a-server",{"id":84,"title":85,"pages":86},"self-host","Self-host",[87,90,93,96],{"title":88,"url":89},"Run a Server on a VPS","\u002Fdocs\u002Fself-host\u002Fvps",{"title":91,"url":92},"Run a Server with Docker Compose","\u002Fdocs\u002Fself-host\u002Fdocker",{"title":94,"url":95},"Run a Server on Coolify","\u002Fdocs\u002Fself-host\u002Fcoolify",{"title":97,"url":98},"Compute Nodes","\u002Fdocs\u002Fself-host\u002Fcompute-nodes",{"id":100,"title":101,"pages":102},"concepts","Concepts",[103,106,109,112,115],{"title":104,"url":105},"Servers and the Shell","\u002Fdocs\u002Fconcepts\u002Fserver-and-shell",{"title":107,"url":108},"Accounts, Members and Roles","\u002Fdocs\u002Fconcepts\u002Faccounts-members-roles",{"title":110,"url":111},"Agents, Tasks and Runs","\u002Fdocs\u002Fconcepts\u002Fagents-tasks-runs",{"title":113,"url":114},"Files and backups","\u002Fdocs\u002Fconcepts\u002Ffiles-and-backups",{"title":116,"url":117},"Releases and updates","\u002Fdocs\u002Fconcepts\u002Freleases-and-updates",{"id":119,"title":28,"pages":120},"agents",[121,124,127,130,133,136],{"title":122,"url":123},"Agents overview","\u002Fdocs\u002Fagents\u002Foverview",{"title":125,"url":126},"Models and Providers","\u002Fdocs\u002Fagents\u002Fmodels-and-providers",{"title":128,"url":129},"Connect an MCP client","\u002Fdocs\u002Fagents\u002Fmcp",{"title":131,"url":132},"External agents","\u002Fdocs\u002Fagents\u002Fexternal-agents",{"title":134,"url":135},"Repositories and code work","\u002Fdocs\u002Fagents\u002Frepositories",{"title":137,"url":138},"Schedules","\u002Fdocs\u002Fagents\u002Fschedules",{"id":9,"title":10,"pages":140},[141,144,147,150,153,156,159],{"title":142,"url":143},"Chat","\u002Fdocs\u002Fguides\u002Fchat",{"title":145,"url":146},"Projects and Tasks","\u002Fdocs\u002Fguides\u002Fprojects-and-tasks",{"title":148,"url":149},"Mail","\u002Fdocs\u002Fguides\u002Fmail",{"title":151,"url":152},"Calls and Live","\u002Fdocs\u002Fguides\u002Fcalls",{"title":154,"url":155},"Notifications","\u002Fdocs\u002Fguides\u002Fnotifications",{"title":157,"url":158},"Telegram","\u002Fdocs\u002Fguides\u002Ftelegram",{"title":4,"url":6},{"id":161,"title":162,"pages":163},"reference","Reference",[164,167],{"title":165,"url":166},"Glossary","\u002Fdocs\u002Freference\u002Fglossary",{"title":168,"url":169},"Troubleshooting","\u002Fdocs\u002Freference\u002Ftroubleshooting",{"title":157,"url":158},{"title":165,"url":166},1793622314382]