# Uselessfacts MCP

> Uselessfacts provides instant access to thousands of verified trivia facts. This server lets your agent pull random fun facts, grab today's 'Fact of the Day,' or look up a specific fact using its unique ID. It handles both English and German (de) content, making it perfect for generating icebreakers, populating social media hooks, or simply adding some obscure knowledge to an AI conversation.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** trivia, facts, entertainment, useless-knowledge, daily-fact

## Description

You need instant trivia? You connect your agent to **Uselessfacts**, and it’s there. This server gives you access to a massive, verified database of useless facts—the good kind that actually make people go, “Oh, really?” It lets your AI client pull random bits of knowledge, grab the official Fact of the Day, or drill down on one specific fact using its unique ID. Don't worry about language switching either; it handles both English and German (de) content for you.

### Pulling Random Facts
When you need a quick icebreaker—like kicking off a presentation or warming up a chat—you use the `get_random_fact` tool. Your agent calls this, and it pulls an entirely random trivia fact from the database. You can tell your agent whether to fetch that random piece of info in English or German; you never have to worry about switching services just because you need content for different markets. This is perfect for populating social media hooks where a surprising little tidbit stops someone from scrolling past.

### Getting Today's Fact
If you want a consistent, reliable piece of content, use `get_today_fact`. It retrieves the official 'Fact of the Day,' which is flagged right in the system. This tool also lets you dictate the language, so you can easily serve up the daily nugget whether your audience speaks English or German. You'll never have to manually check a separate calendar feed; just ask your agent for today’s fact and specify the language.

### Pinpointing Specific Information
Need to reference something specific? You use `get_fact`. This tool requires one thing: the unique database ID of the fact you want. Your agent passes that single identifier, and it pulls one exact, verified piece of information directly from the archive. If you're writing a deep-dive article or compiling educational content, this lookup capability is crucial because it guarantees you get exactly what you asked for, nothing more, nothing less.

### How It All Works Together
Think about your conversational flow. You're talking to someone, and the conversation needs a lift. Your agent runs `get_random_fact` to throw out a genuinely weird tidbit—say, something obscure about deep-sea creatures. Later in the chat, you pivot, and instead of losing steam, your agent uses `get_today_fact` because it's time for the daily recap. If someone challenges you with a specific historical question, your agent doesn’t guess; it runs `get_fact`, feeding it the ID number to retrieve that singular, verified piece of data point.

The server handles three distinct use cases: pure randomness (`get_random_fact`), scheduled content (`get_today_fact`), and precise retrieval by key (`get_fact`). The whole system operates in two languages—you can pull facts for both English and German (de) without ever breaking your flow or needing multiple subscriptions. It keeps the output clean, structured, and ready to drop right into whatever format you're using.

When your agent successfully executes any of these tools, it gets a structured payload containing the fact. This isn't just raw text; it's data that your client can immediately parse. You can use this payload to build out multiple sections of content—like generating an entire week’s worth of social media teasers by calling `get_random_fact` seven times with different language parameters, or creating a quick-reference glossary using precise ID lookups.

It's designed for immediate consumption. You ask for the random fact in German; your agent gets it and passes it back to you structured perfectly. You ask for today’s designated fact in English; your agent retrieves it clean. You need the exact details on 'Fact #401'; your agent finds it instantly. It's a reliable source of weird, verifiable knowledge that keeps your conversation or content always fresh. No more relying on vague search results or poorly formatted text dumps. Just call the tool and get the fact you need, in English, German, random, daily, or specific.

## Tools

### get_fact
Retrieves a specific useless fact using its unique database ID.

### get_random_fact
Fetches an entirely random useless fact, letting you optionally specify English or German.

### get_today_fact
Gets the designated 'Fact of the Day,' also supporting optional language specification (en or de).

## Prompt Examples

**Prompt:** 
```
Tell me a random useless fact.
```

**Response:** 
```
Did you know that a snail can sleep for three years? (ID: 123)
```

**Prompt:** 
```
What is the useless fact of the day in German?
```

**Response:** 
```
The German fact of the day is: 'Die erste Kreditkarte wurde aus Versehen erfunden.' (ID: 456)
```

**Prompt:** 
```
Get the details for fact ID '555'.
```

**Response:** 
```
Retrieving fact 555... It says: 'Banging your head against a wall burns 150 calories an hour.'
```

## Capabilities

### Fetch any random fact
Your AI client pulls an entirely random trivia fact from the database, optionally specifying English or German.

### Get today's designated fact
Retrieves the official 'Fact of the Day,' which is marked in the system. You can specify English or German for the result.

### Look up a specific fact by ID
Allows your client to retrieve one exact, verified fact using its unique database identifier (ID).

### Handle multiple languages
The server supports content retrieval in both English and German (de), so you don't have to switch services.

## Use Cases

### Starting a team meeting remotely
The team is stuck in the opening minutes of a virtual call. Instead of awkward small talk, they prompt their agent: 'Give me a random useless fact.' The agent executes `get_random_fact`, and suddenly everyone has something weird to giggle about. Problem solved.

### Writing daily social media posts
A marketing manager needs 30 days of unique, engaging content. They set up a scheduled workflow that runs `get_today_fact` every morning. The agent pulls the fact, formats it for Instagram, and queues it—no manual copying required.

### Testing an MCP integration
A developer needs to confirm if their new agent can handle multilingual data retrieval. They use `get_random_fact` twice: once requesting 'en' and once requesting 'de.' The successful, structured output confirms the language support works perfectly.

### Creating a knowledge base filler
A technical writer is building documentation and needs placeholder content that feels authentic. Instead of using 'Lorem Ipsum,' they call `get_fact` with an ID to pull a real, verifiable piece of trivia into the draft.

## Benefits

- Need a quick icebreaker? Just call `get_random_fact` to pull an unexpected piece of trivia. Your agent handles the lookup and delivers the fact immediately, perfect for starting meetings or calls.
- Keep your content fresh every day using `get_today_fact`. This tool ensures your platform always has a rotating 'Fact of the Day' without manual database updates.
- Building an agent testbed? Use `get_fact` to prove out your tool-calling logic. You can reliably reference any fact by its ID, making it perfect for development testing.
- Handling international content is easy. Both `get_random_fact` and `get_today_fact` let you specify the language (en or de), so you don't have to manage two separate services.
- It adds personality to your bot interactions. Instead of just answering a question, your agent can now follow up with a fun, random fact, making it feel more human.

## How It Works

The bottom line is: You ask for a type of fact (random, daily, or specific ID), and the server gives you the data.

1. First, connect your AI client to the Uselessfacts MCP Server.
2. Next, tell your agent exactly what you need—for instance, 'Give me a random fact in German.'
3. Finally, your agent executes the relevant tool (`get_random_fact`) and returns the fact data.

## Frequently Asked Questions

**Can I get facts in languages other than English?**
Yes! The `get_random_fact` and `get_today_fact` tools both support an optional language parameter. You can choose between English ('en') and German ('de').

**Is the 'Fact of the Day' the same every time I call it?**
The `get_today_fact` tool returns the same designated fact for the duration of the current day. It updates once every 24 hours.

**How can I retrieve a specific fact I saw previously?**
Every fact has a unique ID. If you have that ID, you can use the `get_fact` tool to retrieve that exact piece of trivia at any time.

**How do I authenticate when calling get_random_fact?**
You don't need to. This server operates as a public service, so no API key or complex authentication is required for your AI client to connect and retrieve facts.

**What is the output structure when I call get_today_fact?**
The tool returns structured data containing both the fact text and its unique identifier (ID). This format makes it simple for your agent to store, reference, or process the information.

**Are there rate limits when I use the get_fact tool?**
For general usage, rates are high enough for most developers and content creators. If you plan massive batch requests, check Vinkius's specific usage policies.

**Which AI clients support calling get_random_fact?**
It works with any client that supports the Model Context Protocol (MCP). This includes Claude, Cursor, and other MCP-compatible agents you use for development or writing.

**What happens if I try to use get_fact with an invalid ID?**
The tool handles this gracefully. If the provided ID doesn't match any fact in the database, your agent will receive a clear error message telling you exactly what went wrong.