Is the Michal Lefler Secureflows MCP server down?

mcp-registry/io.github.michal-lefler/secureflows-mcp-server · v0.2.0

Also listed as github/michal-lefler/secureflows-mcp, github/michal-lefler/secureflows-mcp-server, glama/michal-lefler/secureflows-mcp-server, mcp-registry/io.github.michal-lefler/secureflows-mcp · primary listing: mcp-registry/io.github.michal-lefler/secureflows-mcp

healthy
Last checked 2026-10-25 14:19 UTC · handshake 204ms

As of 2026-10-25 14:19 UTC, the Michal Lefler Secureflows MCP server is up with a Glimind reliability score of 100/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks.

uptime (30d checks)
100%
checks observed
4,763
outages (90d)
0
tools
18

MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.

Install Michal Lefler Secureflows MCP server

Add to Cursor Add to VS Code

Claude Code

claude mcp add --transport http michal-lefler-secureflows-mcp-server https://www.secure-flows.com/mcp

Claude Desktop · Windsurf · Cline (mcpServers JSON)

{
  "mcpServers": {
    "michal-lefler-secureflows-mcp-server": {
      "type": "http",
      "url": "https://www.secure-flows.com/mcp"
    }
  }
}

Third-party server, listed as discovered. Review its source before installing.

Agent-readiness: D (60/100)

D (60/100): 0 error(s), 4 warning(s) across 18 tool(s); ~7,484 tokens of tool definitions.
Scores higher than 0% of 15,703 MCP servers Glimind has audited.
Its tool list costs an agent ~7,484 tokens per session — more than 65% of servers.
59 → 60 since 2026-10-17
no tool-poisoning patterns
Schemas57
Descriptions32
Safety hints0
Token cost100
Client compatibility70
Protocol100
Reliability100
Stability100

What to fix (5)

18 of 18 tool(s) carry no readOnlyHint/destructiveHint annotations.

Annotate read-only tools with {"readOnlyHint": true}. Agents and gateways can then run them without a confirmation prompt, and route around destructive ones. How to fix →

Tools: auth_session_callback, delete_sessions_delete_key, get_auth_logout, get_docs_search, get_sessions and 13 more

74 parameter(s) across 15 tool(s) have no description.

Add a "description" to each parameter with its format and an example ("ISO 8601 date, e.g. 2026-10-17"). This is the commonest cause of wrong arguments on the first call. How to fix →

Tools: auth_session_callback, delete_sessions_delete_key, get_auth_logout, get_docs_search, get_sessions and 10 more

12 tool(s) have parameters with no type (no type/enum/anyOf/$ref).

Give every parameter a "type" (or "enum"/"anyOf"). Untyped parameters make models guess — strings for numbers, objects for arrays. How to fix →

Tools: auth_session_callback, delete_sessions_delete_key, get_auth_logout, get_docs_search, get_sessions and 7 more

7 tool(s) look like they change state (create/send/delete/pay…) but declare no destructiveHint.

Set annotations {"readOnlyHint": false, "destructiveHint": true|false, "idempotentHint": …}. Clients use these to ask the user before a side effect and to auto-approve safe reads. How to fix →

Tools: delete_sessions_delete_key, post_auth_logout, post_sessions, post_sessions_renew_session_token, post_sessions_revoke and 2 more

No tool declares an outputSchema.

Declare outputSchema and return structuredContent (MCP 2025-06-18+). Agents can then parse results without guessing, and chain tools reliably. How to fix →

Auto-fix: 16 corrected tool definitions

Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. 15 tool(s) still need parameter descriptions written by someone who knows the API. All of them as JSON: /v1/readiness/mcp-registry%2Fio.github.michal-lefler%2Fsecureflows-mcp-server/fixes

auth_session_callback 1 change
{
  "name": "auth_session_callback",
  "description": "**Browser redirect endpoint** used after hosted `/app/sessions/login`. No `Authorization` header.\n\n1. Verifies **`firebaseToken`** (Firebase ID token).\n2. Ensures **`client_redirect_uri`** is allowlisted for **`app_id`** (same rules as `validate-redirect`).\n3. **Create vs renew:** If **`session_token`** is absent, **reuses the newest active session** for\n   **`(workspace_name, Firebase UID, app_id)`** or **creates** one (`get-or-create`). Optional\n   **`payload`** (URL-encoded JSON **object**, d",
  "inputSchema": {
    "type": "object",
    "$schema": "http://json-schema.org/draft-07/schema#",
    "required": [
      "connection",
      "query"
    ],
    "properties": {
      "auth": {
        "type": "object",
        "properties": {}
      },
      "body": {
        "type": "string"
      },
      "query": {
        "type": "object",
        "required": [
          "firebaseToken",
          "client_redirect_uri",
          "workspace_name",
          "app_id"
        ],
        "properties": {
          "state": {
            "type": "string"
          },
          "app_id": {
            "type": "string"
          },
          "payload": {
            "type": "string",
            "description": "JSON object as a string (e.g. `{\"a\":1}`), URL-encoded. Must parse to a JSON object (not an array or primitive).\nDefault when omitted is `{}`. Must not be combined with `session_token` on the same request.\n"
          },
          "ttl_seconds": {
            "type": "integer",
            "maximum": 604800,
            "minimum": 0,
            "description": "Session lifetime in seconds (default 0 = unlimited; allowed values: 0 or 60–604800)"
          },
          "firebaseToken": {
            "type": "string"
          },
          "session_token": {
            "type": "string",
            "description": "Previous session JWT (may be expired); signature must validate. When present, the server renews this\nsession instead of creating a new one. Must not be combined with `payload` on the same request.\nURL-encode the value; very long URLs may exceed browser or proxy limits.\n"
          },
          "workspace_name": {
            "type": "string"
          },
          "client_redirect_uri": {
            "type": "string",
            "format": "uri"
          }
        }
      },
      "params": {
        "type": "object",
        "properties": {}
      },
      "connection": {
        "type": "object",
        "required": [
          "host"
        ],
        "properties": {
          "host": {
            "type": "string",
            "format": "uri",
            "description": "secureFlows base URL, for example https://api.example.com"
          },
          "appId": {
            "type": "string",
            "description": "Optional secureFlows app id used as a default for hosted login tools"
          },
          "workspaceName": {
            "type": "string",
            "description": "Optional workspace name used as a default for tools that need it"
          }
        }
      }
    }
  },
  "title": "Session login callback (redirect)"
}
delete_sessions_delete_key 2 changes
{
  "name": "delete_sessions_delete_key",
  "description": "Removes `key` from the session payload and returns `true` if the key existed.\n\nSource: DELETE /api/v1/sessions/delete/{key}\nRequires `auth.sessionToken` and forwards it as a Bearer token.\nPrefer connection.workspaceName and connection.appId as stable config instead of generating identity fields dynamically.",
  "inputSchema": {
    "type": "object",
    "$schema": "http://json-schema.org/draft-07/schema#",
    "required": [
      "connection",
      "params"
    ],
    "properties": {
      "auth": {
        "type": "object",
        "required": [
          "sessionToken"
        ],
        "properties": {
          "sessionToken": {
            "type": "string",
            "description": "secureFlows session token"
          }
        }
      },
      "body": {
        "type": "string"
      },
      "query": {
        "type": "object",
        "properties": {}
      },
      "params": {
        "type": "object",
        "required": [
          "key"
        ],
        "properties": {
          "key": {
            "type": "string",
            "description": "Payload key to delete"
          }
        }
      },
      "connection": {
        "type": "object",
        "required": [
          "host"
        ],
        "properties": {
          "host": {
            "type": "string",
            "format": "uri",
            "description": "secureFlows base URL, for example https://api.example.com"
          },
          "appId": {
            "type": "string",
            "description": "Optional secureFlows app id used as a default for hosted login tools"
          },
          "workspaceName": {
            "type": "string",
            "description": "Optional workspace name used as a default for tools that need it"
          }
        }
      }
    }
  },
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": true,
    "idempotentHint": true
  },
  "title": "Delete a key from the session payload"
}
get_auth_logout 2 changes
{
  "name": "get_auth_logout",
  "description": "Browser-friendly logout endpoint for **cross-site** clients (e.g. apps running on `localhost`).\n\nUse this as a **top-level navigation** (not XHR/fetch) so `Clear-Site-Data` is applied in a\n**first-party** context on `secure-flows.com`, making cookie/session clearing reliable even when\nthird-party cookies are blocked.\n\n**Critical client rules:**\n- Clear your in-app `sessionToken` state **before** navigating.\n- **Never** include `session_token` inside `redirect_uri` (that would silently renew and ",
  "inputSchema": {
    "type": "object",
    "$schema": "http://json-schema.org/draft-07/schema#",
    "required": [
      "connection",
      "query"
    ],
    "properties": {
      "auth": {
        "type": "object",
        "properties": {}
      },
      "body": {
        "type": "string"
      },
      "query": {
        "type": "object",
        "required": [
          "session_token",
          "redirect_uri"
        ],
        "properties": {
          "redirect_uri": {
            "type": "string",
            "format": "uri",
            "description": "Where to redirect after logout completes"
          },
          "session_token": {
            "type": "string",
            "description": "SESSION JWT to invalidate (URL-encoded)"
          }
        }
      },
      "params": {
        "type": "object",
        "properties": {}
      },
      "connection": {
        "type": "object",
        "required": [
          "host"
        ],
        "properties": {
          "host": {
            "type": "string",
            "format": "uri",
            "description": "secureFlows base URL, for example https://api.example.com"
          },
          "appId": {
            "type": "string",
            "description": "Optional secureFlows app id used as a default for hosted login tools"
          },
          "workspaceName": {
            "type": "string",
            "description": "Optional workspace name used as a default for tools that need it"
          }
        }
      }
    }
  },
  "annotations": {
    "readOnlyHint": true
  },
  "title": "Log out (browser redirect helper; first-party cookie clearing)"
}

Get alerted

Get an email or webhook when this server's readiness drops by 10+ points, tool-poisoning text appears, or a tool breaks:

curl -X POST https://glimind.com/v1/subscriptions -H 'content-type: application/json' -d '{"tools":["mcp-registry/io.github.michal-lefler/secureflows-mcp-server"],"email":"[email protected]"}'

Agents: watch_tool({"toolId": "mcp-registry/io.github.michal-lefler/secureflows-mcp-server"}) over MCP.

Passed

Largest tool definitions

Static checks of the advertised tools/list (schema, descriptions, annotations, tool-poisoning patterns, names, size) plus observed protocol, uptime, latency and contract changes. Read-only: no tool is ever called. Weights: schema 15, docs 20, safety 15, efficiency 15, compatibility 15, protocol 5, reliability 10, stability 5. Token counts are estimates (~3.6 characters per token).

Operator? Fix these, then re-check live. Embed the readiness badge:

Markdown
[![MCP agent-readiness](https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.michal-lefler%2Fsecureflows-mcp-server.svg)](https://glimind.com/server/mcp-registry%2Fio.github.michal-lefler%2Fsecureflows-mcp-server?ref=badge)
HTML
<a href="https://glimind.com/server/mcp-registry%2Fio.github.michal-lefler%2Fsecureflows-mcp-server?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.michal-lefler%2Fsecureflows-mcp-server.svg" alt="MCP agent-readiness"></a>
reStructuredText
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fio.github.michal-lefler%2Fsecureflows-mcp-server.svg
   :target: https://glimind.com/server/mcp-registry%2Fio.github.michal-lefler%2Fsecureflows-mcp-server?ref=badge
   :alt: MCP agent-readiness

Tool-definition log

Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:f9e90a19b715ba15…, first seen 2026-10-17, included at leaf 4405 of 66,679. Version history · verify what your client received.

Tools (18)

Compare: most reliable auth servers · most reliable search servers · most reliable security servers · most reliable code servers

Know before your agent calls it

Glimind tells agents whether a server is up right now and how to call it, then fails over to a live alternative when it isn't.

Add Glimind — free, no signup:

Add to Cursor Add to VS Code

Claude Code

claude mcp add --transport http glimind https://glimind.com/mcp

Claude Desktop · Windsurf · Cline (mcpServers JSON)

{
  "mcpServers": {
    "glimind": {
      "type": "http",
      "url": "https://glimind.com/mcp"
    }
  }
}

FAQ

Is the Michal Lefler Secureflows MCP server down right now?

As of 2026-10-25 14:19 UTC, the Michal Lefler Secureflows MCP server is up with a Glimind reliability score of 100/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks.

How many tools does Michal Lefler Secureflows MCP server provide?

Michal Lefler Secureflows MCP server advertises 18 tools, including auth_session_callback, delete_sessions_delete_key, get_auth_logout, get_docs_search, get_sessions.

How do I install Michal Lefler Secureflows MCP server?

Point your MCP client at this streamable-http endpoint: https://www.secure-flows.com/mcp

Is the Michal Lefler Secureflows MCP server safe to connect to an AI agent?

Glimind scanned all 18 tool definitions for tool-poisoning patterns — hidden or invisible characters, instructions that override the model, concealment from the user, requests to read credential or MCP config files, conversation exfiltration and cross-tool shadowing — and found none. This checks what the server tells the model, not what its code does; review the source before granting access to sensitive data.

Operator of Michal Lefler Secureflows MCP server?

Status page: 90-day uptime, every outage and how long it lasted.

Claim this listing to get the Verified operator marker, a remediation checklist and owner analytics, or embed the live badge from any of the tool pages above. Maintainers: alerts, deploy attestation and monthly reports.

Status is an automated estimate from Glimind's liveness checks (handshake and tool listing only; no tool is ever called) and may lag or differ from your network. Glimind is not affiliated with this server or its operator. Operator? Request a correction or opt out at https://glimind.com/opt-out.

Feedback
Help us improve