findata-mcp
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@findata-mcpaudit data quality of my loan records"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
findata-mcp
Financial Data Quality & AI Inference Evaluation MCP Server
A Model Context Protocol (MCP) server that exposes six production-grade tools for AI agents working with financial datasets — covering data quality auditing, bias detection, model inference evaluation, outlier scoring, A/B testing, and KPI reporting.
Built to mirror the core responsibilities of Citi's Data Services & AI platform.
Tools
Tool | Description |
| Audits completeness, consistency, and machine-readability of financial records. Returns a quality score and remediation actions. |
| Detects demographic/categorical bias by comparing approval rates or amounts across cohort groups. Returns disparity ratios and a bias risk label (LOW / MEDIUM / HIGH). |
| Computes precision, recall, F1, AUC, and a PASS/FAIL verdict against configurable enterprise thresholds. |
| Flags anomalous records using Z-score and IQR methods across numeric fields. |
| Compares two model variants on the same dataset and recommends a winner based on F1. |
| Generates a structured KPI report — latency (avg/p95), throughput (rps), error rate, and SLA adherence — formatted for senior stakeholder delivery. |
Related MCP server: Financial Intelligence MCP Server
Installation
git clone https://github.com/srikarmanikonda/findata-mcp.git
cd findata-mcp
npm installRun
node src/index.jsThe server communicates over stdio using the MCP protocol — connect it to any MCP-compatible client (Claude Desktop, ADK agent, etc.).
Test
npm testAll 13 tests pass across all 6 tools.
Claude Desktop / MCP Client Config
Add to your claude_desktop_config.json:
{
"mcpServers": {
"findata-mcp": {
"command": "node",
"args": ["/path/to/findata-mcp/src/index.js"]
}
}
}Example Usage (via MCP client)
Audit data quality:
{
"tool": "audit_data_quality",
"records": [
{ "id": "R001", "loan_amount": 15000, "region": "Northeast", "approved": 1 },
{ "id": "R002", "loan_amount": null, "region": "Southeast", "approved": 0 }
],
"required_fields": ["id", "loan_amount", "region", "approved"],
"numeric_fields": ["loan_amount"]
}Detect bias:
{
"tool": "detect_bias",
"records": [...],
"group_field": "region",
"outcome_field": "approved",
"outcome_type": "binary"
}Evaluate model inference:
{
"tool": "evaluate_model_inference",
"predictions": [
{ "id": "R001", "predicted": 0.91, "actual": 1 },
{ "id": "R002", "predicted": 0.22, "actual": 0 }
],
"threshold": 0.5,
"min_precision": 0.75,
"min_recall": 0.70
}Stack
Runtime: Node.js (ESM)
MCP SDK:
@modelcontextprotocol/sdkValidation:
zodTransport: stdio (MCP standard)
Author
Srikar Manikonda — srikarmanikonda9@gmail.com
Available Tools
6 toolsaudit_data_qualityA
Audits a financial dataset for completeness, consistency, and machine-readability. Returns a quality score, field-level breakdown, and a list of remediation actions.
| Name | Required | Description | Default |
|---|---|---|---|
| records | Yes | Array of financial records (objects) to audit | |
| numeric_fields | No | Fields expected to be numeric — checked for type and range | |
| required_fields | Yes | Fields that must be present and non-null in every record |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states what the tool does (audits and returns results) but does not explicitly state it is read-only or disclose any side effects, permissions, or limitations.
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?
Two concise sentences, front-loaded with the action. No wasted words.
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?
Given no output schema, description adequately explains return values (quality score, field-level breakdown, remediation actions). Covers main aspects but could mention non-destructive nature or performance constraints.
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 coverage is 100%, so baseline is 3. Description adds no extra meaning about the parameters beyond what the schema already provides.
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?
Description clearly states the verb 'Audits', resource 'financial dataset', and specific dimensions (completeness, consistency, machine-readability). It distinguishes from siblings like detect_bias or score_outliers by focusing on data quality auditing.
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?
Description implies use for auditing data quality but provides no explicit guidance on when to use this tool versus alternatives, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
detect_biasB
Detects demographic or categorical bias in a financial dataset by comparing approval rates, average amounts, or outcome distributions across cohort groups. Returns disparity ratios and a bias risk label.
| Name | Required | Description | Default |
|---|---|---|---|
| records | Yes | Array of financial records | |
| group_field | Yes | Field to group by for bias analysis (e.g. 'region', 'income_tier', 'credit_band') | |
| outcome_type | Yes | Whether the outcome field is binary (0/1) or numeric | |
| outcome_field | Yes | Binary or numeric outcome field to compare across groups (e.g. 'approved', 'loan_amount') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It implies a read-only detection tool but does not explicitly state whether data is modified, if authentication is required, or if there are any side effects. The description lacks behavioral details such as performance constraints or assumptions about the data.
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?
The description is two sentences: the first states purpose and method, the second states output. It is front-loaded, efficient, and contains no redundancy. Every word adds value.
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?
Given no output schema and no annotations, the description is incomplete. It does not detail the format or structure of the returned disparity ratios and bias risk label, nor does it explain the required shape of the input records (e.g., expected fields). For an analytical tool, this leaves ambiguity for the agent.
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?
The schema covers 100% of parameters with descriptions, so the baseline is 3. The description adds context by mentioning comparison of approval rates, amounts, and distributions, which aligns with group_field, outcome_field, and outcome_type. However, it does not add significant meaning beyond the schema, and the relationship between parameters is only implied.
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?
The description clearly states the tool detects demographic or categorical bias in financial datasets, specifying the method (comparing approval rates, average amounts, outcome distributions) and output (disparity ratios and bias risk label). It is a specific verb+resource combination that distinguishes it from sibling tools like audit_data_quality or evaluate_model_inference.
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 description does not provide guidance on when to use this tool versus alternatives, nor does it mention prerequisites or exclusions. For example, it does not state that this tool is appropriate when exploring fairness or that it should not be used for non-categorical attributes. No explicit context is given for use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
evaluate_model_inferenceA
Evaluates the accuracy of AI model inferences against ground-truth labels. Computes precision, recall, F1, AUC approximation, and a pass/fail verdict against enterprise performance thresholds.
| Name | Required | Description | Default |
|---|---|---|---|
| threshold | No | Classification threshold for converting probabilities to binary (default 0.5) | |
| min_recall | No | Minimum acceptable recall | |
| predictions | Yes | Array of {id, predicted (0/1 or probability), actual (0/1)} records | |
| min_precision | No | Minimum acceptable precision |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Description discloses the metrics computed and the pass/fail verdict, but lacks details on side effects, configuration of thresholds, error handling, or data persistence. Since annotations are absent, more context would be beneficial for a score above 3.
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?
Two focused sentences with no redundancy; first sentence defines core purpose, second details outputs. Efficient and well-structured.
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?
Description covers core purpose and main outputs but omits details on return format, configuration of thresholds, and handling edge cases. Given no output schema, the description could be more complete.
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 covers all parameters with descriptions. The description's mention of 'enterprise performance thresholds' hints at the min_recall/min_precision parameters but doesn't add new semantic information. At 100% coverage, baseline 3 is appropriate.
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?
Description explicitly states the tool's function (evaluates inference accuracy) and lists computed metrics (precision, recall, F1, AUC, pass/fail), clearly distinguishing it from sibling tools like audit_data_quality or detect_bias.
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?
Description provides no guidance on when to use this tool over siblings. It only describes the tool's function without contextualizing against alternatives or specifying prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_kpi_reportB
Generates a structured KPI performance report for a financial data pipeline or AI agent run. Computes latency, throughput, error rate, and SLA adherence — formatted for senior stakeholder delivery.
| Name | Required | Description | Default |
|---|---|---|---|
| run_logs | Yes | Array of per-record execution logs | |
| pipeline_name | Yes | Name of the pipeline or agent being evaluated | |
| sla_latency_ms | No | SLA target: max acceptable latency per record in ms (default 500ms) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavior. It mentions computing metrics and formatting for delivery, but omits output format (e.g., JSON, PDF, dashboard), side effects (e.g., storage, persistence), or whether it is read-only. Critical gaps for an agent to anticipate consequences.
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?
Two succinct sentences: first states purpose and scope, second lists key metrics and audience. No extraneous information, all sentences earn their place.
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?
Despite clear purpose, crucial gaps remain: no output format described, no behavioral side effects disclosed, and no usage guidance. For a tool with 3 parameters and no output schema, more completeness is needed to guide correct invocation.
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 coverage is 100% with descriptions for all parameters. Description adds context that the tool computes latency, throughput, error rate, and SLA adherence, clarifying report content beyond schema fields. However, does not explain how parameters relate to computation (e.g., how sla_latency_ms is used). Baseline 3 appropriate.
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?
Explicitly states it generates a structured KPI performance report for financial data pipelines or AI agent runs, lists specific metrics (latency, throughput, error rate, SLA adherence), and notes formatting for senior stakeholder delivery. Clearly distinguishes from sibling tools like audit_data_quality or detect_bias.
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?
Implies usage when a KPI report is needed for a pipeline/agent run, but does not explicitly state when to use versus alternatives, nor provide when-not scenarios or prerequisites. Sibling context suggests differentiation but description itself lacks direct guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
run_ab_comparisonB
Compares two model variants (A and B) on the same dataset using precision, recall, F1, and AUC. Returns a winner recommendation and statistical delta.
| Name | Required | Description | Default |
|---|---|---|---|
| model_a | Yes | Predictions from model A | |
| model_b | Yes | Predictions from model B | |
| threshold | No | Classification threshold (default 0.5) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It mentions computing metrics and returning a recommendation, but it does not disclose whether the tool modifies state, requires specific permissions, or performs any side effects. It also does not explain how the inputs are matched (e.g., by ID) or what 'statistical delta' means.
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?
The description is two sentences, front-loaded with the purpose and output. No unnecessary words; every sentence serves a purpose.
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?
Given no output schema and no annotations, the description explains the output but lacks details on input matching (e.g., datasets must share IDs), the nature of the statistical test, and any constraints (e.g., same length of arrays). It is minimally adequate but leaves gaps.
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 100%, so the baseline is 3. The description adds the list of metrics and the fact that datasets should be the same, but does not provide additional semantic meaning beyond what the schema already offers. The mention of 'same dataset' is not reflected in the schema and could be clarified.
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?
The description clearly states the tool compares two model variants (A and B) using precision, recall, F1, and AUC, and returns a winner recommendation and statistical delta. This is distinct from sibling tools like detect_bias or evaluate_model_inference.
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 description gives no guidance on when to use this tool versus alternatives. It does not mention prerequisites, when not to use it, or contrast with siblings like detect_bias or evaluate_model_inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_outliersA
Scores each record in a financial dataset for outlier risk using Z-score and IQR methods across specified numeric fields. Returns per-record risk flags and a summary of flagged anomalies.
| Name | Required | Description | Default |
|---|---|---|---|
| records | Yes | Array of financial records | |
| z_threshold | No | Z-score threshold above which a value is flagged (default 3.0) | |
| numeric_fields | Yes | Numeric fields to analyze for outliers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the transparency burden. It discloses the methods (Z-score, IQR) and outputs but does not mention side effects (read-only), auth needs, rate limits, or handling of missing data. Adequate but not comprehensive.
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?
Two sentences, each adding value. First sentence states action and method, second lists outputs. No redundancy or fluff.
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?
Given no output schema, the description mentions return types (risk flags, summary) but lacks specifics on structure, error handling, or performance considerations. Acceptable but not fully complete for a 3-param tool.
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 coverage is 100% with descriptions for all parameters. The description adds context that numeric_fields are the fields to analyze but does not provide significant new meaning beyond the schema. Baseline score of 3 applies.
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?
The description clearly states the tool scores records for outlier risk using Z-score and IQR methods on specified numeric fields, and returns per-record flags and a summary. This clearly distinguishes it from siblings like audit_data_quality or detect_bias.
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 description implies usage for outlier detection in financial datasets but does not explicitly state when to use it vs. alternatives (e.g., detect_bias for fairness, audit_data_quality for general checks). No when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool targets a distinct aspect of financial data analysis: data quality, bias detection, model evaluation, KPI reporting, A/B comparison, and outlier scoring. No two tools have overlapping purposes.
All tool names follow a consistent verb_noun pattern using snake_case (e.g., audit_data_quality, detect_bias), making naming predictable and easy to understand.
With 6 tools, the server is well-scoped for its domain of financial data evaluation and reporting. Each tool serves a clear purpose without unnecessary redundancy.
The tool set covers core evaluation and analysis tasks comprehensively. Minor gaps exist (e.g., no data ingestion or visualization tools), but these are likely out of scope for the server's intended function.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
AI governance MCP server for EU AI Act compliance and jurisdiction verification
MCP server for building and testing AI agents with multi-model experimentation and insights.
A paid remote MCP for AI SDK eval dashboard, built to return verdicts, receipts, usage logs, and aud
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA production-grade MCP server that automates financial compliance audits by combining LLMs with structured analysis, enabling policy validation, risk profiling, and automated reporting.
- FlicenseNot gradedqualityDmaintenanceA production-grade MCP server that provides financial ML tools including RAG search, anomaly detection, contract summarization, vendor graph analysis, and model drift monitoring using entirely free, open-source components.1
- AlicenseAqualityDmaintenanceAn MCP server for AI economy infrastructure with built-in EU AI Act compliance, supporting risk management, transparency, and bias detection.10MIT
- AlicenseNot gradedqualityDmaintenanceA production-ready MCP server that provides comprehensive dbt project quality assessment for any GitHub repository, enabling AI agents to analyze dbt models, check metadata coverage, and map data lineage.9MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/MSrikar7/findata-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server