← Back to search

io.github.CSOAI-ORG/personal-finance-ai-mcp

CSOAI-ORG Scanned 8h ago

Personal Finance Ai automation via MCP. Includes track budget, calculate savings, plan debt ...

C
72.4 / 100

Versions

1.0.1latest
first seen Jun 5, 2026
1.0.4
first seen May 19, 2026
PermissionsTool SafetyAuthAnnotationsCode QualityStabilitySpecVuln HistoryAuthorTransparencyCommunity

Tools 5

track_budget
annotations: none low

Analyze spending against recommended budget allocations. Args: monthly_income: Gross monthly income. expenses: List of expenses with keys: category, amount, description (optional). Categories: housing, transportation, food, utilities, healthcare, savings, personal, entertainment, debt_payments. Behavior: This tool is read-only and stateless — it produces analysis output without modifying any external systems, databases, or files. Safe to call repeatedly with identical inputs (idempotent). Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage. When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards. When NOT to use: Not suitable for real-time production decision-making without human review of results. Behavioral Transparency: - Side Effects: This tool is read-only and produces no side effects. It does not modify any external state, databases, or files. All output is computed in-memory and returned directly to the caller. - Authentication: No authentication required for basic usage. Pro/Enterprise tiers require a valid MEOK API key passed via the MEOK_API_KEY environment variable. - Rate Limits: Free tier: 10 calls/day. Pro tier: unlimited. Rate limit headers are included in responses (X-RateLimit-Remaining, X-RateLimit-Reset). - Error Handling: Returns structured error objects with 'error' key on failure. Never raises unhandled exceptions. Invalid inputs return descriptive validation errors. - Idempotency: Fully idempotent — calling with the same inputs always produces the same output. Safe to retry on timeout or transient failure. - Data Privacy: No input data is stored, logged, or transmitted to external services. All processing happens locally within the MCP server process.

api_key str expenses string monthly_income float
calculate_savings
annotations: none low

Calculate time to reach a savings goal with compound interest. Args: target_amount: Savings target in dollars. current_savings: Current savings balance. monthly_contribution: Monthly savings amount. annual_return_pct: Expected annual return percentage. inflation_pct: Expected annual inflation percentage. Behavior: This tool is read-only and stateless — it produces analysis output without modifying any external systems, databases, or files. Safe to call repeatedly with identical inputs (idempotent). Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage. When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards. When NOT to use: Not suitable for real-time production decision-making without human review of results. Behavioral Transparency: - Side Effects: This tool is read-only and produces no side effects. It does not modify any external state, databases, or files. All output is computed in-memory and returned directly to the caller. - Authentication: No authentication required for basic usage. Pro/Enterprise tiers require a valid MEOK API key passed via the MEOK_API_KEY environment variable. - Rate Limits: Free tier: 10 calls/day. Pro tier: unlimited. Rate limit headers are included in responses (X-RateLimit-Remaining, X-RateLimit-Reset). - Error Handling: Returns structured error objects with 'error' key on failure. Never raises unhandled exceptions. Invalid inputs return descriptive validation errors. - Idempotency: Fully idempotent — calling with the same inputs always produces the same output. Safe to retry on timeout or transient failure. - Data Privacy: No input data is stored, logged, or transmitted to external services. All processing happens locally within the MCP server process.

api_key str inflation_pct float target_amount float current_savings float annual_return_pct float monthly_contribution float
plan_debt_payoff
annotations: none low

Create a debt payoff plan using avalanche or snowball method. Args: debts: List with keys: name, balance, interest_rate_pct, min_payment. Example: [{"name": "Credit Card", "balance": 5000, "interest_rate_pct": 19.9, "min_payment": 100}] extra_monthly_payment: Additional monthly amount above minimums. strategy: avalanche (highest interest first) | snowball (smallest balance first). Behavior: This tool generates structured output without modifying external systems. Output is deterministic for identical inputs. No side effects. Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage. When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards. When NOT to use: Not suitable for real-time production decision-making without human review of results.

debts string api_key str strategy str extra_monthly_payment float
analyze_investment
annotations: none low

Analyze investment growth with asset allocation modeling. Args: initial_investment: Starting investment amount. monthly_addition: Monthly contribution. years: Investment horizon in years. allocation: Asset allocation percentages. Example: {"stocks": 60, "bonds": 30, "cash": 10}. Defaults to age-based if omitted. Behavior: This tool is read-only and stateless — it produces analysis output without modifying any external systems, databases, or files. Safe to call repeatedly with identical inputs (idempotent). Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage. When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards. When NOT to use: Not suitable for real-time production decision-making without human review of results.

years int api_key str allocation string monthly_addition float initial_investment float
estimate_tax
annotations: none low

Estimate US federal income tax liability. Args: gross_income: Total gross income. filing_status: single | married | head_of_household. deductions: Dict of itemized deductions. Example: {"mortgage_interest": 12000, "charity": 3000}. Uses standard deduction if total itemized is lower. state: State code for state tax estimate (simplified). self_employment_income: Self-employment income (subject to SE tax). Behavior: This tool is read-only and stateless — it produces analysis output without modifying any external systems, databases, or files. Safe to call repeatedly with identical inputs (idempotent). Free tier: 10/day rate limit. Pro tier: unlimited. No authentication required for basic usage. When to use: Use this tool when you need structured analysis or classification of inputs against established frameworks or standards. When NOT to use: Not suitable for real-time production decision-making without human review of results.

state string api_key str deductions string gross_income float filing_status str self_employment_income float

Permissions 3

network medium
Server uses network capabilities via: urllib
filesystem low
Server uses filesystem capabilities via: os
env_vars low
Server uses env_vars capabilities via: os.environ

Scan Findings 32

low
Tool 'track_budget' has no annotations annotation_checker · 100%
low
Tool 'calculate_savings' has no annotations annotation_checker · 100%
low
Tool 'plan_debt_payoff' has no annotations annotation_checker · 100%
low
Tool 'analyze_investment' has no annotations annotation_checker · 100%
low
Tool 'estimate_tax' has no annotations annotation_checker · 100%
high
Remote transport without authentication auth_checker · 70%
info
Sandbox failed to start for behavioral verification behavioral_verifier · 100%
medium
Vulnerable dependency: mcp@1.0.0 (GHSA-3qhf-m339-9g5v) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (GHSA-9h52-p55h-vw2f) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (GHSA-j975-95f5-7wqh) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (GHSA-jpw9-pfvf-9f58) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (GHSA-vj7q-gjh5-988w) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (PYSEC-2026-1616) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (PYSEC-2026-1617) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (PYSEC-2026-1618) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (PYSEC-2026-3482) dependency_analyzer · 95%
medium
Vulnerable dependency: mcp@1.0.0 (PYSEC-2026-3483) dependency_analyzer · 95%
info
package.json metadata manifest_parser · 100%
info
pyproject.toml metadata manifest_parser · 100%
info
Tool: track_budget manifest_parser · 90%
info
Tool: calculate_savings manifest_parser · 90%
info
Tool: plan_debt_payoff manifest_parser · 90%
info
Tool: analyze_investment manifest_parser · 90%
info
Tool: estimate_tax manifest_parser · 90%
info
Transport: streamable-http manifest_parser · 80%
info
Required env vars (5) manifest_parser · 80%
info
Sandbox failed to start for output poisoning scan output_poisoning · 100%
medium
Permission: network access detected permission_analyzer · 80%
low
Permission: filesystem access detected permission_analyzer · 70%
low
Permission: env_vars access detected permission_analyzer · 90%
info
No dependency files found for SBOM generation sbom_generator · 100%
medium
No build provenance detected (SLSA L0) slsa_assessor · 90%