Skip to main content
Glama

fd-daas-mcp

Consolidated DAAS MCP server + CLI - hosts the alerts, cron, composite, daas, dashboard, gateway, and workflow tool groups (157 tools) behind one stdio FastMCP server and one Click CLI. Both consume daas/fd_daas_mcp/registry.py so the server and CLI surfaces cannot drift.

The gateway group routes data-fetch calls to a single fd-open-data-mcp upstream - a concept-based semantic fetcher (ranking + failover + caching) that is a Python dependency sourced from the sibling ~/finddata/fd-open-data-mcp repo and launched from this venv as python -m fd_open_data_mcp.server. It replaces the 11 former per-source data-fetch MCPs. Fetch via gateway_call_data_mcp('fd-open-data-mcp', 'read', …) directly, or register a manifest and run it via workflow_run for multi-step fetches.

Layout

fd-daas-mcp/
  daas/fd_daas_mcp/   # thin consolidation layer
    server.py                 # FastMCP app - registers every tool as <group>_<tool>
    registry.py               # AST-harvests tools from each <group>-mcp/ (per-group sys.modules isolation)
    cli.py                    # Click CLI - auto-generated from registry.build()
    selfcheck.py              # offline invariants (run_invariants())
  <group>-mcp/                # alerts/cron/composite/daas/dashboard/gateway/workflow tool code (folded, not rewritten)
  models/                     # the mcp-models schema package (editable, [tool.uv.sources])
  bin/fd-daas-mcp-server      # portable launcher (the .mcp.json `command`)
  tests/                      # offline pytest suite
  pyproject.toml

Related MCP server: coin-mcp

Launch (MCP server)

Repo-root .mcp.json points command at fd-daas-mcp/bin/fd-daas-mcp-server, a self-locating POSIX shell script that sets PYTHONPATH and execs .venv/bin/python -m daas.fd_daas_mcp.server. (Claude Code ignores .mcp.json's cwd field, so the launch is self-locating.)

Run the server manually:

fd-daas-mcp/bin/fd-daas-mcp-server

On startup it logs the registration report:

registry: 157 tools across 8 groups (failed=0, skipped_optional=1)
fd-daas-mcp server: registered=157 failed=0 skipped_optional=1

CLI

fd-daas-mcp <group> <tool> [key=value ...] [--json]   # invoke a tool
fd-daas-mcp                                            # REPL (needs [repl] extra for history)
fd-daas-mcp --help                                     # authoritative live surface

The CLI tree is cli <group> <tool> (nested Click groups), generated from the same registry.build() as the server.

Tests

fd-daas-mcp/.venv/bin/python -m pytest fd-daas-mcp/tests -q

Offline, no network, no live MCP transport. See tests/README.md for coverage and environment notes (notably: run via .venv/bin/python, not uv run, which re-resolves optional extras from PyPI and fails offline).

Selfcheck

fd-daas-mcp/.venv/bin/python -m daas.fd_daas_mcp.selfcheck

Verifies: >=155 tools across 6 core groups, known collisions namespaced, leaf-module isolation, no APScheduler thread (cron suppression), and the registration report has no core-group failure. The same invariants run as a pytest assertion in tests/test_selfcheck.py.

Registration report

registry.build_report() returns {"registered": [...], "failed": [...], "skipped_optional": [...]}. failed lists load-time and app.tool-registration failures as (group, name, error); a core-group entry fails the selfcheck loudly. skipped_optional lists optional groups whose dependency was absent (INFO, not a failure). note_failed(group, name, error) lets the server surface app.tool failures into the report.

Optional / dropped groups

Optional groups load only when their "dep" imports (recorded as skipped_optional when absent). The pdf group was restored as a local vector-search group (sqlite-vec + sentence-transformers; see the pdf extra and openspec/changes/add-pdf-vector-search). The scrapling/firecrawl/massive groups remain dropped - documented in registry.py with archived-restore-spec pointers:

  • scrapling, firecrawl -> openspec/changes/archive/2026-07-12-fold-scrapling-add-firecrawl

  • massive -> openspec/changes/archive/2026-07-06-add-massive-datasources

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityMaintained
ResponsivenessNo issues

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

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Economic data MCP server that connects FRED, BLS, BEA, IMF, World Bank, and ECB to any MCP-compatible client, with built-in methodology rules to guide LLMs in selecting appropriate economic indicators.
    -
  • A
    license
    A
    quality
    D
    maintenance
    A comprehensive cryptocurrency market-data MCP server with 49 tools across six data sources, enabling LLMs to answer market questions via natural language.
    49
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Unified MCP server for querying CSV, Postgres, and REST API data sources via embedded DuckDB, enabling cross-source SQL joins with no external query service.
    7
    49
    MIT

Latest Blog Posts

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/FindDataTechnology/fd-daas-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server