iFun

Bilingual (VN/EN) jokes, quotes, fun facts and short videos from ifun.navatop.com.

Should I use this

Quality & Safety

A
Description quality
90%
Schema completeness
95%
Naming quality
90%
Poisoning risk
100%
Permission match
90%
Protocol compliance
100%

Findings (1)

  • LOWTool 'fetch' suggests web access but openWorldHint=falsein fetch

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~635Tokens (tool definitions)
~639 BTypical response size
Minimal attention impact (0.50% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "ifun": {
      "url": "https://ifun.genai.io.vn/mcp"
    }
  }
}

Remote endpoints

https://ifun.genai.io.vn/mcpstreamable-http
https://ifun.navatop.com/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search(query, lang)

Search iFun for jokes, quotes, fun facts and short videos by keyword. Returns up to 10 matches.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Keyword or phrase to search for."
    },
    "lang": {
      "type": "string",
      "enum": [
        "vi",
        "en"
      ],
      "description": "Language — vi (default) or en."
    }
  },
  "required": [
    "query"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "title",
          "url"
        ]
      }
    }
  },
  "required": [
    "results"
  ]
}
🟢random_joke(lang)

Get a random joke from iFun.

Input Schema

{
  "type": "object",
  "properties": {
    "lang": {
      "type": "string",
      "enum": [
        "vi",
        "en"
      ],
      "description": "Language — vi (default) or en."
    }
  }
}
🟢joke_of_the_day(lang)

Get iFun's most recent joke — today's joke.

Input Schema

{
  "type": "object",
  "properties": {
    "lang": {
      "type": "string",
      "enum": [
        "vi",
        "en"
      ],
      "description": "Language — vi (default) or en."
    }
  }
}
🟢random_video(lang)

Get a random short video from iFun (returns its page URL and the video file URL).

Input Schema

{
  "type": "object",
  "properties": {
    "lang": {
      "type": "string",
      "enum": [
        "vi",
        "en"
      ],
      "description": "Language — vi (default) or en."
    }
  }
}
🟢get_post(id)

Get a specific iFun post by its numeric id.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "integer",
      "description": "The post id."
    }
  },
  "required": [
    "id"
  ]
}
🟢fetch(id)

Retrieve the full text of one iFun post by the id returned from `search`. Use this to read a search result in full before citing it.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "description": "Post id, as returned in a `search` result."
    }
  },
  "required": [
    "id"
  ]
}

Output Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "text": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "metadata": {
      "type": "object",
      "additionalProperties": true
    }
  },
  "required": [
    "id",
    "title",
    "text",
    "url"
  ]
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools
verifiedversion not recorded6 tools