Lovie Company Formation
REMOTE · MCP.LOVIE.CO · 2 COMPONENTS · SCANNED SEP 21
Form companies, manage bank accounts, cards, invoices and more — directly from your AI coding tools.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security97
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation is enforced on tool calls, advertised via RFC 9728 protected-resource metadata. Discovery is public, which costs nothing: no tool can be invoked without a token. View diagnostics → Pass
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
- The authorisation server supports Client ID Metadata Documents, the current MCP client-registration mechanism. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability74
- 80% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Partial
- AI-judged instruction clarity (good).Pass
- Tool/resource definitions use about 30375 tokens (~90/item across 334 items; 333 tools + 1 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management97
- Stability check failed: schema churn in the 30 days we've observed: 4 tool removals, 4 breaking changes, 0 auth/transport breaks, 135 additions. See how to fix → Fail
Tool Coverage83
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 42% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety45
- Injection-marker check failed: the server instructions contains an instruction to conceal the call from the user, the text "Never tell the user", at byte 2460 of that field, plus 2 further marker(s) of the same kind. See how to fix → Fail
- 19 of 24 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "accounting_suggest_transfer_pairs" implies "transfer" and declares readOnlyHint instead, contradicting what its own name says it does. See how to fix → Partial
- An AI judge read all 335 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
- Supports UI / widget rendering.Pass
How do I install the Lovie Company Formation MCP server?
Lovie Company Formation is a hosted endpoint at https://mcp.lovie.co/mcp/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · mcp.lovie.co
claude mcp add --transport http co-lovie-company-formation 'https://mcp.lovie.co/mcp/mcp'
{
"mcpServers": {
"co-lovie-company-formation": {
"url": "https://mcp.lovie.co/mcp/mcp"
}
}
} {
"servers": {
"co-lovie-company-formation": {
"type": "http",
"url": "https://mcp.lovie.co/mcp/mcp"
}
}
} [mcp_servers.co-lovie-company-formation] url = "https://mcp.lovie.co/mcp/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"co-lovie-company-formation": {
"type": "remote",
"url": "https://mcp.lovie.co/mcp/mcp",
"enabled": true
}
}
} openclaw mcp add co-lovie-company-formation --url 'https://mcp.lovie.co/mcp/mcp' --transport streamable-http
mcp_servers:
co-lovie-company-formation:
url: "https://mcp.lovie.co/mcp/mcp" {
"McpServers": {
"co-lovie-company-formation": {
"Transport": "http",
"Url": "https://mcp.lovie.co/mcp/mcp"
}
}
} assistant mcp add co-lovie-company-formation -t streamable-http -u 'https://mcp.lovie.co/mcp/mcp'
{
"mcpServers": {
"co-lovie-company-formation": {
"type": "http",
"url": "https://mcp.lovie.co/mcp/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 17 Sept 26 +1
- Authorization: partial → pass ▲ security
- New tool “kyc_start_kyc_inquiry” functional
- 16 Sept 26 0
- Tool “equity_onboarding_hydrate_formation_carry” rewrote its description, which is the text the model reads security
- Tool “equity_onboarding_update” rewrote its description, which is the text the model reads security
- 11 Sept 26 +1
We did not load change detail this far back for this component, so this day may have recorded more than is shown.
- Tool “account_get_list_accounts” was removed ▼ security
- Tool “card_get_list_card_transactions” was removed ▼ security
- Tool “formation_get_election83b_prefill” was removed ▼ security
- Tool “transaction_get_list_transactions” was removed ▼ security
- New tool “itin_submit_itin_intake”, which the server declares destructive security
- New tool “signature_reconcile_document_state”, which the server declares destructive security
- New tool “trademark_delete_application”, which the server declares destructive security
- New tool “trademark_submit_to_firm”, which the server declares destructive security
- New tool “banking_set_application_ein”, which the server declares destructive security
- New tool “banking_set_owner_identity_document_number”, which the server declares destructive security
- New tool “banking_set_owner_tax_identifier”, which the server declares destructive security
- New tool “banking_submit_banking_application”, which the server declares destructive security
- New tool “commit_transfer”, which the server declares destructive security
- New tool “equity_onboarding_submit”, which the server declares destructive security
- New tool “formation_delete_pending_domain”, which the server declares destructive security
- New tool “formation_get_domain_auth_code”, which the server declares destructive security
- New tool “formation_remove_shareholder”, which the server declares destructive security
- New tool “formation_set_domain_dns_records”, which the server declares destructive security
- New tool “formation_set_founder_profile”, which the server declares destructive security
- New tool “formation_set_shareholder_tax_identifier”, which the server declares destructive security
- New tool “formation_start_domain_transfer”, which the server declares destructive security
- Tool “accounting_preview_close” rewrote its description, which is the text the model reads security
- Tool “cap_table_create_cap_table_round” rewrote its description, which is the text the model reads security
- Tool “cap_table_create_cap_table_stakeholder” rewrote its description, which is the text the model reads security
- Tool “cap_table_get_cap_table_agreement” rewrote its description, which is the text the model reads security
- Tool “cap_table_get_cap_table_overview” rewrote its description, which is the text the model reads security
- Tool “cap_table_get_cap_table_round” rewrote its description, which is the text the model reads security
- Tool “cap_table_get_list_cap_table_agreements” rewrote its description, which is the text the model reads security
- Tool “cap_table_get_list_cap_table_rounds” rewrote its description, which is the text the model reads security
- Tool “cap_table_get_list_cap_table_wire_match_suggestions” rewrote its description, which is the text the model reads security
- Tool “cap_table_list_cap_table_snapshots_for_round” rewrote its description, which is the text the model reads security
- Tool “cap_table_list_cumulative_cap_table_snapshots_for_stakeholder” rewrote its description, which is the text the model reads security
- Tool “cap_table_record_cap_table_investment” rewrote its description, which is the text the model reads security
- Tool “cap_table_update_cap_table_round” rewrote its description, which is the text the model reads security
- Tool “card_create_card” rewrote its description, which is the text the model reads security
- Tool “card_get_card” rewrote its description, which is the text the model reads security
- Tool “card_get_card_spend” rewrote its description, which is the text the model reads security
- Tool “client_get_client” rewrote its description, which is the text the model reads security
- Tool “client_get_list_clients” rewrote its description, which is the text the model reads security
- Tool “formation_create_formation” rewrote its description, which is the text the model reads security
- Tool “formation_get_formation_document_download_url” rewrote its description, which is the text the model reads security
- Tool “formation_get_payment_link” rewrote its description, which is the text the model reads security
- Tool “formation_save_cap_table_import” rewrote its description, which is the text the model reads security
- Tool “formation_set_company_type” rewrote its description, which is the text the model reads security
- Tool “formation_set_state” rewrote its description, which is the text the model reads security
- Tool “formation_update_formation” rewrote its description, which is the text the model reads security
- Tool “invoice_get_invoice” rewrote its description, which is the text the model reads security
- Tool “invoice_get_list_invoices” rewrote its description, which is the text the model reads security
- Tool “invoice_settings_get_invoice_settings” rewrote its description, which is the text the model reads security
- Tool “payment_get_list_payments” rewrote its description, which is the text the model reads security
- Tool “payment_get_payment” rewrote its description, which is the text the model reads security
- Tool “signature_get_list_signature_envelopes” rewrote its description, which is the text the model reads security
- Tool “signature_get_signature_envelope” rewrote its description, which is the text the model reads security
- Tool “vendor_bill_create_vendor_bill” rewrote its description, which is the text the model reads security
- Tool “vendor_bill_get_list_vendor_bills” rewrote its description, which is the text the model reads security
- Tool “vendor_bill_get_vendor_bill” rewrote its description, which is the text the model reads security
- Tool “vendor_bill_mark_vendor_bill_paid” rewrote its description, which is the text the model reads security
- Schema quality: 17365 → 30245 ▼ functional
- “card_create_card” added a required parameter “accountId”, so existing callers break ▼ functional
- “field_suggest_field_options” added a required parameter “companyId”, so existing callers break ▼ functional
- “invoice_get_invoice_pdf_url” added a required parameter “companyId”, so existing callers break ▼ functional
- “saved_view_get_list_saved_views” added a required parameter “companyId”, so existing callers break ▼ functional
- Tool coverage: 88% → 100% ▲ functional
- Destructive annotations: 19 of 24 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "accounting_suggest_transfer_pairs" implies "transfer" and declares readOnlyHint instead, contradicting what its own name says it does. functional
- New tool “transaction_get_list_categorization_rules” functional
- New tool “itin_get_itin_application” functional
- New tool “itin_get_itin_mailing_instructions” functional
- New tool “itin_get_itin_quote” functional
- New tool “itin_list_itin_applications” functional
- New tool “itin_list_itin_documents” functional
- New tool “itin_mark_itin_documents_mailed” functional
- New tool “itin_poll_itin_checkout” functional
- New tool “itin_save_itin_intake_draft” functional
- New tool “itin_submit_itin_for_review” functional
- New tool “list_accounts” functional
- New tool “list_agents” functional
- New tool “list_send_recipients” functional
- New tool “mcp_draft_transfer” functional
- New tool “read_agent_spend” functional
- New tool “read_insights” functional
- New tool “read_transactions” functional
- New tool “request_transfer_approval” functional
- New tool “subscription_get_list_subscriptions” functional
- New tool “trademark_attach_document” functional
- New tool “trademark_draft_goods_services” functional
- New tool “trademark_firm_acknowledge_handoff” functional
- New tool “trademark_firm_get_handoff_package” functional
- New tool “trademark_firm_list_pending_handoffs” functional
- New tool “trademark_firm_request_additional_info” functional
- New tool “trademark_firm_update_handoff_status” functional
- New tool “trademark_generate_package” functional
- New tool “trademark_get_application” functional
- New tool “trademark_get_clearance_report” functional
- New tool “trademark_get_list_applications” functional
- New tool “trademark_get_upload_url” functional
- New tool “trademark_recommend_classes” functional
- New tool “trademark_run_clearance” functional
- New tool “trademark_set_classes” functional
- New tool “trademark_set_competitors” functional
- New tool “trademark_set_goods_services” functional
- New tool “trademark_set_mark” functional
- New tool “trademark_set_owner” functional
- New tool “trademark_set_use_dates” functional
- New tool “trademark_start_application” functional
- New tool “trademark_study_competitors” functional
- New tool “trademark_suggest_classes” functional
- New tool “transaction_apply_categorization_rule” functional
- New tool “transaction_batch_categorize_transactions” functional
- New tool “transaction_batch_categorize_transactions_by_account” functional
- New tool “transaction_categorize_transaction_by_account” functional
- New tool “transaction_get_categorization_rule” functional
- New tool “accounting_batch_accept_review_items” functional
- New tool “accounting_batch_set_excluded” functional
- New tool “accounting_confirm_statement_match” functional
- New tool “accounting_confirm_transfer_pair” functional
- New tool “accounting_get_funding_summaries” functional
- New tool “accounting_get_gl_account_type_catalog” functional
- New tool “accounting_get_list_review_items” functional
- New tool “accounting_get_list_statements” functional
- New tool “accounting_get_review_counts” functional
- New tool “accounting_get_statement” functional
- New tool “accounting_set_opening_balance” functional
- New tool “accounting_suggest_statement_matches” functional
- New tool “accounting_suggest_transfer_pairs” functional
- New tool “accounting_unpair_transfer” functional
- New tool “ads_insight_summarize_ad_spend” functional
- New tool “approval_session_create_approval_session” functional
- New tool “autonomous_pay” functional
- New tool “banking_confirm_extracted_value” functional
- New tool “banking_confirm_initial_transfer” functional
- New tool “banking_extract_document_fields” functional
- New tool “banking_get_banking_application” functional
- New tool “banking_get_initial_transfer_preview” functional
- New tool “banking_get_issuance_state” functional
- New tool “banking_hydrate_from_cap_table” functional
- New tool “banking_hydrate_from_formation” functional
- New tool “banking_preview_cap_table_hydration” functional
- New tool “banking_preview_formation_hydration” functional
- New tool “banking_refresh_application_provider_status” functional
- New tool “banking_refresh_owner_verification” functional
- New tool “banking_start_banking_application” functional
- New tool “banking_suggest_industry_code” functional
- New tool “banking_update_banking_application” functional
- New tool “banking_upsert_beneficial_owner” functional
- New tool “captable_hydrate_formation_carry” functional
- New tool “captable_preview_formation_carry” functional
- New tool “card_get_dispute” functional
- New tool “card_get_list_card_disputes” functional
- New tool “company_update_company” functional
- New tool “connection_suggest_connections” functional
- New tool “draft_agent_account” functional
- New tool “draft_payment” functional
- New tool “equity_onboarding_get” functional
- New tool “equity_onboarding_hydrate_formation_carry” functional
- New tool “equity_onboarding_preview_formation_carry” functional
- New tool “equity_onboarding_start” functional
- New tool “equity_onboarding_update” functional
- New tool “formation_check_domain_availability” functional
- New tool “formation_confirm_cohort_deal_terms” functional
- New tool “formation_confirm_naics_code” functional
- New tool “formation_create_domain_checkout” functional
- New tool “formation_create_domain_transfer_checkout” functional
- New tool “formation_extract_safe_terms_ocr” functional
- New tool “formation_get_domain_order” functional
- New tool “formation_get_domain_transfer_status” functional
- New tool “formation_get_formation_timeline” functional
- New tool “formation_list_company_domains” functional
- New tool “formation_lookup_domain_dns_records” functional
- New tool “formation_record_entity_guidance_quiz” functional
- New tool “formation_set_banking_intent” functional
- New tool “formation_set_company_setup_details” functional
- New tool “formation_set_selected_domain” functional
- New tool “formation_set_team_equity” functional
- New tool “formation_suggest_naics_codes” functional
- New tool “formation_update_shareholder” functional
- New tool “insight_get_insight” functional
- New tool “insight_get_savings_summary” functional
- New tool “itin_check_itin_eligibility” functional
- New tool “itin_create_itin_checkout” functional
- New tool “itin_create_itin_document_upload_link” functional
- “accounting_preview_close” added an optional parameter “granularity” cosmetic
- “cap_table_generate_cap_table_agreement_pdf” added an optional parameter “templateFields” cosmetic
- “cap_table_import_safe” added an optional parameter “unsignedDocument” cosmetic
- “cap_table_record_cap_table_wire” added an optional parameter “reviewedProof” cosmetic
- “formation_add_shareholder” added an optional parameter “addressType” cosmetic
- “formation_set_company_address” added an optional parameter “physicalBusinessAddress” cosmetic
- “formation_start_formation” added an optional parameter “inviteToken” cosmetic
- “signature_create_envelope” added an optional parameter “sourceCompanyId” cosmetic
- “signature_create_envelope” added an optional parameter “sourceDocumentId” cosmetic
- “transaction_get_summary” added an optional parameter “scope” cosmetic
- “transaction_get_summary” added an optional parameter “timeBucket” cosmetic
- “captable_send_safe_for_signature” dropped the optional parameter “accessCode” cosmetic
- “formation_confirm_payment” dropped the optional parameter “paymentConfirmed” cosmetic
- “formation_get_payment_link” dropped the optional parameter “billingInterval” cosmetic
- “signature_create_envelope” dropped the optional parameter “accessCode” cosmetic
- 10 Sept 26 +1
We did not load change detail this far back for this component, so this day may have recorded more than is shown.
- 7 Sept 26 +1
We did not load change detail this far back for this component, so this day may have recorded more than is shown.
- 5 Sept 26 +1
We did not load change detail this far back for this component, so this day may have recorded more than is shown.
- 3 Sept 26 +1
We did not load change detail this far back for this component, so this day may have recorded more than is shown.
- 1 Sept 26 +1
We did not load change detail this far back for this component, so this day may have recorded more than is shown.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 21 Sept 2026 · Probed https://mcp.lovie.co/mcp/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=mcp.lovie.co | CN=WE1,O=Google Trust Services,C=US | 11 Aug 2026 | 9 Nov 2026 | ECDSA 256 | ECDSA-SHA256 | bd5572c47fda70e70ee37c945006247c |
| SANs: mcp.lovie.co | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of mcp.lovie.co. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| co. | present | 7786 | 8 | Verified |
| lovie.co. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Enforced and verified
The endpoint asked for a token and published valid RFC 9728 metadata describing how to get one.
| Result | Enforced and verified |
|---|---|
| Enforced | On tool calls |
| HTTP status | 200 |
WWW-Authenticate challenge Bearer realm="mcp", resource_metadata="https://mcp.lovie.co/.well-known/oauth-protected-resource/mcp/mcp"
Bearer realm="mcp", resource_metadata="https://mcp.lovie.co/.well-known/oauth-protected-resource/mcp/mcp" | Header | Value |
|---|---|
| strict-transport-security | max-age=0; includeSubDomains; preload |
| x-content-type-options | nosniff |
Protected resource metadata
| Document | https://mcp.lovie.co/.well-known/oauth-protected-resource/mcp/mcp |
|---|---|
| Retrieved | Yes |
| Resource | https://mcp.lovie.co/mcp/mcp |
| Authorisation server | https://clerk.lovie.co |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://mcp.lovie.co/mcp/mcp | Verified | 200 | |
| http (plaintext) | http://mcp.lovie.co/mcp/mcp | HTTPS enforced | 301 | https://mcp.lovie.co/mcp/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
documents_get_document Get Document ~44
Fetch one document's metadata and its related signed/unsigned set.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| documentId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| document | – | – | – |
| related | array | – | – |
No examples provided.
documents_get_user_template Get User Template ~46
Fetch one user-uploaded template including Vision-detected fillable fields.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| templateId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| template | – | – | – |
No examples provided.
documents_list_documents List Documents ~48
List a company's documents, filtered by type, source, category, or template.
| Name | Type | Req | Description |
|---|---|---|---|
| filter | object | – | – |
| pageSize | integer | – | – |
| pageToken | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| documents | array | – | – |
| nextPageToken | string | – | – |
| totalCount | integer | – | – |
No examples provided.
documents_list_saved_signatures List Saved Signatures ~33
List the caller's saved signatures for the selected company.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| savedSignatures | array | – | – |
No examples provided.
documents_list_user_templates List User Templates ~43
List company-scoped user-uploaded templates (Use your own template). Separate from Lovie's builtin catalog.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| templates | array | – | – |
No examples provided.
documents_update_document Update Document ~59
Rename a stored document by updating its title. Company-scoped: only the owning company's members may rename.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| documentId | object | yes | UUID value wrapper. |
| title | string | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
draft_agent_account Draft Agent Account ~90
Draft a proposed agent-account setup for human review: a suggested spend envelope (per-payment / daily caps), allowed rails, and status. Creates nothing — a human provisions from the spec.
| Name | Type | Req | Description |
|---|---|---|---|
| agentName | string | – | – |
| companyId | string | – | – |
| purpose | string | – | – |
| suggestedDailyCents | integer | – | – |
| suggestedPerPaymentCents | integer | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| specJson | string | – | – |
| summary | string | – | – |
No examples provided.
draft_payment Draft Payment ~138
Draft a payment for human review: returns a canonical, ready-to-sign Mandate (body JSON + JCS hash) and a plain-language summary. Does NOT move money or run the pipeline — a human commits it by signing and submitting.
| Name | Type | Req | Description |
|---|---|---|---|
| accountNumberId | string | – | – |
| amountCents | integer | – | – |
| companyId | string | – | – |
| counterpartyRef | string | – | – |
| customerId | string | – | – |
| expiresInSeconds | integer | – | – |
| keyFingerprint | string | – | – |
| memo | string | – | – |
| rail | string | – | – |
| signerId | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| jcsHash | string | – | – |
| mandateBodyJson | string | – | – |
| summary | string | – | – |
No examples provided.
equity_onboarding_get Get Equity Onboarding ~105
Returns a company's proof-of-formation intake: the facts on file, which sections are still outstanding and why, and how much is answered. Read-only. Resolve it by company rather than by id — the server finds the company's one open intake. A section that comes back with a handoff_url cannot be finished by any tool: send the person to that URL.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | – | UUID value wrapper. |
| onboardingId | object | – | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| onboarding | – | – | – |
No examples provided.
equity_onboarding_hydrate_formation_carry Hydrate Equity Onboarding From Formation ~112
Carries a company's Lovie formation into its intake: the facts, the registered agent, and the stamped certificate of incorporation or formation. Idempotent, and it never overwrites an answer the person gave themselves. Call this before asking for anything on a company Lovie formed — it usually settles the proof section outright, which is the one section no tool can fill.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| onboardingId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| onboarding | – | – | – |
No examples provided.
equity_onboarding_preview_formation_carry Preview Equity Onboarding Hydration ~75
Says what a company's Lovie formation would carry into the intake, without writing anything. Read-only. When the formation cannot be read the answer is that it is unavailable — not an error — so offer to collect the facts directly instead of retrying.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| available | boolean | – | – |
| formationId | – | – | – |
| prefillPercent | integer | – | – |
| rows | array | – | – |
| stillNeeded | array | – | – |
No examples provided.
equity_onboarding_start Start Equity Onboarding ~81
Opens a company's proof-of-formation intake so its cap table can be set up. Idempotent: a company has at most one open intake, and calling again returns the existing one rather than splitting the answers across two records. Safe to call first when you do not know whether an intake exists.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| onboarding | – | – | – |
No examples provided.
equity_onboarding_submit Submit Equity Onboarding ~89
Finishes the intake and records the company's proof of formation. A refusal is a normal answer, not a failure: it names the sections still blocking and, for a section no tool can clear, the URL where a person finishes it. Read that back rather than retrying. On success the cap table opens for a named, documented entity.
| Name | Type | Req | Description |
|---|---|---|---|
| onboardingId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| blockingSections | array | – | – |
| onboarding | – | – | – |
No examples provided.
equity_onboarding_update Update Equity Onboarding ~142
Records the company facts the intake asks for: legal name, entity type, the state (or, for a non-US company, the country) it was incorporated in, the formation date, the company's own address, and — for a US company — its registered agent's name and address. Only the paths named in the field mask are written, and each one lands attributed to the person who answered. The employer identification number is accepted but never required — a company formed days ago will not have one for weeks, and its absence does not hold the intake up.
| Name | Type | Req | Description |
|---|---|---|---|
| onboarding | object | yes | – |
| updateMask | string | yes | Comma-separated field paths. |
| Name | Type | Req | Description |
|---|---|---|---|
| onboarding | – | – | – |
No examples provided.
field_get_field Get Field ~53
Get a single field by ID or code
| Name | Type | Req | Description |
|---|---|---|---|
| code | object | – | Lowercase kebab-case code identifier. |
| companyId | object | – | UUID value wrapper. |
| id | object | – | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| field | – | – | – |
No examples provided.
field_get_field_option Get Field Option ~66
Get a single field option by ID or code
| Name | Type | Req | Description |
|---|---|---|---|
| code | object | – | Lowercase kebab-case code identifier. |
| companyId | object | – | UUID value wrapper. |
| fieldId | object | yes | UUID value wrapper. |
| id | object | – | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| option | – | – | – |
No examples provided.
field_get_list_field_options List Field Options ~42
List field options with filtering and pagination
| Name | Type | Req | Description |
|---|---|---|---|
| filter | object | yes | – |
| pageSize | integer | – | – |
| pageToken | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| nextPageToken | string | – | – |
| options | array | – | – |
| totalCount | integer | – | – |
No examples provided.
field_get_list_fields List Fields ~48
List fields with filtering and pagination
| Name | Type | Req | Description |
|---|---|---|---|
| filter | object | – | – |
| includeOptions | boolean | – | – |
| pageSize | integer | – | – |
| pageToken | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| fields | array | – | – |
| nextPageToken | string | – | – |
| totalCount | integer | – | – |
No examples provided.
field_suggest_field_options Suggest Field Options ~62
SuggestFieldOptions asks the LLM to propose dropdown option labels for a SELECT-typed field. Synchronous unary call.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| existingOptions | array | – | – |
| fieldName | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| suggestions | array | – | – |
No examples provided.
field_value_get_list_entity_field_values List Entity Field Values ~40
List an entity's field values (detail/edit/admin flows only — N+1 over a grid).
| Name | Type | Req | Description |
|---|---|---|---|
| filter | object | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| values | array | – | – |
No examples provided.
formation_acknowledge_warnings Acknowledge Warnings ~75
Acknowledges entity-type warnings raised when the user chooses an entity type against the recommendation (e.g. an LLC despite indicators pointing to C-Corp). Required before proceeding whenever warnings were raised while setting the company type.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| warningTypes | array | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| acknowledgedWarnings | array | – | – |
| formationId | – | – | – |
| message | string | – | – |
No examples provided.
formation_add_shareholder Add Shareholder ~91
AddShareholder adds a shareholder or LLC member
| Name | Type | Req | Description |
|---|---|---|---|
| address | object | – | – |
| addressType | string | – | – |
| string | – | – | |
| firstName | string | – | – |
| formationId | object | yes | UUID value wrapper. |
| lastName | string | – | – |
| ownershipPercentage | string | – | – |
| phone | string | – | – |
| role | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | – | – | – |
| ownershipComplete | boolean | – | – |
| shareholder | – | – | – |
| totalOwnership | string | – | – |
| totalShareholders | integer | – | – |
No examples provided.
formation_append_conversation_entry Append Conversation Entry ~52
AppendConversationEntry atomically appends one or more chat entries to the formation's conversation_history. Owner-scoped.
| Name | Type | Req | Description |
|---|---|---|---|
| entries | array | – | – |
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| formation | – | – | – |
No examples provided.
formation_approve_certificate Approve Certificate ~149
Records the user's approval of the reviewed formation details (the certificate checkpoint). This only records approval — it files NOTHING with any state and charges NOTHING, so it is always safe to call, including during testing; never refuse or stop short because it is a 'test'. Call it once the user has reviewed the details and confirmed they are correct. As soon as this returns, call formation_get_payment_link with the SAME formation_id. Formation is a single one-time payment — there is NO subscription and NO monthly/annual choice, so do NOT ask the user to pick a billing cadence. Do NOT start a new formation or re-run earlier steps.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| approvedAt | – | – | – |
| certificateId | string | – | – |
| formationId | – | – | – |
| nextStep | string | – | – |
No examples provided.
formation_check_domain_availability Check Domain Availability ~53
Checks whether a specific fully-qualified domain (e.g. "acme.com") is available to register. Informational only; does not read or change any formation or company.
| Name | Type | Req | Description |
|---|---|---|---|
| domain | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| available | boolean | – | – |
| message | string | – | – |
| reason | string | – | – |
No examples provided.
formation_check_name Check Name ~31
CheckName checks company name availability in the selected state
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| companyName | string | – | – |
| formationId | – | – | – |
| result | – | – | – |
No examples provided.
formation_claim_demo_formations Claim Demo Formations ~92
ClaimDemoFormations reassigns formations created during a demo session (under a hardcoded demo user) to a newly-signed-up real user. This is a cross-user mutation; the server enforces reviewer/admin/service role.
| Name | Type | Req | Description |
|---|---|---|---|
| fromUserId | object | yes | UUID value wrapper. |
| sessionId | object | yes | UUID value wrapper. |
| toUserId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| claimed | integer | – | – |
| formationId | – | – | – |
No examples provided.
formation_confirm_cohort_deal_terms Confirm Cohort Deal Terms ~68
Record that the founder confirms the starter investment terms their accelerator offered, as shown on their formation. Idempotent. This records agreement only — it does not create a security, change a cap table, or move money.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| confirmedAt | – | – | – |
No examples provided.
formation_confirm_naics_code Confirm Naics Code ~131
Records the NAICS industry classification a founder has chosen for their formation. Call formation_suggest_naics_codes first, show the candidates with their official titles, and call this ONLY after the person has explicitly picked one. Never choose on their behalf and never infer a code from the business description alone: this value travels onto a bank application, where a wrong classification is a compliance problem rather than a typo. The code is checked against the 2022 edition and a code naming no real industry is refused.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| naicsCode | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | – | – | – |
| naicsCode | string | – | – |
| naicsTitle | – | – | – |
No examples provided.
formation_confirm_payment Confirm Payment ~119
Verifies with Stripe that payment actually completed and, on success, advances the formation to filing. Usually unnecessary — payment auto-confirms via webhook once the user pays. Only call this if the user explicitly returns and says they have paid. A user saying they paid is NOT proof — only a successful result here confirms payment. If it is not successful, do not tell the user payment succeeded or proceed to filing; ask them to complete checkout and retry.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| stripeSessionId | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | – | – | – |
| message | string | – | – |
| paymentStatus | string | – | – |
| status | string | – | – |
No examples provided.
formation_create_domain_checkout Create Domain Checkout ~109
Starts a PAID domain purchase for the company: quotes the live registrar price plus Lovie's margin and returns a Stripe Checkout URL — give it to the user, payment happens on the Stripe page. Companies still eligible for their included free domain are refused here (their first domain uses the free flow). Requires passed identity verification (KYC); a failed-precondition answer means walk the user through verifying first.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| domain | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| amountCents | string | – | – |
| checkoutUrl | string | – | – |
| currency | string | – | – |
No examples provided.
formation_create_domain_transfer_checkout Create Domain Transfer Checkout ~81
Starts transferring a domain the company already owns elsewhere INTO Lovie: returns a Stripe Checkout URL covering the transfer (which includes a one-year renewal). After payment, start the transfer with the auth code from the current registrar. Requires passed identity verification (KYC).
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| domain | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| amountCents | string | – | – |
| checkoutUrl | string | – | – |
| currency | string | – | – |
No examples provided.
formation_create_formation Create Formation ~87
CreateFormation creates a formation with full data (MCP/bulk use case). A request whose shareholders carry ssn_last4 is refused with INVALID_ARGUMENT and writes nothing: those four digits are recorded only by SetShareholderTaxIdentifier, after the whole identifier has reached the secret store. Accepting them here would report a saved number that nothing holds.
| Name | Type | Req | Description |
|---|---|---|---|
| formation | object | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | – | yes | – |
No examples provided.
formation_delete_pending_domain Delete Pending Domain ~61
Removes an abandoned pending domain purchase attempt from the company's domain list. Only pending (never-completed) purchases can be removed; registered domains cannot be deleted this way.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| domain | string | – | – |
Structured output declared, but exposes no named fields.
No examples provided.
formation_describe_business Describe Business ~99
Analyzes a business description and recommends the best entity type (LLC or C-Corp) with a confidence score. Call this once you understand what the user is building. When the recommendation is LLC or confidence is not high, mention that Lovie offers a free LLC-to-C-Corp conversion later.
| Name | Type | Req | Description |
|---|---|---|---|
| description | object | yes | Free-form description (max 5000 chars). |
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | – | – | – |
| indicators | array | – | – |
| recommendation | – | – | – |
No examples provided.
formation_extract_cap_table Extract Cap Table ~140
Runs vision OCR on an uploaded cap table file and returns the extracted rows without persisting them. Each row may include a vesting schedule (vesting_start_date / vesting_total_months / vesting_cliff_months) for service equity held by founders, employees, and advisors. PRESERVE these vesting fields and pass them through to RecordCapTableInvestment when creating each holding — do not drop them or record such holdings as fully vested. Investor instruments (SAFE, preferred) carry no vesting.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| mimeType | string | – | – |
| sourceS3Uri | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| extractedShareholders | array | – | – |
| formationId | – | – | – |
| ocrConfidence | string | – | – |
| sourceS3Uri | string | – | – |
| sourceTotalShares | string | – | – |
| totalOwnershipPercentage | string | – | – |
| totalShares | string | – | – |
| warnings | array | – | – |
No examples provided.
formation_extract_cap_table_ocr Extract Cap Table OCR ~145
Runs vision OCR on an uploaded cap table for the active company and returns the extracted rows without persisting them. Each row may include a vesting schedule (vesting_start_date / vesting_total_months / vesting_cliff_months) for service equity held by founders, employees, and advisors. PRESERVE these vesting fields and pass them through to RecordCapTableInvestment when creating each holding — do not drop them or record such holdings as fully vested. Investor instruments (SAFE, preferred) carry no vesting.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| mimeType | string | – | – |
| sourceS3Uri | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| extractedShareholders | array | – | – |
| ocrConfidence | string | – | – |
| sourceS3Uri | string | – | – |
| sourceTotalShares | string | – | – |
| totalOwnershipPercentage | string | – | – |
| totalShares | string | – | – |
| warnings | array | – | – |
No examples provided.
formation_extract_rsa_terms_ocr Extract RSA Terms OCR ~228
Runs vision OCR on an already-uploaded signed Restricted Stock Purchase/Award Agreement (RSA) PDF for the active company and returns the founder and company names plus structured terms (total_shares, unvested_shares, price_per_share, grant_date, vesting_start_date / vesting_total_months / vesting_cliff_months, acceleration_clause, repurchase_right, 83(b) status, etc.) WITHOUT persisting anything. Empty string / 0 / false means the value was not stated in the document — never fabricate. Flow: first call GetOcrUploadURL with kind=RSA and upload the PDF, then call this tool with the returned source_s3_uri. To persist the grant and link the document, pass the extracted terms and the SAME source_s3_uri to CreateCapTableAgreement with type=CAP_TABLE_AGREEMENT_TYPE_RSA — preserve the vesting fields, do not drop them.
| Name | Type | Req | Description |
|---|---|---|---|
| agentCode | string | – | – |
| companyId | object | yes | UUID value wrapper. |
| sourceS3Uri | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| companyName | string | – | – |
| founderName | string | – | – |
| ocrConfidence | string | – | – |
| rsaTerms | – | – | – |
| sourceS3Uri | string | – | – |
| warnings | array | – | – |
No examples provided.
formation_extract_safe_terms Extract SAFE Terms ~255
Reads a SAFE PDF and returns its terms WITHOUT saving anything. Always call this before ImportSAFE and show the result to the user for confirmation — never import a SAFE the user has not seen. Present one block per document, largest investment first, with exactly these fields in this order: investor name, investment amount, valuation cap, discount, post-money or pre-money, date, and which existing stakeholder it will be matched to (or that a new one will be created). Then state the effect on the cap table as three figures — stakeholders, SAFEs and SAFE capital now, what this import adds, and the totals after — and ask the user to confirm. Report the confidence score and every warning verbatim in plain language rather than as codes. Two things block the import until the user resolves them: a missing date (ask for it; a SAFE is never imported without one) and a company name on the document that differs from the company being imported into (say both names and ask the user to confirm it belongs here). This is the same review the web upload screen performs, so keep the wording and order identical.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| sourceS3Uri | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| companyName | string | – | – |
| formationId | – | – | – |
| investorName | string | – | – |
| ocrConfidence | string | – | – |
| safeTerms | – | – | – |
| sourceS3Uri | string | – | – |
| warnings | array | – | – |
No examples provided.
formation_extract_safe_terms_ocr Extract SAFE Terms OCR ~70
ExtractSafeTermsOcr runs vision OCR on a SAFE PDF for a company (no formation required). Company-scoped: requires an active company.
| Name | Type | Req | Description |
|---|---|---|---|
| agentCode | string | – | – |
| companyId | object | yes | UUID value wrapper. |
| sourceS3Uri | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| companyName | string | – | – |
| investorName | string | – | – |
| isSigned | boolean | – | – |
| ocrConfidence | string | – | – |
| safeTerms | – | – | – |
| sourceS3Uri | string | – | – |
| warnings | array | – | – |
No examples provided.
formation_generate_certificate Generate Certificate ~99
Prepares the Certificate of Formation/Incorporation as a review checkpoint before filing. This is a confirmation step, NOT a downloadable document — the official, state-issued certificate is produced only after payment and state filing, so do NOT present a download link here. Summarize the formation details for the user to review, then call formation_approve_certificate only once they explicitly confirm the details are correct.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| certificateId | string | – | – |
| downloadUrl | string | – | – |
| expiresAt | – | – | – |
| formationId | – | – | – |
| minutesRemaining | integer | – | – |
No examples provided.
formation_get_domain_auth_code Get Domain Auth Code ~117
Reveals the domain's transfer authorization (EPP) code and lifts the transfer lock — the customer's exit door, shown once and never stored. Requires a trusted-device approval: open one with identity's create-approval-session tool (action_type domain_auth_code_reveal, payload {domain}), have the user approve on their phone, then pass the session id as approval_session_id.
| Name | Type | Req | Description |
|---|---|---|---|
| approvalSessionId | object | – | UUID value wrapper. |
| companyId | object | yes | UUID value wrapper. |
| domain | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| authCode | string | – | – |
No examples provided.
formation_get_domain_order Get Domain Order ~50
Returns one domain purchase's live status — use it to answer 'did my domain go through?' after checkout.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| domain | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| autoRenew | boolean | – | – |
| expiresAt | – | – | – |
| status | string | – | – |
No examples provided.
formation_get_domain_transfer_status Get Domain Transfer Status ~63
Reports a transfer-in's live progress at the registrar (waiting on the losing registrar, completed, failed). Poll sparingly — registrar transfers move on a scale of days.
| Name | Type | Req | Description |
|---|---|---|---|
| companyId | object | yes | UUID value wrapper. |
| domain | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| detail | string | – | – |
| status | string | – | – |
No examples provided.
formation_get_ein_filing_info Get EIN Filing Info ~41
GetEinFilingInfo returns the stored payload without the SSN/ITIN.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| hasSsn | boolean | – | – |
| info | – | – | – |
No examples provided.
formation_get_filing_fee Get Filing Fee ~64
GetFilingFee returns the state formation filing fee (table amount, formatted string, and Stripe Price id when charged via a pre-created Price). Used by the onboarding review/certificate step. Stateless lookup — no formation context required.
| Name | Type | Req | Description |
|---|---|---|---|
| state | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| amountCents | string | – | – |
| formatted | string | – | – |
| stripePriceId | string | – | – |
No examples provided.
formation_get_formation Get Formation ~121
Returns the full formation record for a formation_id: company name, entity type, state, business address, registered agent, share structure, shareholders, authorized party, EIN, certificate data, payment and filing status, and timestamps. Use this to answer specific questions such as the user's EIN, registered agent, company address, or shareholders, and to RESUME an in-progress formation with a formation_id you already have — it works both before and after sign-in (do not start a new formation to resume).
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| formation | – | – | – |
| progress | – | – | – |
No examples provided.
formation_get_formation_document_download_url Get Formation Document Download URL ~84
Returns a short-lived signed URL for one of a formation's documents. Reviewer role only. The URL is a read credential and expires; treat it as one — do not repeat it back or store it anywhere it outlives the answer it was fetched for.
| Name | Type | Req | Description |
|---|---|---|---|
| documentType | string | – | – |
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| contentType | string | – | – |
| downloadUrl | string | – | – |
| expiresAt | – | – | – |
| fileName | string | – | – |
No examples provided.
formation_get_formation_info Get Formation Info ~32
GetFormationInfo returns educational content topics or content for a specific topic
| Name | Type | Req | Description |
|---|---|---|---|
| topic | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | – | – |
| topic | string | – | – |
| topics | array | – | – |
No examples provided.
formation_get_formation_purchase_quote Get Formation Purchase Quote ~73
GetFormationPurchaseQuote returns the CorpTools filing product, methods, parsed form schema, prefilled values, and missing required fields for a formation (non-DE/WY states). Reviewer-only; no side effects beyond ensuring a CorpTools company record exists.
| Name | Type | Req | Description |
|---|---|---|---|
| formationId | object | yes | UUID value wrapper. |
| Name | Type | Req | Description |
|---|---|---|---|
| corpToolsCompanyId | string | – | – |
| filingMethods | array | – | – |
| missingFields | array | – | – |
| prefilled | – | – | – |
| productId | string | – | – |
| productName | string | – | – |
| schemaFields | array | – | – |
No examples provided.
What is the Lovie Company Formation MCP server?
Lovie Company Formation is an MCP server listed in the public MCP registry as co.lovie/company-formation. Form companies, manage bank accounts, cards, invoices and more, directly from your AI coding tools. This page covers its hosted endpoint (https://mcp.lovie.co/mcp/mcp).
Is the Lovie Company Formation MCP server safe to use?
Lovie Company Formation scores 89 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Lovie Company Formation MCP server expose?
Lovie Company Formation exposes 333 tools: account_get_account, account_get_list_account_details, accounting_batch_accept_review_items, accounting_batch_set_excluded, accounting_cancel_schedule, and 328 more. Their descriptions and schemas cost roughly 29,622 tokens of context every time the server is loaded.
Does the Lovie Company Formation MCP server require authentication?
Yes. Lovie Company Formation asked us for credentials when we connected, so you will need to authorise it in your MCP client before it can do anything.
Is the Lovie Company Formation MCP server still maintained?
Lovie Company Formation is still listed as active in the MCP registry. We last reached this channel on 21 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.