Track offer status
track_offer_statusRetrieve the status of previously submitted SecureLend enquiries by application ID or applicant email.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Enquiry id. | |
| No | |||
| enquiryId | No | ||
| applicationId | No |
track_offer_statusRetrieve the status of previously submitted SecureLend enquiries by application ID or applicant email.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Enquiry id. | |
| No | |||
| enquiryId | No | ||
| applicationId | No |
Changes observed during successful MCP inspections.
Input schema / additionalPropertiesPrevious value: -trueNew value: +falseInput schema / propertiesAdded value: +{
+ "applicationId": {
+ "type": "string"
+ },
+ "email": {
+ "type": "string"
+ },
+ "enquiryId": {
+ "type": "string"
+ },
+ "id": {
+ "description": "Enquiry id.",
+ "type": "string"
+ }
+}Input schema / $schemaRemoved value: -"http://json-schema.org/draft-07/schema#"Input schema / additionalPropertiesAdded value: +trueInput schema / propertiesRemoved value: -{
- "applicationId": {
- "description": "The unique ID of the application to track.",
- "type": "string"
- }
-}Input schema / requiredRemoved value: -[
- "applicationId"
-]Output schema / (root)Previous value: -{
- "$schema": "http://json-schema.org/draft-07/schema#",
- "additionalProperties": false,
- "properties": {
- "applications": {
- "items": {
- "additionalProperties": false,
- "properties": {
- "applicationId": {
- "description": "Alias of `id`. Pass this value as `applicationId` to the `track_offer_status` tool to check enquiry status later.",
- "type": "string"
- },
- "createdAt": {
- "description": "The timestamp when the application was created.",
- "type": "string"
- },
- "id": {
- "description": "The unique ID of the application.",
- "type": "string"
- },
- "productType": {
- "anyOf": [
- {
- "enum": [
- "INSTALLMENT_LOAN",
- "LINE_OF_CREDIT",
- "SHORT_TERM_CREDIT",
- "BNPL",
- "MORTGAGE",
- "AUTO_LOAN",
- "AUTO_REFINANCE",
- "STUDENT_LOAN",
- "STUDENT_LOAN_REFINANCE",
- "BUSINESS_LOAN",
- "BUSINESS_BANKING",
- "BUSINESS_CREDIT_CARD",
- "PERSONAL_BANKING",
- "SAVINGS_ACCOUNT",
- "PERSONAL_CREDIT_CARD"
- ],
- "type": "string"
- },
- {
- "type": "string"
- }
- ],
- "description": "The type of product applied for."
- },
- "providers": {
- "description": "The list of providers the application was sent to.",
- "items": {
- "additionalProperties": false,
- "properties": {
- "error": {
- "type": "string"
- },
- "providerApplicationId": {
- "type": "string"
- },
- "providerId": {
- "type": "string"
- },
- "providerName": {
- "type": "string"
- },
- "referralUrl": {
- "format": "uri",
- "type": "string"
- },
- "status": {
- "enum": [
- "PENDING",
- "SUBMITTED",
- "REFERRED",
- "ERROR",
- "RECEIVED"
- ],
- "type": "string"
- },
- "submittedAt": {
- "type": "string"
- }
- },
- "required": [
- "providerId",
- "providerName",
- "status"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "requiredInfo": {
- "additionalProperties": false,
- "description": "Details on information required from the applicant when status is ACTION_REQUIRED.",
- "properties": {
- "documents": {
- "description": "List of required document types.",
- "items": {
- "type": "string"
- },
- "type": "array"
- },
- "message": {
- "type": "string"
- },
- "sections": {
- "description": "List of required additional information sections.",
- "items": {
- "type": "string"
- },
- "type": "array"
- }
- },
- "type": "object"
- },
- "status": {
- "description": "The current status of the application.",
- "enum": [
- "DRAFT",
- "SUBMITTED",
- "IN_REVIEW",
- "ACTION_REQUIRED",
- "APPROVED",
- "DECLINED",
- "CLOSED"
- ],
- "type": "string"
- }
- },
- "required": [
- "id",
- "createdAt",
- "status",
- "productType",
- "providers"
- ],
- "type": "object"
- },
- "type": "array"
- }
- },
- "required": [
- "applications"
- ],
- "type": "object"
-}New value: +nullDoes the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered elsewhere. The description adds the scoping fact that lookups apply to already-submitted enquiries, but says nothing about distinct status values, behavior for unknown IDs, or openWorld lookup implications.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; the verb and scope lead. It is arguably too terse for the ambiguity in the parameter set, but on conciseness alone it wastes nothing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and four loosely documented identifier parameters, the description should clarify which identifier to supply and what the returned status looks like. Neither is addressed, leaving an agent to guess at invocation correctness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25% (only 'id' has a description), and the schema exposes four overlapping identifiers: id, enquiryId, applicationId, and email. The description mentions only application ID or email, leaving id and enquiryId unexplained and giving no precedence or mutual-exclusivity rule, despite zero required parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (retrieve) and resource (status of previously submitted SecureLend enquiries), which clearly separates it from the sibling creation/display tools like create_lender_enquiry and display_offer_form. It doesn't explicitly name an alternative, but the read-only lookup nature is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'previously submitted' implies this only works for existing enquiries, which is a useful implicit constraint. However, there is no explicit guidance on when to prefer this over create_lender_enquiry, nor on what to do if only a subset of the four identifier parameters is available.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.