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

~407Tokens (tool definitions)
~533 BTypical response size
Minimal attention impact (0.32% 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 fit, deliverables, a related case, and a service-specific contact link.

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
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools
verifiedversion not recorded4 tools