Well
Manage business data including invoices, companies, and contacts through a structured database interface.
Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeRead-only
What it can do
- Well Get Schema: Discover available data types and fields. USAGE: - well_get_schema() → List available roots (invoices, companies, people, documents, connectors) - well_get_schema({ root: "invoices" }
- Well Query Records: Query records from Well's database. ⚠️ WORKFLOW: 1. Call well_get_schema(root) FIRST to discover available fields 2. Select ONLY the fields you need (5-15 typically) 3. Call well_q
- Well Create Company: Create a new company in Well. ⚠️ Call well_get_schema("companies") FIRST to discover all available fields and their required status. REQUIRED: name COMMON FIELDS: domain, descript
What data it sees
Do you need an account
No: the server works without sign-in
Manage business data including invoices, companies, and contacts through a structured database interface. Discover available data schemas to efficiently query specific records for reporting and dashboarding. Streamline administrative tasks by creating new company profiles and personnel entries directly.
Server tool list (4)
Raw names from tools/list. Only developers need these.
| well_get_schema | Discover available data types and fields. USAGE: - well_get_schema() → List available roots (invoices, companies, people, documents, connectors) - well_get_schema({ root: "invoices" }) → List all available fields for invoices WORKFLOW: 1. Call well_get_schema(root) to see available fields 2. Pick the fields you need for your task (typically 5-15) 3. Call well_query_records with those specific fields Returns field paths like: - "invoices.grand_total" → scalar field - "invoices.issuer.name" → relationship field (company name) - "invoices.receiver.name" → relationship field To use in well_query_records, convert path to array: "invoices.issuer.name" → ["invoices", "issuer", "name"] |
| well_query_records | Query records from Well's database. ⚠️ WORKFLOW: 1. Call well_get_schema(root) FIRST to discover available fields 2. Select ONLY the fields you need (5-15 typically) 3. Call well_query_records with those specific fields ROOTS: invoices, companies, people, documents, connectors EXAMPLE - Get all invoices for dashboard: well_query_records({ root: "invoices", fields: [ ["invoices", "invoice_number"], ["invoices", "grand_total"], ["invoices", "issue_date"], ["invoices", "issuer", "name"], ["invoices", "receiver", "name"] ], limit: 500 }) ⚠️ RULES: - ALWAYS select specific fields (not allFields) for best performance - Field paths from schema: "invoices.issuer.name" → ["invoices", "issuer", "name"] - With specific fields, you can request up to 500 records Returns { rows, totalCount, success }. |
| well_create_company | Create a new company in Well. ⚠️ Call well_get_schema("companies") FIRST to discover all available fields and their required status. REQUIRED: name COMMON FIELDS: domain, description, tax_id, registered_name, trade_name The schema may include additional fields - use get_schema to see the complete list. |
| well_create_person | Create a new person/contact in Well. REQUIRED: first_name (last_name can be null) FIELDS: first_name, last_name, email, phone, job_title EXAMPLES: - Simple: well_create_person({ first_name: "John", last_name: "Doe" }) - With email: well_create_person({ first_name: "John", last_name: "Doe", email: "john@example.com" }) - Full: well_create_person({ first_name: "John", last_name: "Doe", email: "john@example.com", phone: "+33612345678", job_title: "CEO" }) |