protogrid

Search / dev.fiskmas/fiskmas

Fiskmas

R1· needs a key

Hosting for AI agents: your AI client deploys Docker apps to live HTTPS URLs over MCP.

v1.0.0 · active · descriptor JSON · versions

An agent can connect on its own if it already holds FISKMAS_TOKEN.Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.
Quality69needs work
Trust77of 100
Uptime, 30 days100%
Latency p50506 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "fiskmas": {
      "type": "http",
      "url": "https://mcp.fiskmas.dev/mcp",
      "headers": {
        "Authorization": "Bearer ${FISKMAS_TOKEN}"
      }
    }
  }
}
claude mcp add --transport http fiskmas https://mcp.fiskmas.dev/mcp --header "Authorization: Bearer ${FISKMAS_TOKEN}"
[mcp_servers.fiskmas]
url = "https://mcp.fiskmas.dev/mcp"
bearer_token_env_var = "FISKMAS_TOKEN"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "fiskmas": {
      "type": "remote",
      "url": "https://mcp.fiskmas.dev/mcp",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer {env:FISKMAS_TOKEN}"
      }
    }
  }
}
{
  "mcpServers": {
    "fiskmas": {
      "type": "http",
      "url": "https://mcp.fiskmas.dev/mcp",
      "headers": {
        "Authorization": "Bearer ${FISKMAS_TOKEN}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=fiskmas&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmZpc2ttYXMuZGV2L21jcCIsImhlYWRlcnMiOnsiQXV0aG9yaXphdGlvbiI6IkJlYXJlciAke0ZJU0tNQVNfVE9LRU59In19"
}
{
  "servers": {
    "fiskmas": {
      "type": "http",
      "url": "https://mcp.fiskmas.dev/mcp",
      "headers": {
        "Authorization": "Bearer ${FISKMAS_TOKEN}"
      }
    }
  }
}
{
  "mcpServers": {
    "fiskmas": {
      "httpUrl": "https://mcp.fiskmas.dev/mcp",
      "headers": {
        "Authorization": "Bearer ${FISKMAS_TOKEN}"
      }
    }
  }
}
extensions:
  "fiskmas":
    enabled: true
    name: "fiskmas"
    type: streamable_http
    uri: "https://mcp.fiskmas.dev/mcp"
    headers:
      "Authorization": "Bearer ${FISKMAS_TOKEN}"
    timeout: 300

Placeholders to fill from your own secret store: ${FISKMAS_TOKEN}. The registry never accepts secret values.

Quality 69 / 100needs work

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations21 of 21 tools declare readOnlyHint or destructiveHint
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: list_projects (destructiveHint, idempotentHint, openWorldHint); restart_project (destructiveHint, idempotentHint, openWorldHint); get_stats (destructiveHint, idempotentHint, openWorldHint); …
  • pass
    tools.token_costabout 2,034 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability25 · weight 15
  • warn
    stability.changes8 tool changes in 30 days
  • fail
    stability.rug_pull3 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

21 tools, about 2,034 tokens to load them all · tool set cb6b6bfc6cf5 · tools last changed 2026-10-11 · checked 2026-10-20 10:03 UTC

Tool changes

  • restart_projectchangeddescriptionmeaning changed
    before

    Restart a running project's container.

    after · 12% of words in common

    Restart a running project's container. Recreates the pod, re-running the injected-DB resolver gate and the app's storage probes, and waits for readiness: a failed start returns a named error (e.g. an unresolvable DB host) and a plain retry usually clears a transient DNS drop. Not rate-limited. Env changes are NOT picked up by a restart - redeploy instead.

  • start_projectchangeddescriptionmeaning changed
    before

    Start a stopped project's container.

    after · 32% of words in common

    Start a stopped project's container. Waits until it is ready; a pod that fails to become ready returns a named error.

  • set_envchangeddescription
    before

    Set environment variables on a project. Requires a restart before they take effect.

    after · 50% of words in common

    Set environment variables on a project. They take effect on the next deploy_project: a restart does NOT re-apply env.

  • delete_projectchangeddescriptionmeaning changed
    before

    Stop and delete a project (free the slug after quarantine).

    after · 24% of words in common

    Stop and delete a project. Its slug goes into quarantine for 7 days: you may re-use it immediately, other accounts get a 409 until it is freed.

  • reissue_tokenchangeddescription
    before

    Re-issue the API token for an existing account. Provide the email the account was registered with; Fiskmås emails a fresh one-time verify link to that address. The human clicks it; the verify page shows the new token once (old tokens are revoked immediately). This is the self-service recovery path when a token was lost, rotated, or is being rejected as "invalid or expired". It does not create a new account — for a brand-new account use create_account. Rate-limited: a few requests per hour per email. If you already have a valid token and just want to rotate it, use rotate_token (follows in a later release).

    after · 83% of words in common

    Re-issue the API token for an existing account. Provide the email the account was registered with; Fiskmås emails a fresh one-time verify link to that address. The human clicks it; the verify page shows the new token once (old tokens are revoked immediately). This is the self-service recovery path when a token was lost, rotated, or is being rejected as "invalid or expired". It does not create a new account — for a brand-new account use create_account. Rate-limited: a few requests per hour per email.

  • get_statschangeddescription
    before

    Account-wide or per-project stats for debugging: live CPU/mem vs the plan caps (Free: 128 MB / 0.2 CPU, Plus: 256 MB / 0.5 CPU) and deploy history. Omit `project` for all of the caller's projects; pass a project id or slug NaNalso returns `resources.history` — per-project CPU/mem time series over the window (sampled every ~30 s on the k3s platform; absent on stacks without the metrics collector).

    after · 93% of words in common

    Account-wide or per-project stats for debugging: live CPU/mem vs the plan caps (Free: 256 MB / 0.2 CPU, Plus: 512 MB / 1 CPU) and deploy history. Omit `project` for all of the caller's projects; pass a project id or slug NaNalso returns `resources.history` — per-project CPU/mem time series over the window (sampled every ~30 s on the k3s platform; absent on stacks without the metrics collector).

  • deploy_projectchangeddescription
    before

    Pull an image by digest and run one container with the plan's cpu/memory caps (Free: 128 MB / 0.2 CPU, Plus: 256 MB / 0.5 CPU). Only registry.fiskmas.dev images are accepted. Rate-limited to 1 deploy per 5 minutes per account (429 with a retry-seconds hint); use restart_project for a transient crash - it does not count against the limit. Re-deploying a running project is always allowed; starting a second one on Free is blocked until one stops.

    after · 97% of words in common

    Pull an image by digest and run one container with the plan's cpu/memory caps (Free: 256 MB / 0.2 CPU, Plus: 512 MB / 1 CPU). Only registry.fiskmas.dev images are accepted. Rate-limited to 1 deploy per 5 minutes per account (429 with a retry-seconds hint); use restart_project for a transient crash - it does not count against the limit. Re-deploying a running project is always allowed; starting a second one on Free is blocked until one stops.

  • whoamichangeddescription
    before

    Return the identity of the current token holder (account + provider) plus its subscription plan (free | plus) and the plan's limits: max running projects, per-project memory/CPU caps, log windows, and the project-database fair-use guide. Free plans include an upgrade_url for Plus ($9.99/mo: 5 projects, 256 MB / 0.5 CPU per project, always-on).

    after · 92% of words in common

    Return the identity of the current token holder (account + provider) plus its subscription plan (free | plus) and the plan's limits: max running projects, per-project memory/CPU caps, log windows, and the project-database fair-use guide. Free plans include an upgrade_url for Plus ($9.99/mo: 5 projects, 512 MB / 1 CPU per project, always-on).

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 77 / 100

no-repository
provenance45
liveness100
freshness85
hygiene80

+dns-namespace +reachable +uptime-100% ~updated-35d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.fiskmas.dev/mcp streamable-httpapi_key ${FISKMAS_TOKEN}yes100%506 ms2025-11-252026-10-20

Tools (21)

account_statusread-onlyPoll onboarding state for an email (pending | active | unknown). Use after create_account while waiting for the human to verify.
create_accountStart onboarding: require an email, create a pending account, and email a human verify link. Does NOT return an API token. The human must click the link; the verify page shows the token once. Then configure Authorization: Bearer <token> on this MCP client (also docker login -u <token> registry.fiskmas.dev). If you already have a token, call whoami instead.
create_projectCreate a project and reserve <slug>-app.fiskmas.dev. Slug must match ^[a-z0-9][a-z0-9-]{1,48}$ and is not reserved. Subject to the plan's running-project quota (Free: 1, Plus: 5) — on quota the error tells the human how to upgrade or free a slot.
delete_accountDelete the caller's account. Stops and removes all projects (containers, routes, MariaDB) first, then deletes the account. Refuses to leave orphaned runtimes.
delete_projectStop and delete a project. Its slug goes into quarantine for 7 days: you may re-use it immediately, other accounts get a 409 until it is freed.
deploy_projectPull an image by digest and run one container with the plan's cpu/memory caps (Free: 256 MB / 0.2 CPU, Plus: 512 MB / 1 CPU). Only registry.fiskmas.dev images are accepted. Rate-limited to 1 deploy per 5 minutes per account (429 with a retry-seconds hint); use restart_project for a transient crash - it does not count against the limit. Re-deploying a running project is always allowed; starting a second one on Free is blocked until one stops.
get_logsread-onlyReturn recent container log lines. `tail` = line count (plan default 200; plan max 2000), `since` = time window in seconds (plan window: free 24 h, plus 7 d — logs are live-pod streams, not stored history). When both are given, `since` wins.
get_projectFetch a single project by id or slug.
get_skillread-onlyReturn the bytes of a platform skill by name.
get_statsread-onlyAccount-wide or per-project stats for debugging: live CPU/mem vs the plan caps (Free: 256 MB / 0.2 CPU, Plus: 512 MB / 1 CPU) and deploy history. Omit `project` for all of the caller's projects; pass a project id or slug NaNalso returns `resources.history` — per-project CPU/mem time series over the window (sampled every ~30 s on the k3s platform; absent on stacks without the metrics collector).
get_statusread-onlyReturn project status, url, image digest, and last deploy error.
list_envread-onlyList a project's env keys with masked values (never returns full secrets).
list_projectsread-onlyList the caller's projects with status and URL.
list_skillsread-onlyList the platform skills available to the caller.
reissue_tokenRe-issue the API token for an existing account. Provide the email the account was registered with; Fiskmås emails a fresh one-time verify link to that address. The human clicks it; the verify page shows the new token once (old tokens are revoked immediately). This is the self-service recovery path when a token was lost, rotated, or is being rejected as "invalid or expired". It does not create a new account — for a brand-new account use create_account. Rate-limited: a few requests per hour per email.
restart_projectRestart a running project's container. Recreates the pod, re-running the injected-DB resolver gate and the app's storage probes, and waits for readiness: a failed start returns a named error (e.g. an unresolvable DB host) and a plain retry usually clears a transient DNS drop. Not rate-limited. Env changes are NOT picked up by a restart - redeploy instead.
send_feedbackReport a problem with the Fiskmås toolset so it can be fixed. Use it when a tool errored or misbehaved, you got stuck and can't proceed, or the instructions/skill were unclear. Do NOT use it for praise. kind=bug means it broke, kind=suggestion means it was unclear or could be better, kind=other is anything else that didn't work. Name the `tool` and, if relevant, the `project`. At most one call per session.
set_envSet environment variables on a project. They take effect on the next deploy_project: a restart does NOT re-apply env.
start_projectStart a stopped project's container. Waits until it is ready; a pod that fails to become ready returns a named error.
stop_projectStop a running project's container (keep the image).
whoamiread-onlyReturn the identity of the current token holder (account + provider) plus its subscription plan (free | plus) and the plan's limits: max running projects, per-project memory/CPU caps, log windows, and the project-database fair-use guide. Free plans include an upgrade_url for Plus ($9.99/mo: 5 projects, 512 MB / 1 CPU per project, always-on).

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "dev.fiskmas/fiskmas",
  "title": "Fiskmas",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.fiskmas.dev/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "Authorization",
          "isSecret": true,
          "isRequired": true,
          "description": "Your Fiskmas API token (the raw token; a 'Bearer ' prefix is also accepted). Create a free account at https://fiskmas.dev - the same token is your docker login for registry.fiskmas.dev."
        }
      ]
    }
  ],
  "version": "1.0.0",
  "description": "Hosting for AI agents: your AI client deploys Docker apps to live HTTPS URLs over MCP."
}