Skip to main content
Glama
drknowhow

fluxdots-mcp

Server Quality Checklist

92%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v0.1.0

  • Disambiguation5/5

    Each tool targets a distinct action in the game flow: discovering rooms, managing identity, hosting, joining, inspecting state, moving, and resigning. There is no meaningful overlap or ambiguity between tool purposes.

    Naming Consistency4/5

    All tools share the consistent 'flux_' prefix, and most use clear verb forms like host/join/move/resign. 'flux_rooms' and 'flux_me' are nouns rather than verb_noun, but the pattern remains highly predictable.

    Tool Count5/5

    Seven tools is well-scoped for a multiplayer game client. Each tool serves a necessary step in the lifecycle without redundancy or unnecessary surface area.

    Completeness5/5

    The tool surface covers the full gameplay loop: discover open rooms, establish identity, host or join, read state, move, and resign/claim wins. There are no obvious dead ends or missing operations needed to play the game.

  • Average 3.7/5 across 7 of 7 tools scored. Lowest: 2/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 3 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • Tools from this server were used 2 times in the last 30 days.

  • This repository includes a glama.json configuration file.

  • This server has been verified by its author.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior1/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description must fully disclose behavioral traits. It does not state whether calling the tool is read-only, mutates the agent's state, requires authentication, or returns data. The phrase 'profile instructions' is ambiguous, and no effects or outcomes are described.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness3/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single short sentence with no extraneous words, making it concise and front-loaded. However, it achieves brevity by omitting essential operational meaning, which edges it towards under-specification rather than efficient clarity.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness2/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a zero-parameter tool, the description should quickly convey action and outcome. It does not: the agent is left unsure whether calling this tool returns identity information, updates a profile, or executes instructions. The description is too incomplete to support confident selection and invocation.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema has zero parameters, so schema description coverage is trivially 100%. The description adds no parameter details, but none are needed; this is acceptable for a parameterless tool.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose2/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description, 'Your FluxDots agent identity, rating, and profile instructions,' is a noun phrase rather than a clear action. It names a resource (identity/rating/profile) but does not specify whether the tool retrieves, sets, or applies these items, making it difficult to distinguish from a passive status readout.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines1/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description provides no guidance on when to invoke this tool versus its siblings (flux_rooms, flux_host, flux_join, flux_state, flux_move, flux_resign). There are no usage conditions, preconditions, or alternative tool references, leaving an agent without decision criteria.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior2/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description carries all the responsibility for disclosing behavioral traits. It mentions the action of joining and taking the second seat but does not explain potential side effects (e.g., mutating room state), prerequisites (e.g., needing an open seat), or error conditions. For a tool that likely mutates state, this is a significant gap.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single concise sentence that immediately states the action and key detail. No wasted words, and the most important information (join, code, seat) is front-loaded.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the simplicity of the tool (one parameter, no output schema), the description covers the core purpose well. It could be improved by clarifying the 'second seat' limitation or noting that the room must be 'open,' which is implied but not elaborated. However, for an implementation this simple, the current description is largely sufficient.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the baseline is 3. The description mentions '6-character code' which exactly mirrors the schema's '6-char room code,' adding no additional contextual meaning such as format validation rules or example values. The description provides no extra value beyond the schema.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses a specific verb 'Join' with a resource 'open room' and defines a clear scope: 'by its 6-character code and take the second seat.' It distinguishes itself from siblings like flux_host (hosting) and flux_rooms (listing) by its action and the detail about taking the second seat, making the purpose unambiguous.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines3/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description implies when to use the tool (to join a room) but does not explicitly state when not to use it or mention alternatives. While the sibling tools suggest different operations, no direct comparison or exclusion is provided. This is adequate but relies on the user inferring usage from the simple action described.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description relies solely on 'List' to convey behavior, which implies a read-only operation. However, it does not disclose potential network calls, authentication needs, or error conditions. It is minimally sufficient but lacks depth beyond the verb.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, information-dense sentence with no fluff or repetition. Every word adds value, making it perfectly concise.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    While the description fully answers 'what' and 'what kind', it is slightly terse. For a simple listing tool, it's mostly complete, but could have mentioned if any authentication is implied or if results are real-time. Still, the basic context is adequate.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The tool has zero parameters, and the baseline for such cases is 4 per the rubric. The description does not need to explain parameters since none exist, and it doesn't add unnecessary complexity.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool lists 'joinable open rooms and live in-progress games' on fluxdots.com, using the specific verb 'List' and distinct resources. This differentiates it from siblings like flux_host or flux_join, which imply different operations.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines2/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    While the description is clear, it provides no guidance on when to use this tool versus siblings or any exclusions. There is no mention of alternatives or preconditions, leaving the agent without explicit direction for when to select this tool over others.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries the burden. It usefully discloses the waiting behavior, which is a key behavioral trait. However, it does not clarify whether the call blocks indefinitely, what happens on timeout, what is returned, or whether hosting requires authentication, leaving meaningful gaps.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    A single, front-loaded sentence conveys the core purpose and key behavior with zero filler. Every word earns its place.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a simple one-parameter tool with no output schema or annotations, the description gives the essential purpose and wait behavior. However, the lack of information about return values, timeout behavior, or how to proceed after an opponent is found leaves the tool only partially complete for an agent.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%: board_size is documented as '5, 7 or 9 (default 7)'. The description adds only a redundant default-size mention and no additional meaning, so it meets the baseline without exceeding it.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states a specific action ('Host'), a resource ('new open room'), and the expected outcome ('wait for an opponent'), with a board-size default. It strongly differentiates from siblings like flux_join and flux_rooms.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The phrasing 'Host a new open room' implies this is for creating a new match rather than joining an existing one, and the sibling list confirms alternatives exist. However, it does not explicitly say 'use flux_join to join' or state when not to use this tool, so it stops short of full guidance.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are present, so the description carries the full burden. It discloses the core behavior: moving a piece from source to destination with two constraints. However, it does not describe whether the source square becomes empty, whether turns are validated, what happens on invalid moves, or if the operation is irreversible.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single well-structured sentence that immediately states the action and then clarifies the mapping and constraints. There is no filler or repetition, and it fits the tool's simple interface.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the minimal schema (no descriptions), no annotations, and no output schema, the description provides just enough to understand the move operation. It still omits important context such as board dimensions, coordinate system, and behavior on invalid input, which limits completeness for an agent operating in an unfamiliar environment.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 0% and the schema provides only numeric types. The description adds meaning by labeling fromR/fromC as source ('your piece') and r/c as destination ('empty cell within 2 steps'). It does not explain coordinate system, board bounds, or what '2 steps' means (e.g., Manhattan vs Euclidean).

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description opens with the imperative 'Make your move,' which clearly indicates this is the action to move a game piece. It specifies the source coordinates (fromR/fromC) and destination (r/c) and adds a constraint (empty cell within 2 steps). It is distinct from sibling tools like flux_resign or flux_state.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description gives clear context: this is for moving your piece to an empty cell within 2 steps. It effectively tells an agent when to use the tool (when it is your turn to move), but it does not explicitly mention when not to use it or contrast with alternatives such as flux_resign.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior3/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    No annotations are provided, so the description must carry the behavioral burden. It mentions the 120s stall condition but does not disclose consequences of resigning (e.g., game ends, irreversible action, potential rating impact). The description gives some context but lacks depth about side effects or prerequisites.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is a single, front-loaded sentence with zero redundancy. It efficiently conveys the core action and the optional override condition.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness3/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has one optional param and no output schema, so the description is the main source of context. It explains the two actions but omits important behavioral details like irreversibility, effect on the game room, or how the stall is detected. For a mutation, more completeness would be expected.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The only parameter claim_stall is described in schema, but the description adds the specific deadline (120s) and clarifies the alternative action. Since schema coverage is 100%, the baseline is 3; the added 120s detail raises it to 4.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description uses a specific verb ('Resign') and resource ('current game'), and clearly distinguishes from sibling tools by naming the alternative action ('claim a win if the opponent stalled past the 120s deadline'). It is unambiguous and distinct from the other flux tools.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    The description states the primary use (resign) and the conditional secondary use (claim a stall win after 120s), giving clear context for when to invoke. It does not explicitly contrast with alternatives like flux_move, but the context is sufficient for an agent to decide when this tool is appropriate.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

  • Behavior4/5

    Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

    With no annotations, the description carries full responsibility. It implies a read-only operation by describing a 'current board and turn' and suggests a polling pattern. It does not disclose any potential side effects or error conditions, but the behavior is straightforward and unlikely to be destructive.

    Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

    Conciseness5/5

    Is the description appropriately sized, front-loaded, and free of redundancy?

    The description is concise, using two clear sentences without extraneous details. It directly states what the tool does and when to use it, maintaining a logical structure.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    There is no output schema, but the description indicates the return contains 'current board and turn', giving a basic idea of the result. It doesn't cover error cases or the exact format, but for a simple state-fetching tool, this is adequate context.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters4/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The schema provides no description for the 'code' parameter, but the tool description explains it: it's an optional room code that overrides the default (the room you are seated in). This adds sufficient meaning to the parameter despite missing schema annotations.

    Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

    Purpose5/5

    Does the description clearly state what the tool does and how it differs from similar tools?

    The description clearly states the tool retrieves the current board and turn for a room, either the one you're seated in or specified by code. It distinguishes itself from sibling tools like flux_move (making moves) and flux_join (joining rooms) by focusing on state retrieval.

    Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

    Usage Guidelines4/5

    Does the description explain when to use this tool, when not to, or what alternatives exist?

    It gives explicit guidance on when to call ('between moves to wait for the opponent') and notes the ability to specify any room by code. This differentiates it from the action-oriented sibling tools, though it doesn't explicitly exclude other use cases like checking state before planning a move.

    Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

fluxdots-mcp MCP server

Copy to your README.md:

Score Badge

fluxdots-mcp MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/drknowhow/fluxdots-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server