uivoid
hosted database · free · 500 MB

A Postgres database your agent can use.

Paste one prompt into your coding agent. It creates the database, defines typed tables, and exposes only the operations you pick. Each one becomes a scoped MCP tool and an HTTP endpoint on your project's subdomain. UIVOID runs the database and the MCP gateway, so there's nothing to deploy or self-host.

from a real chat

An expenses backoffice in one conversation.

One sentence to a coding agent created the project, a hosted database, three tables and 12 MCP tools. The agent checked that the tools answered, and left delete off because it needs the destructive scope.

The next message logged a real expense through those tools. There's no form to build and no admin screen to deploy.

Claude

hey, using the uivoid CLI create a new project called expenses to track costs, create some tables for that

  • npx uivoid create expenses --no-discover
  • uivoid db create expenses --project expenses
  • uivoid db table create categories · expenses · budgets
  • uivoid db expose list · get · insert · update (×3 tables)
  • list_categories() → [] · read scope

I created the expenses project. It has a hosted Postgres database with three tables and 12 MCP tools. A test call to list_categoriescame back empty, which is expected since there's no data yet.

tablecolumns
categoriesname*, description, color
expensesdescription, amount, currency, spent_on, category_id, merchant, payment_method, notes, reimbursable
budgetscategory_id, month, amount*, currency*

Each table gets list_*, get_*, create_* and update_* tools. I left out delete tools because they need the destructive scope. I can add them if you want.

MCP URL: https://expenses.uivoid.app/mcp

log $86 for lunch with a client, put it under restaurant

  • create_expense() · write scope

The USD 86.00 client lunch is logged for today, Sep 24, under the Restaurant category.

example

Inventory in one prompt.

Tell your agent what you want to track. It writes the schema and runs these commands for you. You can also run them yourself.

products.schema.json
{
  "name":  { "type": "text", "required": true },
  "stock": { "type": "integer" },
  "price": { "type": "number" }
}
zsh — shop/
$ npx uivoid create shop --no-discover
✔ ready → shop.uivoid.app/mcp
$ uivoid db create inventory --project shop
✔ hosted postgres · 500 MB
$ uivoid db table create products --db inventory \
--schema products.schema.json --project shop
✔ products (id, name, stock, price)
$ uivoid db expose products --db inventory \
--operation insert --name add_product \
--path /products --project shop \
--description "Create a product"
✔ MCP tool add_product · POST /products · write
agent> add_product({ name: "Book", stock: 5 })
← 1 row inserted · write scope
agent> list_products()
← 1 row · read scope · 38ms
operations

Five operations, each with its own scope.

operationscopearguments
listread{}
getread{"id":"<uuid>"}
insertwrite{"data":{...}}
updatewrite{"id":"<uuid>","data":{...}}
deletedestructive{"id":"<uuid>"}
size

500 MB per database. At the limit, reads and deletes keep working; only growth is rejected.

types

text, integer, number and boolean columns. Every row gets a generated UUID id.

credentials

Database credentials never leave the server. Agents only see the tools you expose.

safety

No raw SQL, no schema edits, no dropping databases. Deleting a row needs the destructive scope.

what you can build
  • +expense tracking in any currency
  • +a waitlist your agent can triage
  • +inventory and orders
  • +a CRM you talk to instead of click through
  • +a feedback and support inbox
  • +an internal backoffice for your ops team