# How to Integrate a New Data Provider Beyond Pre-Configured MCP Connectors in Claude Financial Services

> Integrate a custom data provider into Claude Financial Services by updating .mcp.json documentation and running validation scripts. No skill code changes needed for seamless integration.

- Repository: [Anthropic/financial-services](https://github.com/anthropics/financial-services)
- Tags: how-to-guide
- Published: 2026-05-07

---

**You can integrate a custom data provider into Claude Financial Services by adding a new MCP server entry to the [`.mcp.json`](https://github.com/anthropics/financial-services/blob/main/.mcp.json) configuration file, documenting the connector, and running the repository validation scripts—no changes to skill code are required.**

Claude Financial Services uses the **Model Context Protocol (MCP)** to communicate with external data sources. While the platform ships with pre-configured connectors for providers like Daloopa and LSEG, you can extend it to support any custom data provider by modifying the central MCP registry in the `anthropics/financial-services` repository.

## Where MCP Connectors Are Defined

All data provider connections are centralized in the JSON configuration at [`plugins/vertical-plugins/financial-analysis/.mcp.json`](https://github.com/anthropics/financial-services/blob/main/plugins/vertical-plugins/financial-analysis/.mcp.json). This file maintains the `"mcpServers"` object that maps provider names to their endpoint URLs and authentication details.

According to the source code, each entry in this registry specifies:
- The server type (typically `"http"`)
- The base URL for MCP requests
- Optional authentication headers using environment variable substitution

Skills consume these providers through the generic `mcp_*` tool prefix, meaning you can add new data sources without modifying any skill implementation code.

## Step-by-Step Integration Process

### 1. Edit the MCP Configuration

Open [`plugins/vertical-plugins/financial-analysis/.mcp.json`](https://github.com/anthropics/financial-services/blob/main/plugins/vertical-plugins/financial-analysis/.mcp.json) and add a new entry under the `"mcpServers"` object. Follow the existing JSON structure, adding a comma after the previous entry:

```json
{
  "mcpServers": {
    "daloopa": {
      "type": "http",
      "url": "https://mcp.daloopa.com/server/mcp"
    },
    "my-new-provider": {
      "type": "http",
      "url": "https://api.mynewprovider.com/mcp",
      "authHeaders": {
        "Authorization": "Bearer ${MY_NEW_PROVIDER_TOKEN}"
      }
    }
  }
}

```

The `${MY_NEW_PROVIDER_TOKEN}` syntax allows the runtime to inject secrets from environment variables, keeping credentials out of version control.

### 2. Document the Connector

If you are creating a partner-specific plugin, create a [`CONNECTORS.md`](https://github.com/anthropics/financial-services/blob/main/CONNECTORS.md) file in your plugin directory (e.g., [`plugins/partner-built/your-provider/CONNECTORS.md`](https://github.com/anthropics/financial-services/blob/main/plugins/partner-built/your-provider/CONNECTORS.md)) using the LSEG connector documentation as a template. For core vertical additions, update the connectors table in the top-level [`README.md`](https://github.com/anthropics/financial-services/blob/main/README.md) to surface the new provider to users.

### 3. Validate and Sync

Run the repository validation script to ensure your new entry resolves correctly:

```bash
python3 scripts/check.py

```

A successful validation outputs:

```

OK — <n> file(s) checked, 0 issues.

```

Next, synchronize the changes with bundled agent plugins:

```bash
python3 scripts/sync-agent-skills.py

```

This script propagates the updated [`.mcp.json`](https://github.com/anthropics/financial-services/blob/main/.mcp.json) into each agent-plugin's `skills/` directory, ensuring Managed Agents can access the new provider when deployed.

## Using Custom Providers in Skills

Once configured, skills invoke your custom provider using the standard `mcp_*` tool pattern. The tooling automatically routes requests based on the provider name defined in [`.mcp.json`](https://github.com/anthropics/financial-services/blob/main/.mcp.json).

For example, to query historical equity data from your new provider:

```bash
mcp_qa_historical_equity_price --provider my-new-provider --ticker AAPL

```

The skill code requires no modifications because the `mcp_*` tooling abstracts the underlying provider implementation. As implemented in `anthropics/financial-services`, the runtime resolves the `--provider` flag against the central registry and handles authentication header injection automatically.

## Key Files Reference

- **[`plugins/vertical-plugins/financial-analysis/.mcp.json`](https://github.com/anthropics/financial-services/blob/main/plugins/vertical-plugins/financial-analysis/.mcp.json)** — Central registry where you define new MCP servers and their endpoints.
- **[`scripts/check.py`](https://github.com/anthropics/financial-services/blob/main/scripts/check.py)** — Validates that all MCP references resolve to real files and that the JSON syntax is correct.
- **[`scripts/sync-agent-skills.py`](https://github.com/anthropics/financial-services/blob/main/scripts/sync-agent-skills.py)** — Copies updated skill configurations into bundled agent plugins for Managed Agent deployments.
- **[`plugins/partner-built/lseg/CONNECTORS.md`](https://github.com/anthropics/financial-services/blob/main/plugins/partner-built/lseg/CONNECTORS.md)** — Reference template for documenting partner-specific connectors.

## Summary

- **Integrate a new data provider** by adding a JSON object to the `"mcpServers"` section in [`.mcp.json`](https://github.com/anthropics/financial-services/blob/main/.mcp.json).
- **Use environment variable syntax** like `${TOKEN}` in `authHeaders` to keep secrets out of the repository.
- **Validate changes** using `python3 scripts/check.py` before committing.
- **Sync agents** with `python3 scripts/sync-agent-skills.py` to deploy changes to Managed Agents.
- **Consume the provider** immediately in any skill using `mcp_*` tools without code modifications.

## Frequently Asked Questions

### Do I need to modify skill code to use a custom data provider?

No. Skills that use the `mcp_*` tool prefix (such as `mcp_qa_historical_equity_price`) automatically recognize new providers added to [`.mcp.json`](https://github.com/anthropics/financial-services/blob/main/.mcp.json). You only need to pass the provider name as a parameter when invoking the tool.

### Where should I store API keys for the new data provider?

Store sensitive tokens in environment variables outside the repository, then reference them in [`.mcp.json`](https://github.com/anthropics/financial-services/blob/main/.mcp.json) using the `${VARIABLE_NAME}` syntax. The plug-in runtime expands these variables at execution time, keeping credentials out of version control.

### Can I add a provider without modifying the core vertical plugin?

Yes. You can create a new partner plugin under `plugins/partner-built/your-provider/` with its own [`.mcp.json`](https://github.com/anthropics/financial-services/blob/main/.mcp.json) file and [`CONNECTORS.md`](https://github.com/anthropics/financial-services/blob/main/CONNECTORS.md) documentation. This approach isolates proprietary integrations from the core financial-analysis vertical.

### How do I verify that my MCP configuration is valid?

Run `python3 scripts/check.py` from the repository root. This script lints the manifest and verifies that every `system.file`, `skills.path`, and MCP reference resolves to an actual file, catching syntax errors or broken paths before deployment.