---
title: "MCP Ecosystem — Model Context Protocol"
description: "Documentation: MCP Ecosystem — Model Context Protocol"
type: reference
tags: [mcp, protocol, extensions, apps, claude-desktop, ecosystem]
timestamp: 2026-06-30
---

# MCP Ecosystem — Model Context Protocol

Open standard for connecting Claude Desktop (and other clients) to tools, data and workflows. Currently the main extension/plugin system of the Anthropic ecosystem.

**Docs**: https://modelcontextprotocol.io
**Spec**: https://modelcontextprotocol.io/specification/latest
**Apps**: https://modelcontextprotocol.io/extensions/apps/overview
**SDKs**: https://modelcontextprotocol.io/docs/sdk

## Architecture

```
MCP Host (Claude Desktop)
  ├── MCP Client 1 ←→ MCP Server A (local, stdio)
  ├── MCP Client 2 ←→ MCP Server B (remote, HTTP)
  └── MCP Client N ←→ MCP Server N
```

- **Host**: AI application that coordinates MCP clients
- **Client**: Component that maintains connection with an MCP server
- **Server**: Program that provides context (tools, resources, prompts)

## Primitives (Server → Client)

| Primitive | Type | Use |
|-----------|------|-----|
| **Tools** | Executable | File ops, API calls, DB queries |
| **Resources** | Data | File contents, DB records, API responses |
| **Prompts** | Templates | System prompts, few-shot examples |

## Primitives (Client → Server)

| Primitive | Type | Use |
|-----------|------|-----|
| **Sampling** | Completion | Server requests completion from host LLM |
| **Elicitation** | Input | Server requests user input |
| **Logging** | Debug | Log messages for debugging |

## MCP Apps (mais recente)

Extension that allows servers to return interactive HTML interfaces that render inside the chat.

### How it works
1. Tool description includes `_meta.ui.resourceUri` pointing to `ui://` resource
2. Host preloads the resource before the tool is called
3. Host fetches the HTML and renders in a sandboxed iframe
4. App and host communicate via JSON-RPC (MCP dialect)
5. App can call any MCP tool via postMessage

### Use cases
- Complex data exploration (dashboards, maps)
- Multi-option configuration (forms)
- Rich media (PDFs, 3D models)
- Real-time monitoring
- Multi-step workflows

### Client support
Claude Desktop, Claude.ai, VS Code Copilot, Microsoft 365 Copilot, Goose, Postman, MCPJam

### Transport
- **stdio**: Local communication, no network overhead
- **Streamable HTTP**: POST + SSE, for remote servers, OAuth for auth

### Security
- Sandboxed iframe — does not access host DOM, cookies, localStorage
- Communication via postMessage
- Host controls which capabilities the app can access

## Custom MCP Server Construction

The existing LiteLLM gateway can serve as a foundation for:
1. **Notes MCP Server**: Resources for notes, Tools for creating/searching/connecting
2. **Whiteboard MCP App**: Interactive HTML interface with connection canvas
3. **Extract Selection Tool**: Converts selected text into a note via postMessage
4. **Inline Comment Tool**: Extracts comments from the harness and generates context

## Connections

- [[claude-desktop-bundles]] — Harness architecture where MCP servers run
- [[claude-desktop-feature-flags]] — Feature flags that control MCP capabilities
- [[fitalabs-gateway-modelos]] — Existing gateway that can be extended as an MCP server
