Markus Tenghamn

Blog posts, work experience, projects and contact details for Markus Tenghamn, as MCP tools.

Should I use this

Quality & Safety

B
Description quality
96%
Schema completeness
44%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~576Tokens (tool definitions)
~1.1 KBTypical response size
Minimal attention impact (0.45% 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": {
    "site": {
      "url": "https://markustenghamn.com/mcp"
    }
  }
}

Remote endpoints

https://markustenghamn.com/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

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

Get contact details for Markus Tenghamn.

Input Schema

{
  "type": "object"
}

Output Schema

{
  "type": "object",
  "properties": {
    "email": {
      "type": "string"
    },
    "github": {
      "type": "string"
    },
    "linkedin": {
      "type": "string"
    },
    "website": {
      "type": "string"
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "email",
    "github",
    "linkedin",
    "website",
    "note"
  ],
  "additionalProperties": false
}
🟢get_experience

Get Markus Tenghamn's full work history: structured jobs plus the canonical markdown resume.

Input Schema

{
  "type": "object"
}

Output Schema

{
  "type": "object",
  "properties": {
    "jobs": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "company": {
            "type": "string"
          },
          "role": {
            "type": "string"
          },
          "dates": {
            "type": "string"
          },
          "location": {
            "type": "string"
          },
          "description": {
            "type": "string"
          }
        },
        "required": [
          "company",
          "role",
          "dates",
          "location",
          "description"
        ],
        "additionalProperties": false
      }
    },
    "markdown": {
      "type": "string",
      "description": "the canonical markdown resume"
    }
  },
  "required": [
    "jobs",
    "markdown"
  ],
  "additionalProperties": false
}
🟡get_post(slug)

Get the full markdown of a blog post by slug.

Input Schema

{
  "type": "object",
  "properties": {
    "slug": {
      "type": "string",
      "description": "slug of the post, as returned by list_posts"
    }
  },
  "required": [
    "slug"
  ],
  "additionalProperties": false
}

Output Schema

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string"
    },
    "date": {
      "type": "string"
    },
    "url": {
      "type": "string"
    },
    "markdown": {
      "type": "string"
    }
  },
  "required": [
    "title",
    "date",
    "url",
    "markdown"
  ],
  "additionalProperties": false
}
🟢get_projects

Get a curated list of Markus Tenghamn's projects.

Input Schema

{
  "type": "object"
}

Output Schema

{
  "type": "object",
  "properties": {
    "projects": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "name",
          "description",
          "url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "projects"
  ],
  "additionalProperties": false
}
🟢list_posts

List all published blog posts on markustenghamn.com, newest first.

Input Schema

{
  "type": "object"
}

Output Schema

{
  "type": "object",
  "properties": {
    "posts": {
      "type": [
        "null",
        "array"
      ],
      "items": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "date": {
            "type": "string",
            "description": "publication date, YYYY-MM-DD"
          },
          "read_minutes": {
            "type": "integer"
          },
          "excerpt": {
            "type": "string"
          },
          "url": {
            "type": "string"
          }
        },
        "required": [
          "slug",
          "title",
          "date",
          "read_minutes",
          "excerpt",
          "url"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "posts"
  ],
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools
verifiedversion not recorded5 tools