Finology Student Loan Calculator

Free, keyless federal student-loan math: RAP, IBR, ICR, PSLF. Logged+cited tier: verified-engine

Should I use this

Quality & Safety

A
Description quality
93%
Schema completeness
83%
Naming quality
70%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (3)

  • LOWTool 'estimate_rap_monthly_payment' description lacks action verbin estimate_rap_monthly_payment
  • LOWTool 'compare_married_filing_jointly_vs_separately_student_loans' name length outside 3-30 rangein compare_married_filing_jointly_vs_separately_student_loans
  • LOWTool 'compare_federal_student_loan_repayment_plans' name length outside 3-30 rangein compare_federal_student_loan_repayment_plans

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,103Tokens (tool definitions)
~1.8 KBTypical response size
Moderate attention impact (0.86% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "student-loan": {
      "command": "npx",
      "args": [
        "@finology/mcp-server"
      ]
    }
  }
}

Runnable packages

npm@finology/mcp-server0.4.3stdio

Remote endpoints

https://mcp.finology.tech/freestreamable-http

What it can do

Tool inventory

Tools (4)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢compare_married_filing_jointly_vs_separately_student_loans(balance, ratePct, borrowerAgi, spouseAgi, dependents, ...)

Run the same federal loan book filing jointly and filing separately and report the swing in the best income-driven plan's payment and lifetime cost. LOAN SIDE ONLY: the tax cost of filing separately is not modelled and the answer says so.

Input Schema

{
  "type": "object",
  "properties": {
    "balance": {
      "description": "Current federal loan balance in dollars.",
      "type": "number"
    },
    "ratePct": {
      "description": "Weighted average interest rate as a percentage.",
      "type": "number"
    },
    "borrowerAgi": {
      "description": "Borrower's annual AGI in dollars.",
      "type": "number"
    },
    "spouseAgi": {
      "description": "Spouse's annual AGI in dollars.",
      "type": "number"
    },
    "dependents": {
      "description": "Qualifying dependents. A spouse is NOT a dependent.",
      "type": "integer",
      "default": 0
    },
    "loanType": {
      "description": "direct_unsubsidized | direct_subsidized | grad_plus_legacy | parent_plus | direct_consolidation | direct_consolidation_with_plus",
      "type": "string",
      "default": "direct_unsubsidized"
    }
  },
  "required": [
    "balance",
    "ratePct",
    "borrowerAgi",
    "spouseAgi"
  ]
}
🟢finology_service_info

How to go further than this free rung, in structured form: the self-serve paths for an advisor (app trial) and for a developer or operator (instant sandbox key, keyed MCP and REST endpoints, auth header), tiers and monthly limits, and what in these answers is an estimate. Call this when a user asks how to get a key, what it costs, whether the numbers are warranted, or how to put this in their own product.

Input Schema

{
  "type": "object",
  "properties": {}
}
🟢compare_federal_student_loan_repayment_plans(balance, ratePct, borrowerAgi, filingStatus, spouseAgi, ...)

Compare every federal repayment plan a loan can elect (Standard, RAP, IBR, PAYE, ICR) on the current federal rules: monthly payment, lifetime cost, forgiveness timing and the estimated tax on forgiven balances. Plans the loan cannot elect are listed with the reason. For Parent PLUS it also runs the consolidation path unprompted, because that is the number that decides. loanType drives PLAN ELIGIBILITY, not just the rate: choose accurately.

Input Schema

{
  "type": "object",
  "properties": {
    "balance": {
      "description": "Current federal loan balance in dollars.",
      "type": "number"
    },
    "ratePct": {
      "description": "Weighted average interest rate as a percentage, e.g. 6.54 for 6.54%.",
      "type": "number"
    },
    "borrowerAgi": {
      "description": "Borrower's adjusted gross income in dollars, annual.",
      "type": "number"
    },
    "filingStatus": {
      "description": "Tax filing status: single, mfj, mfs, hoh.",
      "type": "string",
      "default": "single"
    },
    "spouseAgi": {
      "description": "Spouse's annual AGI. Only used when filingStatus is mfj.",
      "type": [
        "number",
        "null"
      ],
      "default": null
    },
    "dependents": {
      "description": "Number of qualifying dependents. A spouse is NOT a dependent.",
      "type": "integer",
      "default": 0
    },
    "loanType": {
      "description": "direct_unsubsidized | direct_subsidized | grad_plus_legacy | parent_plus | direct_consolidation | direct_consolidation_with_plus",
      "type": "string",
      "default": "direct_unsubsidized"
    }
  },
  "required": [
    "balance",
    "ratePct",
    "borrowerAgi"
  ]
}
🟢estimate_rap_monthly_payment(annualIncome, filingStatus, spouseAnnualIncome, familySize)

Estimate the RAP (Repayment Assistance Plan) monthly payment from income, filing status and household size, on the current federal rules. RAP payment only: not a comparison and no forgiveness projection; use the plan comparison tool for that.

Input Schema

{
  "type": "object",
  "properties": {
    "annualIncome": {
      "description": "Borrower's annual adjusted gross income in dollars.",
      "type": "number"
    },
    "filingStatus": {
      "description": "Single | MarriedFilingJointly | MarriedFilingSeparately | HeadOfHousehold",
      "type": "string",
      "default": "Single"
    },
    "spouseAnnualIncome": {
      "description": "Spouse's annual AGI, counted only when filing jointly.",
      "type": [
        "number",
        "null"
      ],
      "default": null
    },
    "familySize": {
      "description": "Household size: the borrower, PLUS the spouse when filing jointly, PLUS dependents. 1 = borrower only; a joint filer with two children is 4. RAP's $50 deduction is per QUALIFYING DEPENDENT, which is derived from this and echoed in the response, because a spouse is not a dependent.",
      "type": "integer",
      "default": 1
    }
  },
  "required": [
    "annualIncome"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools
verifiedversion not recorded4 tools