Skip to main content
Glama

Lovie Company Formation

Extract Fast Terms OCR

formation_extract_fast_terms_ocr

Runs vision OCR on an already-uploaded FAST (Founder / Advisor Standard Template) advisor agreement PDF for the active company and returns the grant summary it states — advisor_name, company_name, tier, engagement_level, equity_percentage, shares, effective_date, vesting_total_months, vesting_cliff_months, vesting_frequency, signed, signature_date and governing_law — WITHOUT persisting anything. Empty string / 0 / false means the value was not stated in the document; never fabricate one. A vesting_cliff_months of 0 is a real answer, not a missing one: a FAST that says "Cliff: None" has no cliff. Flow: first call GetOcrUploadURL with kind=FAST and upload the PDF, then call this tool with the returned source_s3_uri. To persist the grant, pass the extracted terms and the SAME source_s3_uri to CreateCapTableAgreement with type=CAP_TABLE_AGREEMENT_TYPE_FAST — preserve the vesting fields, do not drop them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
agentCodeNo
companyIdYesUUID value wrapper.
sourceS3UriNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
warningsNo
fastTermsNo
sourceS3UriNo
ocrConfidenceNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare openWorldHint=false and destructiveHint=false, which the description reinforces with the explicit 'WITHOUT persisting anything' guarantee. It goes further by defining the sentinel semantics of results (empty string / 0 / false means not stated, never fabricate) and the non-obvious cliff=0 case, which an agent could easily misread as missing data.

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?

Front-loaded with the operation and result contract, then the sentinel semantics, then the flow. Dense and mostly waste-free, though the enumerated return-field list is long and partly redundant given an output schema exists.

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

Completeness5/5

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

For a non-destructive, non-persisting OCR extraction tool with an output schema, the description covers the input prerequisite, the value-interpretation rules, and the downstream persistence path. An agent has everything needed to call it correctly and act on the result.

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 only 33% across 3 parameters, so the description is expected to compensate. It explains the origin and expected format of sourceS3Uri (the URI returned by GetOcrUploadURL) and implies companyId is the active company, but says nothing about agentCode or the UUID value wrapper for companyId.

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?

States a specific verb+resource+scope: vision OCR over an already-uploaded FAST advisor agreement PDF for the active company, returning a named set of grant fields without persisting. It is immediately distinguishable from the nearby siblings formation_extract_safe_terms_ocr, formation_extract_rsa_terms_ocr, and formation_extract_safe_terms by the FAST document type.

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?

Gives an explicit prerequisite and sequencing flow (call GetOcrUploadURL with kind=FAST and upload, then pass the returned source_s3_uri here), plus the follow-on action with the exact tool and type (CreateCapTableAgreement with CAP_TABLE_AGREEMENT_TYPE_FAST) and a caution not to drop vesting fields. This is exactly when-to-use guidance with named alternatives.

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.