{"name":"dev.fiskmas/fiskmas","slug":"fiskmas","title":"Fiskmas","description":"Hosting for AI agents: your AI client deploys Docker apps to live HTTPS URLs over MCP.","url":"https://mcp.market/server/fiskmas","rating":null,"grade":"C","score":64,"certified":false,"status":"active","category":"devtools","tags":["devtools"],"presence":{"score":5,"stars":null,"forks":null,"downloads_week":null,"last_push_at":null,"license":null},"uptime":{"percent":100,"checks":1,"ok":1,"last_checked_at":"2026-09-19T16:30:26.816Z","last_ok_at":"2026-09-19T16:30:26.816Z","latency_ms":656},"claimed":false,"transport":"remote","callable_via_gateway":true,"default_price_micros":0,"repository":null,"website":null,"version":"1.0.0","remotes":[{"type":"streamable-http","url":"https://mcp.fiskmas.dev/mcp","headers":[{"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.","isRequired":true,"isSecret":true,"name":"Authorization"}]}],"packages":[],"tools":[{"name":"account_status","description":"Poll onboarding state for an email (pending | active | unknown). Use after create_account while waiting for the human to verify.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"email":{"type":"string"}},"required":["email"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"create_account","description":"Start 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.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"email":{"type":"string"},"display_name":{"type":"string"}},"required":["email"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"create_project","description":"Create 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.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"name":{"type":"string"},"slug":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"delete_account","description":"Delete the caller's account. Stops and removes all projects (containers, routes, MariaDB) first, then deletes the account. Refuses to leave orphaned runtimes.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"delete_project","description":"Stop and delete a project (free the slug after quarantine).","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"deploy_project","description":"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.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"},"image":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_logs","description":"Return 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.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"},"tail":{"type":"number"},"since":{"type":"number"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_project","description":"Fetch a single project by id or slug.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_skill","description":"Return the bytes of a platform skill by name.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"name":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_stats","description":"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 for a single project. The account rollup also reports the plan and per-project caps.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"get_status","description":"Return project status, url, image digest, and last deploy error.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"list_env","description":"List a project's env keys with masked values (never returns full secrets).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"list_projects","description":"List the caller's projects with status and URL.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"list_skills","description":"List the platform skills available to the caller.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"reissue_token","description":"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).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"email":{"type":"string"}},"required":["email"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"restart_project","description":"Restart a running project's container.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"send_feedback","description":"Report 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.","write_action":true,"price_micros":0,"input_schema":{"type":"object","properties":{"message":{"type":"string"},"kind":{"type":"string"},"project":{"type":"string"},"tool":{"type":"string"}},"required":["message","kind"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"set_env","description":"Set environment variables on a project. Requires a restart before they take effect.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"},"env":{"type":"object","additionalProperties":{}}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"start_project","description":"Start a stopped project's container.","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"stop_project","description":"Stop a running project's container (keep the image).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{"project":{"type":"string"}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"whoami","description":"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).","write_action":false,"price_micros":0,"input_schema":{"type":"object","properties":{},"$schema":"http://json-schema.org/draft-07/schema#"}}],"scan":{"score":64,"grade":"C","scanned_at":"2026-09-19T10:16:13.747Z","report":{"scannerVersion":"0.1.3","scannedAt":"2026-09-19T10:16:13.725Z","components":{"code":{"score":-1,"max":25,"notes":["remote-only server, no package to scan"]},"reliability":{"score":20,"max":20,"notes":["remote reachable in 1226ms"]},"poisoning":{"score":15,"max":15,"notes":["21 tool descriptions checked"]},"auth":{"score":8,"max":15,"notes":["API key sent as a header"]},"maintenance":{"score":3,"max":15,"notes":["no repository listed"]},"identity":{"score":2,"max":10,"notes":["no repository or website to verify"]}},"findings":[{"id":"maint.no-repo","severity":"low","component":"maintenance","title":"No source repository listed"}],"inputs":{"probes":[{"url":"https://mcp.fiskmas.dev/mcp","reachable":true,"authRequired":false,"latencyMs":1226,"serverInfo":{"name":"fiskmas-mcp","version":"0.1.0"}}],"packages":[],"repo":{"found":false},"icon":{"url":"https://fiskmas.dev/apple-touch-icon.png","source":"site","width":180,"height":180},"presence":{"stars":null,"forks":null,"downloadsWeek":null,"license":null,"lastPushAt":null,"score":5}}}},"grade_history":[],"reviews":[]}