Skip to main content
Glama

start_company_receive

Start the path for this company to receive money. Creates a Stripe connected account and returns an onboarding_url the founder opens on Stripe's hosted identity form (Stripe holds SSN/ID — FreedomOS does not). Use when the company cannot receive yet and a real payment is waiting (sponsor, invoice, checkout). After the founder finishes and charges_enabled, call create_payment_link. Do not collect identity documents here. Do not open a bank via Mercury.

Routing: Company cannot receive / start Stripe KYC / Account Link → this tool. Founder completes Stripe's form. Then create_payment_link.

[write-tier — first use may require a manager's approval; a from-now-on approval makes future calls seamless, a just-once approval re-asks next time.]

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
countryNo2-letter country for the Stripe connected account (default US).
companyIdYesFreedomOS company id to act within (you must be a member). Required for company-scoped tools.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that this creates a Stripe connected account, that Stripe holds SSN/ID rather than FreedomOS, that it returns an onboarding_url, and that it is a write-tier action potentially requiring approval. This is substantial, though it does not discuss failure modes or repeated-call behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but organized, front-loading purpose before usage and constraints. The routing paragraph is slightly redundant with the earlier sentence about create_payment_link, but the extra detail on approvals and exclusions earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a multi-step external Stripe flow with no output schema, the description explains the key return value, the privacy boundary, the prerequisite condition, and the next action. It could additionally specify how to check charges_enabled or what happens if the company is already receiving money, but it covers the essential invocation context.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents companyId and country. The description adds context around Stripe KYC but does not add meaningful parameter-level semantics beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb ('Start the path'), the resource ('this company to receive money'), and the concrete action ('Creates a Stripe connected account and returns an onboarding_url'). It clearly distinguishes this from the sibling create_payment_link by positioning this as the initial KYC/onboarding step.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says when to use this tool ('Use when the company cannot receive yet and a real payment is waiting'), what not to do ('Do not collect identity documents here', 'Do not open a bank via Mercury'), and what to call next ('After the founder finishes and charges_enabled, call create_payment_link'). The routing line further reinforces the decision path.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A3.6/5.0
Disambiguation4/5

The tool set is heavily disambiguated by detailed routing descriptions, domain prefixes, and lifecycle verbs, so most tools have a clear intended purpose. However, at 297 tools there are still close pairs and overlapping decision surfaces (e.g., approval workflows, 'what should I work on' readers, multiple finance/ads readers) that require careful description reading to avoid misselection.

Naming Consistency4/5

Naming is predominantly consistent snake_case verb_noun with strong domain prefixes like shopify_, x_, posthog_, and list_/create_/update_ patterns. Minor inconsistencies exist, such as several collection-returning tools using get_ (get_team_members, get_icps, get_okrs) instead of list_, and some generate_ vs create_ vs draft_ verbs, but the pattern is still predictable overall.

Tool Count1/5

297 tools is an extreme outlier and far beyond a usable MCP tool surface. Even a large suite has no justification for this count in one server; the agent would struggle to select among hundreds of similarly descriptive tools, and the natural 3-15 tool range is exceeded by nearly 20x.

Completeness4/5

The individual domains represented — OKRs, CRM/leads, Shopify, content pipelines, ads, PostHog, team hiring, knowledge, finance, and session management — are covered remarkably well with full lifecycle patterns. Minor gaps exist, such as no full deal CRUD, no delete for several Google/Shopify artifacts, and some analytical surfaces being read-heavy, but most workflows can be completed without dead ends.

Resources