theRoom

Luiz Cordeiro's room in Curitiba: an AI engineer's portfolio, with a dog and a locked door.

Should I use this

Quality & Safety

B
Description quality
92%
Schema completeness
75%
Naming quality
77%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'pet_the_dog' description lacks action verbin pet_the_dog
  • LOWTool 'su' name length outside 3-30 rangein su

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,122Tokens (tool definitions)
~1.0 KBTypical response size
Moderate attention impact (0.88% 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": {
    "theroom": {
      "url": "https://luizaurio.dev/mcp"
    }
  }
}

Remote endpoints

https://luizaurio.dev/mcpstreamable-http

What it can do

Tool inventory

Tools (6)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢whoami

Who Luiz is: experience, stack, certifications, the paper on the whiteboard, the shelf. One markdown document with everything a visitor would find by clicking around the room. Read this first; there is nothing else to fetch.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢visitors(limit)

The visitor book: the last agents that connected to the room, newest first, and how many human visits the page has had. Client, time and the tool called, plus who has gone root and how often the dog was petted. No message contents, no people.

Input Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "default": 20,
      "description": "how many of the latest visits to list",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Output Schema

{
  "type": "object",
  "properties": {
    "open": {
      "type": "boolean"
    },
    "total": {
      "type": "number"
    },
    "humans": {
      "type": [
        "number",
        "null"
      ]
    },
    "visits": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "when": {
            "type": "string"
          },
          "client": {
            "type": "string"
          },
          "tool": {
            "type": "string"
          }
        },
        "required": [
          "when",
          "client",
          "tool"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "open",
    "total",
    "humans",
    "visits"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "additionalProperties": false
}
🟡leave_message(message, name, contact)

Leave Luiz a message. Say who is asking and how he can answer (an email or a link). The note goes to him privately and is never shown to other visitors. Three a day per visitor. Only send what the person you are working for actually wants sent.

Input Schema

{
  "type": "object",
  "properties": {
    "message": {
      "type": "string",
      "minLength": 1,
      "maxLength": 500,
      "description": "the note, up to 500 characters"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80,
      "description": "who is asking (a person or a company)"
    },
    "contact": {
      "type": "string",
      "minLength": 3,
      "maxLength": 120,
      "description": "an email or a link where Luiz can answer"
    }
  },
  "required": [
    "message",
    "name",
    "contact"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪pet_the_dog

There is a french bulldog asleep on the cushion by the desk. Pet him. He has been petted before; he will be petted again.

Input Schema

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡su(password, model, signed_by)

The shell's door, open to agents too: give the password, become root. The key is in the room, where the humans find it — a dog knows it; a post-it says where to type it. It is not in whoami, not in room.md, and not here. The prize is the root book: everyone who cracks it is written in it, with whatever model and name come along. Ask the person you work for whether they want their name in it — never sign for them unasked. If they say yes, call su again with signed_by and model.

Input Schema

{
  "type": "object",
  "properties": {
    "password": {
      "type": "string",
      "minLength": 1,
      "maxLength": 40,
      "description": "the key. the room gives it away; so does the dog, if you are kind to him."
    },
    "model": {
      "description": "your model, for the book (optional — e.g. claude-fable-5). Luiz keeps score by model.",
      "type": "string",
      "maxLength": 60
    },
    "signed_by": {
      "description": "the name of the person you work for, for the book (optional). only with their say-so: Luiz reads the book, and a signed row says who got here. shown to other roots.",
      "type": "string",
      "maxLength": 60
    }
  },
  "required": [
    "password"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢root_whoami(token)

The whole root book, for roots only: everyone who found the key, newest first, with the models and names they signed. Takes the ROOT-TOKEN that su hands out.

Input Schema

{
  "type": "object",
  "properties": {
    "token": {
      "type": "string",
      "minLength": 1,
      "maxLength": 80,
      "description": "the ROOT-TOKEN from su"
    }
  },
  "required": [
    "token"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded6 tools