Skip to main content
Glama
gusztavvargadr

FOAAS MCP Server

FOAAS MCP Server

Docker Build License: MIT Docker Image

⚠️ EXPLICIT CONTENT WARNING ⚠️

A secure, Docker-based Model Context Protocol server exposing FOAAS (Fuck Off As A Service) operations. Perfect for adding humorous (and explicit) responses to development workflows.

Demo

See FOAAS MCP in action responding to GitHub issues with GitHub Copilot:

FOAAS MCP Demo

See it yourself: Demo repository with sample issues and PRs, or create your own demo repo.

Related MCP server: DDG MCP2

Features

  • 🐳 Docker-first (Debian 12, Node.js 20.19.5, non-root)

  • πŸ”§ 23 MCP tools covering common dev scenarios

  • οΏ½ Scenario-based organization (bug reports, code reviews, PRs, etc.)

  • πŸ”’ stdio-only transport (no network exposure)

Quick Start

Using Pre-built Image

docker pull ghcr.io/gusztavvargadr/foaas-mcp:latest

VS Code Configuration (.vscode/mcp.json):

{
  "mcpServers": {
    "foaas": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "ghcr.io/gusztavvargadr/foaas-mcp:latest"]
    }
  }
}

Building from Source

git clone https://github.com/gusztavvargadr/foaas-mcp.git
cd foaas-mcp
npm run docker:build

Restart MCP server in VS Code (GitHub Copilot status bar β†’ Restart MCP Servers).

Available Tools (23 Total)

All tools provide direct 1:1 mapping to FOAAS operations with foaas_ prefix:

Appreciation & Praise (4): thanks, awesome, legend, dalton
Rejections & Dismissals (3): because, zero, bye
Direct Confrontations (4): off, gfy, chainsaw, keep
General Frustration (3): everyone, flying, asshole
Code Review & Quality (9): logs, rtfm, think, thinking, shutup, look, ridiculous, understand, cool

Usage Scenarios

Bug Reports & Debugging

"Works on my machine" / Runtime errors

  • foaas_logs - When the solution is clearly in the logs

"How do I use X?" / Questions already in docs

  • foaas_rtfm - When documentation exists but wasn't read

General confusion

  • foaas_zero - Express complete disinterest

  • foaas_everyone - Universal dismissal

  • foaas_flying - Maximum level of not caring

Code Reviews

Questionable code / Bad decisions

  • foaas_think - Question someone's thought process

  • foaas_thinking - Alternative phrasing for questioning decisions

Pointing out issues

  • foaas_look - Request someone examine something specific

Nitpicking / Endless debates

  • foaas_shutup - Stop bikeshedding and trivial arguments

Great contributions

  • foaas_legend - Genuine praise for someone

  • foaas_dalton - Call someone a problem-solving hero

Pull Requests & Issues

Spam / Duplicates

  • foaas_off - Classic dismissal

  • foaas_bye - End the conversation

  • foaas_thanks - Sarcastic gratitude

Absurd requests / Scope creep

  • foaas_ridiculous - For unrealistic requirements

  • foaas_chainsaw - Dramatic reaction to absurdity

Unclear requirements

  • foaas_understand - Express genuine confusion

Sarcastic approval

  • foaas_cool - Dismiss excuses with peak sarcasm

  • foaas_awesome - Enthusiastic (but maybe ironic) celebration

Team Communication

General frustration

  • foaas_everyone - Dismiss all parties

  • foaas_flying - Express not caring

  • foaas_asshole - General purpose frustration

Rejecting requests

  • foaas_because - Answer "why not?" emphatically

  • foaas_zero - Show complete disinterest

Direct confrontation

  • foaas_gfy - Military-style professional profanity

  • foaas_keep - Extended dismissal for persistent issues

Team praise

  • foaas_legend - Call someone a legend

  • foaas_dalton - Acknowledge problem-solving skills

Example Usage

GitHub Copilot Integration

Ask Copilot to use FOAAS MCP tools in natural language:

"Respond to this bug report with no logs" β†’ foaas_logs
"Acknowledge @contributor's excellent fix" β†’ foaas_legend
"This feature request is unrealistic" β†’ foaas_ridiculous
"Stop bikeshedding on variable names" β†’ foaas_shutup

Direct Tool Calls

All tools require a from parameter. Tools with a target require to:

{
  "name": "foaas_legend",
  "arguments": {
    "to": "contributor",
    "from": "maintainer"
  }
}
{
  "name": "foaas_logs",
  "arguments": {
    "from": "support-bot"
  }
}

Documentation

Image Tags

  • latest - Latest stable release

  • v1.0.0 - Semantic versions

  • sha-<commit> - Specific commits (testing)

Security

  • Process isolation via Docker

  • Non-root user (nodejs UID 1001)

  • Minimal Debian 12 Bookworm Slim base

  • stdio-only transport (no network)

  • Regular security updates

License

MIT License - See LICENSE file for details

Available Tools

23 tools
foaas_assholeA

Use for general insults, self-deprecation, expressing anger broadly, or making a non-specific negative statement. No target needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A4.3/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses that no target is required and describes the range of uses (general insults, self-deprecation, etc.). It does not mention response format or side effects, but for a simple operation this is adequate.

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?

Two sentences, front-loaded with purpose and usage conditions. Every sentence adds value without redundancy.

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

Completeness5/5

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

For a simple tool with one optional parameter and no output schema, the description covers purpose, usage context, and key behavioral trait (no target needed). No gaps apparent.

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 coverage is 100% for the single parameter 'from,' and the description provides no additional meaning beyond what the schema already includes. The description's 'No target needed' does not relate to the parameter. Baseline 3 is appropriate because the schema does the heavy lifting.

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 explicitly states the tool is for general insults, self-deprecation, expressing anger broadly, or making non-specific negative statements. It distinguishes from sibling tools by noting 'No target needed,' which implies other tools require a target.

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 provides clear context for when to use this tool (no target needed, general insults) but does not explicitly name alternatives or mention when not to use it. However, the context is sufficient to differentiate from most siblings.

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

foaas_awesomeA

Use for enthusiastic celebration, expressing excitement, praising success, or showing genuine enthusiasm about something great.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only describes the intended usage but fails to mention what the tool actually returns (e.g., a profane enthusiastic message), leaving the agent unaware of the output's nature.

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 front-loads the key information. Every word adds value, and there is no redundancy.

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 tool with one optional parameter and no output schema, the description captures the purpose. However, it misses explaining the actual response content, which is important context 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 coverage is 100% with the 'from' parameter already described in the schema. The tool description adds no further parameter details, so the baseline score of 3 is appropriate.

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 specific verbs ('enthusiastic celebration, expressing excitement, praising success') that clearly differentiate this tool from its siblings, which likely produce insults. The purpose is distinct and unambiguous.

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 explicitly states when to use the tool (enthusiastic celebration, excitement, praise). While it does not mention when not to use it or provide alternative tools, the positive tone alone distinguishes it from the likely negative sibling tools, giving adequate guidance.

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

foaas_becauseA

Use when answering "why" questions dismissively, refusing to explain, rejecting requests emphatically, or shutting down interrogations.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only states the purpose but does not mention that the response is likely offensive, that it has no side effects, or any required permissions. The agent gets no insight into return format or safety.

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 one sentence that efficiently lists use cases. It is front-loaded and has no redundant words.

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 tool with one optional parameter and no output schema, the description is adequate but could be improved by mentioning what the response looks like (e.g., a dismissive string). It serves its purpose but leaves gaps.

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 coverage is 100% with a clear description of the 'from' parameter. The tool description adds no extra meaning about the parameter, so it does not improve on 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 clearly states the tool is for dismissively answering 'why' questions, refusing to explain, or shutting down interrogations. It specifies a distinct scenario among many sibling tools like 'foaas_asshole' or 'foaas_thanks'.

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 explicitly lists when to use the tool (e.g., 'answering why questions dismissively'). It does not provide when-not-to-use or alternative tool names, but the given scenarios are sufficient for correct selection.

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

foaas_byeB

Use for ending conversations emphatically, saying goodbye dismissively, terminating discussions, or leaving a situation dramatically.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations provided, so description must cover behavioral traits. It lacks any mention of side effects, return format, or required permissions. The agent is left uninformed about what the tool actually produces.

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

Conciseness4/5

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

Single sentence with multiple synonyms but still reasonably concise. Not overly verbose, though it could be trimmed without losing meaning.

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 tool with one optional parameter and no output schema, the description is adequate but lacks behavioral details. The agent would benefit from knowing the response type (e.g., text or formatted message).

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 coverage is 100%, so baseline is 3. The description does not add parameter meaning beyond the schema; the 'from' parameter is already documented in the schema. No additional constraints or examples given.

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

Purpose4/5

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

The description uses specific verbs like 'ending', 'saying goodbye', 'terminating', 'leaving' clearly indicating the tool's purpose. It differentiates from sibling tools by focusing on dismissive farewells rather than general insults or commands.

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?

Explicitly states when to use the tool (ending conversations, saying goodbye, terminating discussions, leaving dramatically). Does not provide alternative tools or when not to use, but the context is clear enough for an agent to infer appropriate usage.

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

foaas_chainsawB

Use for expressing sarcastic disbelief, showing exaggerated shock at someone, reacting to absurdity, or using pop culture references. Requires a target.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

B3.3/5.0
Behavior2/5

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

No annotations provided. The description only mentions that it 'requires a target', implying the 'to' parameter is needed. It does not disclose any behavioral traits such as whether the action is destructive, rate limits, authentication needs, or what the response looks like.

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 two clear sentences: the first defines the purpose, the second states a requirement. No wasted words, and the key information is front-loaded.

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 tool's role in a set of similar tools, the description covers the core usage. However, without an output schema, it would benefit from describing what the tool returns (the phrase itself), and it does not fully differentiate from siblings.

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%, with both 'to' and 'from' already well described. The tool description reinforces that a target is required but adds no new meaning beyond the schema. Baseline 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool's emotional tone (sarcastic disbelief, exaggerated shock, absurdity, pop culture references) and that it requires a target. This distinguishes it from siblings like 'foaas_asshole' (direct insult) or 'foaas_awesome' (sarcastic praise), though it does not explicitly name the exact phrase or output format.

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 hints at when to use this tool (for specific reactions), but does not provide explicit guidance on when not to use it or compare it to siblings. No alternatives or exclusions are mentioned.

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

foaas_coolB

Use for sarcastic approval, dismissing excuses, responding to lengthy explanations that don't matter, or when someone is making excuses for failures. Peak sarcasm energy.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

B3.2/5.0
Behavior3/5

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

No annotations are provided, so the description must disclose behavioral traits. It indicates the output is sarcastic ('Peak sarcasm energy') but does not specify the return format (e.g., plain text), side effects, or that it is a read-only operation. The description adds some context but lacks complete transparency.

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

Conciseness4/5

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

The description is short but informative, fitting the essential usage context into a single sentence plus a tagline. It is front-loaded with the key purpose. Could be slightly more structured, but no fluff is present.

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?

Given the tool has no output schema and only one optional parameter, the description should explain the return value or behavior. It only describes when to use it, not what the tool actually produces or the effect of the 'from' parameter beyond the schema. This leaves the agent without a full understanding of the tool's output.

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 coverage is 100%: the only parameter 'from' already has a description in the schema. The tool description adds no additional meaning beyond the schema. Therefore, per guidelines, baseline 3 is appropriate.

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

Purpose3/5

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

The description states the tool is for 'sarcastic approval' and lists usage scenarios, which gives a clear sense of its purpose. However, it does not explicitly state the action (e.g., 'generates a sarcastic message') and does not differentiate from sibling tools like 'foaas_awesome' or 'foaas_think', which also convey tones. The verb 'use for' is less precise than a direct action verb.

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 provides explicit when-to-use scenarios (sarcastic approval, dismissing excuses, etc.), which helps the agent select this tool over others. It does not mention when not to use or alternative tools, but the context is clear enough for most cases.

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

foaas_daltonA

Use when praising someone for solving difficult problems, fixing critical issues, being a hero, or handling tough situations brilliantly. Requires a target person.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided. The description does not disclose behavioral traits such as whether the tool is read-only, what it returns, or any side effects. For a tool without annotations, more transparency is needed.

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?

Two sentences, extremely concise and front-loaded with the usage condition. No extraneous information.

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 simple schema and no output schema, the description covers purpose and usage but lacks behavioral transparency. It does not explain what the tool returns (e.g., a message), which could hinder an agent's understanding.

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 schema already documents both parameters. The description adds only a brief reinforcement ('Requires a target person') but no new semantic detail.

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 is for praising someone for solving difficult problems, fixing critical issues, or being a hero. It uses a specific verb ('praising') and resource ('someone'), and the context of sibling tools (many with negative connotations) helps distinguish it.

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?

Explicitly says 'Use when praising someone...' providing clear context. It mentions it requires a target person, but does not explicitly contrast with alternatives (e.g., siblings like foaas_awesome for general praise).

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

foaas_everyoneA

Use for dismissing everyone at once, expressing frustration with all parties, universal rejection, or showing you're done with everything and everyone.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must bear the full burden of disclosing behavior. It does not state that the tool is read-only, returns a message, or has any side effects. The description implies an action but actual behavior is not clarified.

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 sentence that is concise and front-loaded. Every word adds value; there is no redundant information.

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 is simple with one optional parameter and no output schema. However, the description does not mention what the tool returns (e.g., a message string), leaving some incompleteness. Given the low complexity, a score of 3 reflects adequate but not full coverage.

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?

The input schema already provides a clear description for the single parameter 'from' (100% coverage). The tool description adds no additional meaning about the parameter, so a baseline score of 3 is appropriate.

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's purpose: dismissing everyone at once, expressing frustration, etc. It uses specific verbs and context, and distinguishes from siblings by targeting everyone rather than individuals.

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 provides clear context on when to use the tool ('Use for dismissing everyone...'). However, it does not explicitly mention when not to use it or suggest alternatives, but the guidance is sufficient given the simple nature of the tool.

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

foaas_flyingB

Use for expressing maximum indifference, showing extreme lack of concern, emphasizing you really don't care, or dismissing something as completely irrelevant.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are provided, so the description must cover behavior. It only describes the sentiment and fails to disclose that the tool returns a string or any other behavioral traits.

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

Conciseness4/5

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

The description is a single sentence listing use cases, which is concise and front-loaded with the primary purpose. Minimal waste.

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 tool has one optional parameter and no output schema, the description adequately conveys the purpose. However, it lacks explanation of the return format or any side effects, leaving some context incomplete.

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?

The input schema has one parameter with description and 100% coverage. The tool description adds no extra meaning beyond what the schema provides, so baseline score of 3 is appropriate.

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

Purpose4/5

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

The description clearly states the tool is for expressing indifference and lack of concern using specific verb phrases. It is distinct from siblings in sentiment but does not explicitly differentiate from other foaas tools.

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 provides clear contexts for when to use the tool (expressing indifference, dismissing irrelevance), but does not mention when not to use it or suggest alternatives among siblings.

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

foaas_gfyA

Use for military-style dismissal, telling someone off in a formal manner, dismissing with phonetic code, or adding professional flair to profanity. Requires a target.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavior. It mentions 'military-style dismissal' and 'profanity' but does not describe the output format or confirm that the tool returns a string. Key behavioral traits like side effects or response structure are omitted, leaving the agent to infer from the tool's name and context.

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 efficiently conveys the core purpose and requirement. It is front-loaded and contains no superfluous words.

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?

Given the simplicity of the tool (2 parameters, no output schema, no annotations), the description should provide enough context for an agent to use it correctly. It lacks information about the return value (e.g., a profane string), which is essential for understanding the tool's outcome. The sibling names hint at similar tools, but the description itself is incomplete.

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?

Input schema coverage is 100% with detailed descriptions for both parameters. The tool description adds minimal value beyond stating that a target is required, which is already covered by the schema's required field. Thus, baseline score of 3 is appropriate.

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 specifies the tool's purpose: 'military-style dismissal, telling someone off in a formal manner, dismissing with phonetic code, or adding professional flair to profanity.' This distinguishes it from other profanity tools in the sibling list, such as 'foaas_asshole' or 'foaas_shutup'. The additional note 'Requires a target' reinforces the necessity of the 'to' parameter.

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 explicitly states the use case scenarios, implying when to invoke this tool. However, it does not explicitly state when not to use it or mention alternatives. The sibling tool names provide implicit context, but the description itself lacks direct exclusionary guidance.

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

foaas_keepB

Use for dealing with persistent annoyances, dismissing someone who keeps bothering you, extended rejection, or emphasizing that someone should stay away. Requires a target.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden of behavioral disclosure. It mentions requiring a target but does not explain the tool's core action (e.g., returns a generated message) or side effects. The description focuses on use cases rather than what the tool actually does.

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

Conciseness4/5

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

The description is one concise sentence that immediately states the purpose ('Use for dealing with persistent annoyances...') and required element ('Requires a target'). It is front-loaded and contains no redundant information.

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 tool's simplicity (likely returning a string), the description is mostly adequate. However, it lacks explanation of what the tool outputs or its broader context as a 'Fuck Off As A Service' tool. The sibling tools are similar, but the description could briefly mention the response nature.

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%, with both parameters ('to' and 'from') fully described in the input schema. The tool description adds no additional meaning beyond the schema. Per guidelines, baseline is 3 when coverage is high.

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 is for dealing with persistent annoyances, dismissing someone, extended rejection, or emphasizing staying away. It uses a specific verb ('dealing with,' 'dismissing') and resource ('persistent annoyances'). This distinguishes it from sibling tools like foaas_asshole or foaas_bye, which have different emotional tones.

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 provides context for when to use (persistent annoyances, dismissal) and notes it requires a target. However, it does not explicitly state when not to use this tool or name alternatives among the many sibling tools. Usage is implied but not comprehensive.

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

foaas_legendA

Use for praising someone highly, calling someone amazing, recognizing exceptional work, or complimenting heroic efforts. Requires a target person.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.5/5.0
Behavior2/5

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

No annotations are provided, so the description must disclose behavioral traits. It only states the purpose and that a target is required. It does not mention that the tool generates a humorous/meme-like message, its safety profile, or any side effects. The description lacks transparency about the nature of the output.

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 two sentences, directly stating the purpose and a key requirement. It is front-loaded with the primary use. Every word adds value with no redundancy or fluff.

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 tool with no output schema and minimal parameters, the description covers purpose and parameter requirement adequately. However, it omits the humorous/ironic context of the FOAAS service, which might confuse an agent unfamiliar with the convention. It is complete for basic use but lacks nuance.

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?

Input schema coverage is 100% with clear descriptions for both 'to' and 'from'. The description adds 'Requires a target person' which reinforces the 'to' parameter but does not provide significant new semantics beyond the schema. Baseline score of 3 is appropriate.

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 is for praising someone highly, calling amazing, recognizing exceptional work, or complimenting heroic efforts. The verb 'praising' and specific use cases make the purpose explicit. The positive tone distinguishes it from sibling tools like 'foaas_asshole' which are clearly insults, so the agent can differentiate.

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 indicates when to use (for praise/recognition) and implies it requires a target person, but does not explicitly provide when-not-to-use or compare to alternatives. The sibling tool names suggest others are for insults, but this is not stated. The guidance is minimal but functional.

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

foaas_logsD

Use when someone asks about runtime errors, debugging issues, "it doesn't work" problems, or when the solution is clearly in the logs. Perfect for lazy debugging requests.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

D1.6/5.0
Behavior1/5

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

No annotations are provided, so the description must disclose behavior. It claims the tool handles debugging, but it likely returns a FOAAS message (a joke response). This contradiction between implied functionality (log retrieval) and actual behavior (profanity generation) is a severe transparency failure.

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

Conciseness4/5

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

The description is short (two sentences) and front-loaded with use-case context. However, it sacrifices accuracy for brevity; while concise, it is misleading. Still, it earns a 4 for not being verbose.

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

Completeness1/5

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

With one optional parameter and no output schema, the description should fully explain the tool's behavior and return value. It fails to mention that the tool is a FOAAS endpoint returning a profane log-related message, leaving the agent completely in the dark about what the tool actually does.

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 coverage is 100% for the single 'from' parameter, with a clear description in the schema. The tool description adds no additional parameter insights beyond what the schema already provides, so a baseline score of 3 is appropriate.

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

Purpose1/5

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

The description states 'Use when someone asks about runtime errors, debugging issues...' which implies the tool provides actual logs. However, the sibling tool names (e.g., foaas_asshole) indicate this is a FOAAS endpoint that returns a profane message, not real logs. The description is misleading and does not accurately convey the tool's purpose.

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 suggests using this tool for debugging requests, but it does not differentiate from alternatives. It fails to mention that the tool is a joke or that it returns a profane message, and it provides no guidance on when not to use it or what alternatives exist (like actual logging tools).

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

foaas_lookB

Use when requesting code review, pointing out issues in someone's work, drawing attention to problems, or asking someone to examine something specific. More direct than a polite review request.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

B3.3/5.0
Behavior2/5

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

No annotations exist, so the description carries full burden. It fails to disclose that the tool generates offensive/profane content, only hinting at being 'more direct.' Crucial behavioral traits like return value format (likely a string with 'Look' and profanity) and potential social impact are omitted.

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

Conciseness4/5

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

The description is two sentences, no filler. It is front-loaded with usage context. Slightly better if it started with 'Generates a rude 'look' message for...' but still concise and efficient.

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?

Given no output schema, the description should clarify what the tool returns (e.g., a string, a message). It solely focuses on when to use it, ignoring the output behavior. Essential context is missing for an agent to understand the tool's full effect.

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 coverage is 100%; the description adds no extra meaning to parameters beyond the schema's existing descriptions. Baseline 3 is appropriate as the description does not elaborate on parameter usage or constraints.

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

Purpose4/5

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

The description clearly states the tool is for requesting code review, pointing out issues, or drawing attention to problems, and distinguishes it as 'more direct than a polite review request.' This gives a specific verb-resource purpose, though it does not explicitly mention that the output is a profane message.

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 provides clear usage scenarios (code review, pointing out issues) and a comparative guideline (more direct than polite request). However, it does not specify when not to use it or compare to sibling tools like foaas_rtfm or foaas_chainsaw, which could serve similar yet distinct purposes.

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

foaas_offB

Use for direct dismissal of someone, telling a person to go away, rejecting someone firmly, or expressing strong disapproval of an individual. Requires a target.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

B3.3/5.0
Behavior3/5

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

No annotations are provided, so the description carries full burden. It states the tool generates a dismissive statement but does not disclose that it is a pure read operation with no side effects, which is expected. Adequate for a simple tool.

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, focused sentence that efficiently conveys the tool's purpose without wasted words.

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 description covers the purpose and required parameter, but does not mention the return format (e.g., plain text) despite no output schema existing. Moderate completeness for a simple tool.

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 coverage is 100%, so baseline is 3. The description adds no extra meaning beyond the schema; it repeats that a target is required, which is already indicated.

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

Purpose4/5

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

The description clearly states the tool is for direct dismissal and rejecting someone, with a required target. It is specific about the action's tone, but does not differentiate from closely related sibling tools like 'foaas_gfy'.

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?

The description lacks guidance on when to use this tool vs. alternatives among the many sibling tools. No comparison or exclusion criteria are provided.

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

foaas_ridiculousA

Use for absurd requirements, impossible deadlines, unrealistic feature requests, or situations that are clearly beyond reasonable. Perfect for scope creep and feature bloat discussions.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations are provided, so the description must cover behavior. It only describes use cases, not what the tool returns (e.g., a message) or any side effects. For a simple tool with one optional parameter, some behavioral context is missing.

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

Conciseness4/5

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

Two sentences efficiently convey the tool's primary use cases. No wasted words, though adding a brief note on return type could improve completeness without sacrificing conciseness.

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 tool's simplicity (one optional param, no output schema), the description provides sufficient context for an AI to decide when to use it. It lacks return format details but is otherwise adequate.

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 coverage is 100% for the single 'from' parameter. The description adds no extra meaning beyond the schema's description, so baseline 3 applies.

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 explicitly states the tool is for 'absurd requirements, impossible deadlines, unrealistic feature requests, or situations that are clearly beyond reasonable.' It clearly distinguishes from siblings like 'foaas_asshole' or 'foaas_awesome' by targeting 'ridiculous' scenarios.

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 lists specific use cases ('scope creep and feature bloat discussions') and implies when to use, but does not explicitly exclude alternatives or mention when not to use.

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

foaas_rtfmA

Use for questions clearly answered in documentation, basic issues that show no research effort, lazy requests, or RTFM situations. Perfect response to "how do I do X?" when X is in the docs.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A4/5.0
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 full burden. It describes the purpose but does not disclose what the tool actually returns (e.g., a specific message) or any side effects. For a simple tool, this is adequate but not fully transparent.

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?

Two sentences clearly and concisely convey the tool's purpose and usage. No unnecessary words or repetition. Front-loaded with the core use case.

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 tool's simplicity (one optional parameter, no output schema), the description is mostly complete. It could be improved by briefly noting the response format (e.g., a FOAAS-style RTFM message), but overall it provides sufficient context for an AI 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% as the sole parameter 'from' is documented in the schema. The description adds no additional meaning beyond the schema, so baseline score of 3 applies.

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 explicitly states the tool is for handling 'RTFM' situations, such as questions clearly answered in documentation or lazy requests. It distinguishes from siblings by specifying the exact use case, making it clear when this tool should be selected.

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 clearly states when to use the tool (for basic issues, no research effort, RTFM scenarios) but does not explicitly mention when not to use it or suggest alternatives. However, given the sibling list, the context implies alternatives exist for other responses.

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

foaas_shutupA

Use for bikeshedding, endless debates, off-topic discussions, nitpicking in code reviews, or when someone won't stop arguing about trivial matters. Direct and unambiguous dismissal.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.9/5.0
Behavior2/5

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

The description claims a 'direct and unambiguous dismissal' but does not disclose behavioral traits such as whether it is read-only or destructive, nor does it describe the response nature (e.g., a string containing an insult). No annotations are present, so the description carries full burden, but it fails to provide sufficient behavioral detail.

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

Conciseness4/5

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

The description is concise at two sentences, covering use cases and intent. However, the second sentence 'Direct and unambiguous dismissal' could be more informative; it is slightly redundant with the first sentence.

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 lack of output schema and annotations, the description is fairly complete for a simple dismissal tool. However, it does not explain what the tool returns (e.g., a string like 'Shut the f*ck up, [to].'), which would help an agent understand the output format. It covers the input well but misses output context.

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

Parameters5/5

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

The description adds significant meaning to the parameters: it explains that 'to' can be a person, issue author, PR creator, bug, etc., and provides default value for 'from'. With 100% schema coverage, the description still enhances understanding 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 clearly states the tool's purpose: to shut up someone in the context of bikeshedding, endless debates, off-topic discussions, nitpicking, or trivial arguments. It uses specific verbs ('dismissal') and resource ('shut up'), and distinguishes from siblings by specifying the scenarios where it is appropriate.

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 explicitly lists when to use the tool, covering common scenarios like bikeshedding and code review nitpicking. However, it does not explicitly state when not to use it or provide alternative sibling tools, though the context hints at the range of other FOAAS tools.

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

foaas_thanksA

Use for sarcastic thanks, ironic gratitude, expressing annoyance while thanking, or responding to unwanted help.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.6/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. However, it only states the purpose without any details on side effects, response characteristics, or required permissions. For a simple web service, this is minimal disclosure; for example, it doesn't clarify if the action is read-only or if it triggers any external effects.

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

Conciseness4/5

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

The description is a single, front-loaded sentence that efficiently lists use cases without extraneous words. It is appropriately concise, though it could benefit from a brief mention of output format without becoming verbose.

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 tool's simplicity (one optional parameter, no output schema, no annotations), the description covers the essential usage context. However, it lacks any explanation of return values or potential error conditions, leaving some gaps for a complete understanding.

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?

The input schema already describes the only parameter 'from' with 100% coverage. The description does not add any additional semantics beyond the schema. According to the criteria, with high schema coverage, a baseline of 3 is appropriate.

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's purpose for sarcastic thanks, ironic gratitude, and similar nuances, which are distinct from sibling tools like foaas_asshole or foaas_gfy. It specifies the verb 'thanks' and the resource (the concept of thanks), making it easily interpretable.

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 provides explicit situations for using the tool, such as 'expressing annoyance while thanking' or 'responding to unwanted help'. It implies context for when to use it, but does not explicitly mention when not to use or name alternative sibling tools, which would enhance guidance.

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

foaas_thinkB

Use for questionable code, bad decisions in PRs, WTF commits, poor architectural choices, or when reviewing something that makes you wonder about the author's thought process.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

B3.4/5.0
Behavior2/5

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

No annotations are provided, so the description must fully disclose behavior. It does not describe what the tool actually does (e.g., returns a message, calls an API), any side effects, or output format, leaving significant gaps in understanding the tool's execution and consequences.

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

Conciseness4/5

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

The description is a single concise sentence that front-loads the usage scenarios. It is efficient with no wasted words, but could be improved by including a brief functional statement at the beginning.

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 tool's simplicity (2 parameters, no output schema), the description adequately covers when to use it but fails to explain what the tool returns or does behaviorally. This gap leaves the description incomplete for full understanding.

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?

The input schema already provides descriptions for both parameters (to and from) with full coverage. The tool description adds no additional parameter information, so it does not improve understanding beyond the schema. Baseline score of 3 applies.

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

Purpose4/5

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

The description provides specific usage scenarios (questionable code, bad decisions, WTF commits) that clarify the tool's purpose and differentiate it from siblings like foaas_asshole or foaas_awesome. However, it does not explicitly state that the tool generates a response expressing confusion or disapproval, leaving some ambiguity about the action.

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 lists clear scenarios for when to use this tool (questionable code, bad decisions in PRs, etc.), giving context for appropriate use. It does not explicitly mention when not to use it or name alternative tools, but the stated context implicitly guides selection among similar foaas tools.

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

foaas_thinkingA

Alternative phrasing for questioning someone's thought process. Use for similar scenarios as foaas_think - bad code, poor decisions, questionable commits. Offers variety in tone.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.7/5.0
Behavior2/5

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

No annotations provided, so the description must fully convey behavior. It only notes that the tool is an 'alternative phrasing' and does not describe output format, side effects (e.g., non-destructive), or what the returned content looks like. This leaves significant behavioral ambiguity.

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?

Two sentences, each adding distinct value: first explains purpose, second gives usage context. No redundancy or unnecessary detail.

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 no output schema and no annotations, the description covers usage scenarios but omits return format (e.g., a string message) and any behavioral details. It is adequate but incomplete for a tool with no supplementary structured data.

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 coverage is 100%, with clear descriptions for both parameters. The description adds no additional meaning beyond what the schema provides, so baseline 3 is appropriate.

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

Purpose4/5

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

The description specifies it's an alternative phrasing for questioning thought processes, clearly distinguishing it from the sibling foaas_think by mentioning 'offers variety in tone'. It identifies the verb-resource (questioning someone's thought process) and differentiates from a similar tool.

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

Usage Guidelines5/5

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

Explicitly states when to use ('similar scenarios as foaas_think - bad code, poor decisions, questionable commits') and implicitly distinguishes it as a tonal alternative, providing clear decision criteria.

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

foaas_understandA

Use when requirements are unclear, code is confusing, documentation is missing, or someone's explanation makes no sense. Expresses genuine confusion about what someone is trying to communicate.

ParametersJSON Schema
NameRequiredDescriptionDefault
toYesREQUIRED: Who/what to direct this at. Use context: person name, issue author, PR creator, bug, annoying request, etc.
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A3.7/5.0
Behavior3/5

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

No annotations are provided, so the description carries the burden. It states that the tool 'expresses genuine confusion' but does not disclose whether it is a read-only operation, returns text, or any side effects. For a simple message-generating tool, this is minimally adequate but could be improved by explicitly stating it only returns a message and is non-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?

Two sentences, front-loaded with usage condition, no wasted words. Every sentence adds value: first tells when to use, second clarifies what it expresses.

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 description covers when to use and what it expresses, but lacks information about return format, behavior (e.g., if it's a read-only operation), or any output schema. Given the tool's simplicity and sibling context, it's adequate but not thorough.

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 coverage is 100%, so the schema already documents both parameters. The description adds context by explaining the purpose (e.g., 'to' directs confusion at someone), but it does not add new details beyond what the schema provides. Baseline is 3.

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

Purpose4/5

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

The description clearly states the tool expresses confusion when requirements are unclear or explanations are confusing. It specifies the resource (the target of confusion) and action (express confusion), but the name 'foaas_understand' could be misinterpreted as understanding rather than confusion, slightly reducing clarity.

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 explicitly lists when to use this tool: when requirements, code, documentation, or explanations are confusing. It provides clear context for usage, differentiating it from sibling tools that express other emotions (e.g., foaas_asshole for anger), though it lacks explicit when-not-to-use guidance.

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

foaas_zeroA

Use when expressing complete disinterest, showing zero concern, indicating you don't care at all, or dismissing something as unimportant.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromNoWho is performing this action. This does not affect response content. Defaults to "gusztavvargadr/foaas-mcp" if not provided.

TDQS

A4.1/5.0
Behavior3/5

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

Without annotations, the description should disclose behavioral traits. It explains the emotional context but fails to mention that the tool returns a message (likely a string), that it's a read operation, or any side effects. The parameter 'from' is described in schema, but the overall output behavior is unspecified.

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 usage context. No extraneous words, and it is front-loaded with the most important information.

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 that there is no output schema, the description should provide insight into what the tool returns. It does not mention the output type or structure. For a simple tool with one optional parameter, it is partially complete but lacks return value information.

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 coverage is 100% for the single parameter 'from', with a description provided in the schema. The tool description does not add additional meaning beyond the schema, so baseline score of 3 is appropriate.

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's purpose: expressing disinterest or zero concern. It uses specific verbs like 'expressing', 'showing', 'indicating', 'dismissing', which make the intent unambiguous.

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

Usage Guidelines5/5

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

The description begins with 'Use when...' and explicitly lists contexts: expressing disinterest, showing zero concern, indicating you don't care, dismissing unimportant things. This provides clear guidance on when to select this tool over siblings.

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

TDQS

B3.1/5.0
Disambiguation4/5

The tools have detailed descriptions specifying distinct scenarios (e.g., general insult vs. enthusiasm vs. sarcasm), making them mostly distinguishable. However, some pairs like 'foaas_think' and 'foaas_thinking' are very similar in purpose, causing slight ambiguity.

Naming Consistency5/5

All tools follow a consistent pattern: 'foaas_' prefix followed by a single lowercase word (e.g., foaas_asshole, foaas_awesome). No mixing of conventions or irregular naming.

Tool Count4/5

With 23 tools, the count is slightly high but reasonable for covering a variety of insult/expression types. Each tool corresponds to a distinct API endpoint, so the number matches the domain scope.

Completeness3/5

The set covers a wide range of common expressions (anger, praise, dismissal, confusion) but misses some well-known FOAAS endpoints like 'this', 'that', or 'everything'. Gaps exist but the core use cases are present.

Maintenance

ActivityActive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    A basic MCP server built with FastMCP framework that provides simple utility tools including message echoing and server information retrieval. Supports both stdio and HTTP transports with Docker deployment capabilities.
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    A basic MCP server template built with FastMCP framework that provides example tools for echoing messages and retrieving server information. Serves as a starting point for developing custom MCP servers with Docker support and CI/CD integration.
  • A
    license
    Not graded
    quality
    D
    maintenance
    A Dockerized MCP server that enables Discord integration, offering tools for role management, messaging, moderation, and server administration via natural language.
    1
    MIT

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/gusztavvargadr/foaas-mcp'

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