Ruben Marcus — Agent-Ready Portfolio

Public portfolio MCP for resume, services, availability, project evidence, and introductions.

Should I use this

Quality & Safety

B
Description quality
85%
Schema completeness
48%
Naming quality
95%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (2)

  • LOWTool 'get_services' description lacks action verbin get_services
  • LOWTool 'check_availability' description lacks action verbin check_availability

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~395Tokens (tool definitions)
~533 BTypical response size
Minimal attention impact (0.31% 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": {
    "portfolio": {
      "url": "https://www.rubenmarcus.dev/api/mcp"
    }
  }
}

Remote endpoints

https://www.rubenmarcus.dev/api/mcpstreamable-http

What it can do

Tool inventory

Tools (4)

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

Ruben Marcus' full resume: summary, work experience, skills, proof points, open source projects, education, links, and a PDF CV URL.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢get_services

Fixed-scope services Ruben sells, with one-line pitches.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
🟢check_availability

Current availability for full-time roles and freelance contracts.

Input Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}
⚪book_intro(name, contact, brief, budget, agent)

Book a project intro with Ruben. Relays the brief to his email. Only call after the person you act for has explicitly confirmed — this delivers a real message.

Input Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Contact person's name",
      "maxLength": 120
    },
    "contact": {
      "type": "string",
      "description": "Email or Telegram handle",
      "maxLength": 160
    },
    "brief": {
      "type": "string",
      "description": "What they want to build",
      "maxLength": 4000
    },
    "budget": {
      "type": "string",
      "description": "Optional budget range",
      "maxLength": 120
    },
    "agent": {
      "type": "string",
      "description": "Calling agent (claude, chatgpt, kimi...)",
      "maxLength": 80
    }
  },
  "required": [
    "name",
    "contact",
    "brief"
  ],
  "additionalProperties": false
}

Recommended Prompts

fetch_info
Fetch [information type] using Ruben Marcus — Agent-Ready Portfolio
Expected tools: get_resume
retrieve_data
Get details about [item] from Ruben Marcus — Agent-Ready Portfolio
Expected tools: get_resume

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded4 tools
verifiedversion not recorded4 tools