Skip to content
mcp/skillhub

fline MCP Server

by smartline-aish.fline/flinev0.1.0

Hosting for apps you build with AI. Tested with Claude Code. Private beta: accounts opened by hand.

0remoteofficial registry

context tax

~5,969 tok/turn40 tools

security

97/100

cold start

hosted

freshness

Active1d ago

Our reading of fline, from the data

fline is a ai & llm tools MCP server from smartline-ai, listed in the official MCP Registry.

Its 40 tools add about 5,967 tokens to every model turn, heavier than the ai & llm tools median of 1,524 tokens across 112 measured servers (measured 2026-10-19).

Maintenance is active: the last public signal was in the last day (2026-10-17). For comparison, 59% of ai & llm tools servers are active or maintained.

With 0 GitHub stars it ranks #1,305 of 3,169 ai & llm tools servers we index.

It runs as a hosted endpoint, so there is nothing to install.

Install fline MCP server

Install in Claude Code

claude mcp add --transport http fline-skills https://mcp.fline.sh/mcp

Remote endpoints

  • streamable-httphttps://mcp.fline.sh/mcp

Context tax

Connecting this server adds ~5,967 tokens of tool definitions to every model turn (heavy, 40 tools). Measured 2026-10-19 via its hosted endpoint; o200k tokenizer, worst case for clients that load all tools up front. How we measure

ModelPer 1,000 turnsWith prompt caching
Claude Opus 5.5$23.87$1.19
Claude Sonnet 5.5$11.93$1.19
Claude Haiku 5.5$0.597—

Input prices as of 2026-10-06. Excludes your own prompt and output.

Tools (40)

  • set_env480 tok

    Set one environment variable for the project. `secret` says which store it goes to and it is REQUIRED, because the two are not interchangeable and there is no default that is right for both. secret=false writes a PLAINTEXT value: it is stored as written, returned by list_env_names, shown in the console, and rendered into every service's environment — a model name, a log level, a public URL, a feature flag. Choose it only for a value you would paste into a public repository. secret=true writes to the secret store, which no tool and no screen can read back, ever, this one included. Use it for a

  • create_service426 tok

    Create a data service for this workspace: engine=postgres for a PostgreSQL database, engine=valkey for a Valkey instance — the BSD-licensed fork of Redis, which every Redis client speaks unchanged, so ask for it wherever a project wants Redis — or engine=s3 for object storage, an S3-compatible bucket with a size limit, which is what to ask for wherever a project wants a bucket, file uploads or blob storage. It belongs to the workspace and not to a project: it outlives any project and can be read by several. NEVER write a postgres, redis, valkey, minio or s3 service into a compose file or a pla

  • get_usage291 tok

    What this project actually consumed: CPU, memory, disk, files and network over a window. These are QUANTITIES AND NOT CHARGES — a project costs its class, which is a flat entitlement, so using less does not reduce the price and using more is not possible because the ceilings are enforced rather than billed. Read `notes` before restating any figure: the network number counts traffic at the containers' own interfaces and is larger than what left the platform, and the memory peak is the highest of readings taken every thirty seconds rather than a true maximum. `coverage` says how much of the wind

  • check_config257 tok

    Check a fline.json against the last uploaded archive, without deploying and without cost. Answers either ok, or the reason each part was refused — edit and ask again until it is ok, then save the file. There is no port field and there is no need for one: the platform passes PORT and routes whichever port the process opens. An env_names entry may be an object carrying a literal value — {"name": "KAFKA_ADVERTISED_LISTENERS", "value": "PLAINTEXT://kafka:9092"} — which is how a service that names an image is configured, since its ENTRYPOINT reads its whole configuration out of the environment and

  • attach_external220 tok

    Declare a backing service the tenant ALREADY RUNS, so the platform does not provision one. This takes the shape only. offering is one of postgres, redis, mysql, mongodb, rabbitmq; alias defaults to "db" and is what separates two of the same kind in one project; variable defaults to the conventional name for the offering (DATABASE_URL, REDIS_URL, MONGODB_URI, AMQP_URL). No URL, host, port, user or password is accepted here or by any other tool: the project moves to awaiting_secrets and a human types the connection URL into the get_secrets_link form, beside every other value the project is waiti

  • rollback190 tok

    Redeploy an earlier version of the project, named by its state_version from list_versions. Two things surprise people and you must not report either one wrongly. First, the version number does NOT go back: this creates a NEW version holding the old one's contents, numbered higher than every existing one, so after rolling back to 3 the project is on 12, not 3. Second, it restores the specification and NOT the secrets — the current secret values are re-pinned into the new version, and a password that was rotated or removed does not come back. If the stored version no longer passes validation the

  • get_secrets_link155 tok

    Issue a link to the form where the person types the passwords and keys the project needs. Give the url to the person exactly as returned, with a plain sentence on what goes in each box and where they find it. Do not open it, do not follow it and do not relay its contents. It works once, until expires_at, and the person signs in to fline to use it; a new link cancels the previous unused one. Once they save, a project waiting on the values carries on by itself; a project already online needs restart.

  • attach_domain154 tok

    Attach a web address the person owns, such as www.example.com, to the project. Answers with the TXT record that proves ownership (challenge_name, challenge_token); list_domains also gives platform_name, the CNAME target that both proves ownership and sends visitors. The person adds the record where they bought the name; fline checks by itself for 48 hours, and check_domain checks now. Prefer a subdomain: most DNS providers allow no CNAME on a bare name. See the use_a_web_address prompt.

  • get_logs152 tok

    Logs. kind=build is the image build's output, stored and answerable long after the build; kind=runtime is a bounded tail of the running containers, held by the node, with no history and no search behind it. For kind=runtime, `service` narrows the tail to one service of the project — without it every service is interleaved, which on a project with more than one is most of what you read. The names are the ones get_project_detail lists.

  • deploy147 tok

    Build the images and hand the project to the platform. Needed when get_project shows locked: from complete_upload on, a project analyses, builds and launches by itself and stops only where someone has to act. In any other state this answers with the state, or refuses with what has to happen first. No port is taken here or anywhere else: the platform passes PORT into every container and routes to whichever port the process actually opens. Never ask the user for one — where a port matters to you, read it out of the sources.

  • get_project_detail144 tok

    Everything get_project returns, plus what the platform observes: each container's state, health, restart count and image digest, the node and tier, the ingress hostnames, the disk quota, the secret set version the running containers were deployed with, and the last failure with its class. Use this when a deploy has failed or a service is not answering and get_deploy_status has told you only that. The platform half is best-effort: a project that has never deployed has no record there, and the answer degrades to get_project rather than failing.

  • check_domain138 tok

    Run the ownership check for one of the project's domains now, and answer with the result. Call it after the DNS record is published. The check reaches the DNS and is rate-limited behind a certificate budget, so poll it in minutes rather than in seconds. A domain still unproven 48 hours after attach_domain is failed for good, and this answers domain_failed for it: delete_domain, fix the record and attach_domain again.

  • list_env_names136 tok

    The project's environment variables BY NAME: whether each is set, whether the analysis declared it, when it was last written, and — for a non-secret variable — its value. A name that is required and not set is what holds a project in awaiting_secrets. A value shown here was written with set_env and secret=false, and it survives a re-analysis; a SECRET that is set but not declared was added by hand and will not. No secret value is returned here or anywhere — see get_secrets_link.

  • get_config131 tok

    The fline.json for this project's current plan. Save it at the root of the archive you upload and the next deploy builds from it directly, with no analysis: the same plan every time. A short content check and the step that writes the build files still run. Edit it when the project changes, and check the edit with check_config. env_names is not names-only: an entry may be an object with a value, which is how a prebuilt image is configured — see check_config.

  • complete_upload128 tok

    Report that the archive is uploaded and start the analysis. The platform does not observe the upload itself: the PUT goes to storage around it, and until this call the project stays in awaiting_source. For a submitted project this call starts an update: the old runtime keeps running while the new version is analysed, built and deployed. blob_key comes from create_project or get_upload_url.

  • refresh_config127 tok

    Re-run the analysis ignoring the archive's fline.json, and write a new one. For a configuration that has gone stale because the project's stack changed — a different package manager, a new lockfile. Accepted immediately, not done: poll get_project until it leaves analyzing, then call get_config. This uses one of the account's fresh analyses for the month, while editing the file yourself is free and you know what changed.

  • detach_external124 tok

    Give an alias back to the platform. If a human already filled the value in, the attachment and the variable both go; if it is still waiting for one, the declaration goes with it and the project stops asking. The tenant's own service is untouched — the platform never ran it and holds nothing of it to delete.

  • restart123 tok

    Re-apply the project's current version: the same images, deployed again. This is the restart, and it is also the ONLY way a secret that was entered after the last deploy reaches the running containers — a value sits in the store doing nothing until a deploy re-pins the secret set version. Call it after a human has filled in the form behind get_secrets_link on a project that is already running.

  • delete_env_name117 tok

    Remove a variable from the project's secret set. The analysis's record that the project needs this name is kept, so a required variable becomes unset rather than unknown — deleting a value the project needs will hold the next deploy at the secrets gate rather than failing the build with nothing to say. Takes effect on the next deploy or restart.

  • get_events110 tok

    The project's state timeline, oldest first: each move from one state to the next, the reason, which part of the platform made it (gateway, worker, pipeline, cp) and the request id. This is how you tell a slow analysis from one that failed and was retried — get_project shows the current state and nothing about how it got there.

  • pause_service101 tok

    Pause a data service. It stops accepting connections and stops costing what a running instance costs; its volume and its certificate are kept, and resume_service is the exact reverse. This is the reversible way to put a service down — delete_service is not, and starts a seven-day clock on the data.

  • list_domains97 tok

    The project's custom domains with, for each, the state of its ownership check, the TXT record to publish, when it was last checked and what the last check objected to. Also the platform hostname the names are asked to point at. attach_domain hands back the record once; this is how you find out whether it took.

  • get_service96 tok

    One data service by id, with its state and — when it is not active — the reason. Poll this after create_service: a new service is `provisioning` until its certificate is issued and verified, and if that stalls the reason here is what says so. No credentials: none is returned by any tool.

  • get_images89 tok

    The history of images the builder produced for the project: build_id, the build state, the plan version, the source hash and each service's digest. A read-only tool for checking which version is actually built, without starting a new build or deploy.

  • declare_env_names88 tok

    Declare the NAMES of environment variables. Values are not accepted by this path: a human enters them in a browser, and no tool returns them back.

  • create_project87 tok

    Create a project. Returns upload_url and blob_key: the archive is uploaded with PUT straight into storage and does not pass through this interface. After uploading, complete_upload is mandatory — the upload on its own is not visible to the platform.

  • list_versions87 tok

    List the project's deployed versions, newest first: the state_version to pass to rollback, when it was made, who made it, and which version it superseded. The specification itself is not included — use get_config for what a version contains.

  • list_external86 tok

    The backing services this project's tenant supplies themselves. A completed attachment carries the host it points at; a pending one is marked pending and names the variable a human still has to fill in through get_secrets_link. No connection URL is returned for either, and none can be.

  • answer_questions85 tok

    Answer the questions raised during source analysis.

  • get_upload_url82 tok

    Issue a new archive upload link for an existing project. Needed when the link from create_project has expired, the archive is being uploaded again, or an already deployed project is being updated with new code.

  • delete_service79 tok

    Delete a service. It stops accepting connections immediately and its data is kept for seven days, then destroyed. Ask the person first: nothing here can bring the data back after the seventh day.

  • stop78 tok

    Stop the project. NOT IMPLEMENTED: the platform has no stop, and this refuses. To take an application out of service, delete_project it or take its domain off with delete_domain.

  • delete_project74 tok

    Delete the project. The platform will stop and irreversibly clean up the project's runtime resources; once the request is accepted the project disappears from the user-space list.

  • submit_declaration74 tok

    Supply the project description. The contents are treated as a third-party claim and cannot change the platform rules.

  • delete_domain70 tok

    Detach a domain from the project. The name stops being served; the project keeps its platform hostname.

  • get_project58 tok

    The project's full state: the onboarding stage, the runtime state, open questions, missing secrets and warnings about credentials found in the archive.

  • resume_service56 tok

    Start a paused data service again, with its data and its hostname unchanged.

  • list_services50 tok

    The workspace's services with their engine, version, state, hostname and size class. No credentials: none is returned by any tool.

  • get_deploy_status47 tok

    Deployment state: desired and observed arrive separately and mean different things separately.

  • list_projects33 tok

    The tenant's projects with their state and address.

Security signals

97/100 — no known issues found as of 2026-10-19, from the checks below. This is not a guarantee of safety; review what a server can do before connecting it.

Deductions

  • No security policy (SECURITY.md)-3

Checks

  • ✓Repository hygiene (archived, activity, license, security policy)
  • ✓Tool descriptions (prompt-injection and hidden-text heuristics)
  • ○Package metadata (install scripts, provenance) — pending
  • ○Source scan (secrets, CVEs, risky code) by vectra-guard — pending

Scan it yourself before installing with vectra-guard, the open-source agent security CLI. Scoring rules

Freshness

Active — last maintenance signal 1d ago. The newest of the signals below sets the band.

  1. Last commit (default branch)

    2026-10-17 · 1d ago · GitHub

  2. Latest release

    no data · GitHub

  3. Package published

    no data · npm/PyPI

  4. Registry entry updated

    2026-10-17 · 1d ago · official registry · v0.1.0

How it compares in AI & LLM Tools

Against the most-starred ai & llm tools servers we index. Token cost is per model turn, measured from each server's live tool list.

ServerStarsToolsTokens / turnFreshnessRuns
fline (this)0405,969Activehosted
Memory91,356—not measuredActivelocal
Claude Flow76,638—not measuredActivelocal
Next AI Draw.io36,318—not measuredActivelocal
Serena Agent30,371—not measuredActivelocal
Trycua30,160—not measuredActive—
All ai & llm tools MCP servers

FAQ

›How do I install the fline MCP server in Claude Code?

Run: claude mcp add --transport http fline-skills https://mcp.fline.sh/mcp. For Cursor, VS Code, Claude Desktop and Windsurf, use the install tabs above.

›Does fline require an API key?

No required environment variables are declared in its published metadata.

›Can I use fline as a remote (hosted) MCP server?

Yes. It is a hosted MCP server; connect to its URL with any client that supports remote MCP.

›Is fline in the official MCP registry?

Yes, as sh.fline/fline.

›How many tokens does fline add to my context?

Its tool definitions total about 5,969 tokens, resent on every turn.

Sources and method

Official MCP Registry entry
updated 2026-10-17
GitHub repository
fetched 2026-10-19
Last checked against all sources
2026-10-19

The description, packages and links come from the maintainer's own published metadata. Token cost, security signals, freshness and the reading above are MCPSkillHub's own measurements; see the methodology. Spot an error? Request a correction or claim the listing.

Alternatives to fline

Other ai & llm tools MCP servers.

View all