Command Palette

Search for a command to run...

UnylyUnyly
Весь каталог

JSON Placeholder Posts

БесплатноНе проверен

Fetches and filters posts from JSON Placeholder API by userId, with support for elicitation when userId is omitted.

GitHubEmbed

Описание

Fetches and filters posts from JSON Placeholder API by userId, with support for elicitation when userId is omitted.

README

A small UV-managed FastMCP server that calls:

https://json-placeholder.mock.beeceptor.com/posts

It exposes two MCP tools:

  • get_posts_by_user, which returns matching posts when userId is provided. If userId is missing, it creates a durable pending workflow instead of using native MCP elicitation.
  • continue_workflow, which accepts the missing input and completes a pending workflow from any pod.

The tools emit MCP server notifications with log messages and progress updates while they resolve input, fetch posts, and filter results.

Setup

uv sync

Run

For MCP clients that use stdio:

uv run json-placeholder-posts-mcp

For local HTTP testing:

uv run json-placeholder-posts-mcp --transport streamable-http

By default the HTTP server listens at:

http://127.0.0.1:8000/mcp

You can override the host and port with environment variables:

HOST=127.0.0.1 PORT=9000 uv run json-placeholder-posts-mcp --transport streamable-http

Workflow continuation uses Mongo. By default, the server connects to mongodb://localhost:27017:

uv run json-placeholder-posts-mcp --transport streamable-http

For deployed environments, override the Mongo connection details:

MONGO_URI=mongodb://mongo:27017 \
MONGO_DATABASE=json_placeholder_posts_mcp \
MONGO_WORKFLOW_COLLECTION=elicitation_workflows \
uv run json-placeholder-posts-mcp --transport streamable-http

Technical Design

See docs/mcp-workflow-design.md for the MCP creation flow, workflow continuation pattern, elicitation decision, and multi-pod workflow ID storage design.

Tool

get_posts_by_user

Fetches all posts from the Beeceptor API and returns only posts matching the provided userId. When userId is omitted, the server creates a pending workflow that any pod can continue with the returned workflowId.

Input:

{
  "userId": 1
}

Output:

{
  "status": "completed",
  "userId": 1,
  "count": 2,
  "posts": [],
  "source": "https://json-placeholder.mock.beeceptor.com/posts"
}

Pending workflow input:

{}

Pending workflow output:

{
  "status": "input_required",
  "workflowId": "abc123",
  "message": "Please choose a user:\n1. User 1\n2. User 2\n3. User 3\n4. User 4\n5. User 5\n6. User 6\n7. User 7\n8. User 8\n9. User 9\n10. User 10\n\nReply with the number or userId.",
  "requiredInput": {
    "field": "userId",
    "type": "select",
    "dataType": "integer",
    "display": "dropdown",
    "options": [
      {
        "label": "User 1",
        "value": 1
      },
      {
        "label": "User 2",
        "value": 2
      },
      {
        "label": "User 3",
        "value": 3
      }
    ]
  },
  "nextTool": "continue_workflow",
  "expiresAt": "2026-06-18T10:15:00+00:00"
}

Clients that own their UI can render requiredInput.options as a dropdown. Chat clients without custom UI support can show the same message as numbered choices and pass the selected userId to continue_workflow.

continue_workflow

Completes a pending workflow and clears its stored details after success or failure.

Input:

{
  "workflowId": "abc123",
  "userId": 1
}

Development

uv run pytest
uv run ruff check .

from github.com/GowthamS05/mcp_elicitation

Установка JSON Placeholder Posts

У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.

▸ github.com/GowthamS05/mcp_elicitation

FAQ

JSON Placeholder Posts MCP бесплатный?

Да, JSON Placeholder Posts MCP бесплатный — установка в пару кликов через Unyly без оплаты.

Нужен ли API-ключ для JSON Placeholder Posts?

Нет, JSON Placeholder Posts работает без API-ключей и переменных окружения.

JSON Placeholder Posts — hosted или self-hosted?

Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.

Как установить JSON Placeholder Posts в Claude Desktop, Claude Code или Cursor?

Открой JSON Placeholder Posts на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.

Похожие MCP

Compare JSON Placeholder Posts with

Не уверен что выбрать?

Найди свой стек за 60 секунд

Автор?

Embed-бейдж для README

Похожее

Все в категории development