Skip to content

[Bug]: MCP cognify_status non-functional in API mode (fix in #2418 was closed unmerged) #3067

@sirantd

Description

@sirantd

Describe the bug

The MCP cognify_status tool is non-functional in API mode (cognee-mcp launched with --api-url, i.e. the MCP container/process talks to a remote cognee FastAPI server rather than a co-located local install).

  • On main it returns ❌ Pipeline status is not available in API mode.
  • On the released cognee-mcp 0.5.4 it crashes outright with sqlite3.OperationalError: unable to open database file.

Either way, there is no way to check cognify pipeline status when the MCP runs against a remote server — which is the standard Docker-Compose / separate-backend deployment.

Root cause

cognify_status depends on a local cognee install even in API mode:

  1. cognee-mcp/src/server.pycognify_status() resolves the dataset via get_default_user() / get_unique_dataset_id(), which read the local relational DB (SQLite). In API mode that DB does not exist in the MCP process → sqlite3.OperationalError (0.5.4), and on main the function simply short-circuits with "not available in API mode".

  2. cognee-mcp/src/cognee_client.pyget_pipeline_status() still hard-stops in API mode:

if self.use_api:
    # Note: This would need a custom endpoint on the API side
    raise NotImplementedError("Pipeline status is not available via API")

The "custom endpoint" the comment asks for already exists: GET /api/v1/datasets/status?dataset=<dataset_id> returns {dataset_id: PipelineRunStatus} (verified live against a 1.x server, e.g. {"9e74...": "DATASET_PROCESSING_STARTED"}).

This was already fixed once — the fix was dropped

Net result: the dedicated fix never landed, and main still has raise NotImplementedError(...) today.

To reproduce

  1. Run a cognee FastAPI server (e.g. via Docker) reachable at http://<host>:8000.
  2. Launch the MCP in API mode: cognee-mcp --transport stdio --api-url http://<host>:8000.
  3. Call the cognify_status tool (any dataset_name).

Expected: the current cognify pipeline status for the dataset.
Actual: ❌ Pipeline status is not available in API mode (main) / sqlite3.OperationalError: unable to open database file (0.5.4).

Environment

  • cognee-mcp 0.5.4 (and main as of 2026-06-14)
  • API mode (--api-url) against a remote cognee 1.x server

Proposed fix

In API mode, resolve the dataset id via cognee_client.list_datasets() (HTTP) and have get_pipeline_status() call GET /api/v1/datasets/status. PR follows.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions