JSONPlaceholder MCP Server
Enables querying and managing the JSONPlaceholder API (posts, users, comments) through natural language via the Model Context Protocol.
README
Servidor MCP JSONPlaceholder
Un servidor Model Context Protocol (MCP) que expone funciones para consultar la API de JSONPlaceholder (https://jsonplaceholder.typicode.com).
🚀 Características
- Consulta de Posts: Obtener todos los posts, filtrar por usuario o obtener un post específico
- Gestión de Usuarios: Listar todos los usuarios o obtener información de un usuario específico
- Comentarios: Obtener comentarios de posts específicos o todos los comentarios
- Creación de Posts: Crear nuevos posts (simulado)
- API Asíncrona: Manejo eficiente de requests HTTP con httpx
- Manejo de Errores: Gestión robusta de errores HTTP y excepciones
📦 Instalación
- Instalar dependencias:
pip install -r requirements.txt
🔧 Configuración para Claude Desktop
Para conectar este servidor MCP con Claude Desktop:
-
Localizar el archivo de configuración de Claude Desktop:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
-
Añadir la configuración del servidor:
{ "mcpServers": { "jsonplaceholder": { "command": "python", "args": ["c:\\Users\\Dell3\\IdeaProjects\\MyFirstMCP\\server.py"], "env": {} } } }⚠️ Importante: Ajusta la ruta en
argssegún tu ubicación del proyecto. -
Reiniciar Claude Desktop para que cargue la nueva configuración.
🎮 Uso
Iniciar el Servidor
# Opción 1: Script automático
start_server.bat
# Opción 2: Manual
python server.py
Probar el Cliente
python client_test.py
🛠️ Funciones Disponibles
1. get_posts
Obtiene posts de JSONPlaceholder.
Parámetros:
user_id(opcional): ID del usuario para filtrar postspost_id(opcional): ID específico del post a obtener
Ejemplos:
# Obtener todos los posts
await mcp.call_tool("get_posts", {})
# Obtener posts del usuario 1
await mcp.call_tool("get_posts", {"user_id": 1})
# Obtener post específico
await mcp.call_tool("get_posts", {"post_id": 5})
2. get_users
Obtiene usuarios de JSONPlaceholder.
Parámetros:
user_id(opcional): ID específico del usuario a obtener
Ejemplos:
# Obtener todos los usuarios
await mcp.call_tool("get_users", {})
# Obtener usuario específico
await mcp.call_tool("get_users", {"user_id": 3})
3. get_comments
Obtiene comentarios de JSONPlaceholder.
Parámetros:
post_id(opcional): ID del post para obtener sus comentarios
Ejemplos:
# Obtener todos los comentarios
await mcp.call_tool("get_comments", {})
# Obtener comentarios de un post específico
await mcp.call_tool("get_comments", {"post_id": 1})
4. create_post
Crea un nuevo post (simulado).
Parámetros (obligatorios):
title: Título del postbody: Contenido del postuser_id: ID del usuario que crea el post
Ejemplo:
await mcp.call_tool("create_post", {
"title": "Mi Nuevo Post",
"body": "Contenido del post...",
"user_id": 1
})
🧪 Usando con Claude
Una vez configurado, puedes usar las funciones directamente en Claude:
"Obtén todos los posts del usuario 1"
"Muéstrame los comentarios del post 5"
"Crea un nuevo post con título 'Hola Mundo' y contenido 'Este es mi primer post'"
"¿Cuántos usuarios hay registrados?"
📁 Estructura del Proyecto
MyFirstMCP/
├── server.py # Servidor MCP principal
├── client_test.py # Cliente de prueba
├── requirements.txt # Dependencias Python
├── claude_desktop_config.json # Configuración para Claude Desktop
├── install.bat # Script de instalación
├── start_server.bat # Script para iniciar servidor
├── test_client.bat # Script para probar cliente
└── README.md # Esta documentación
🐛 Resolución de Problemas
Error: "Módulo mcp no encontrado"
pip install mcp
Error: "No se puede conectar al servidor"
- Verifica que Python esté en el PATH
- Confirma que la ruta en
claude_desktop_config.jsonsea correcta - Reinicia Claude Desktop después de cambiar la configuración
Error de permisos en Windows
Ejecuta el terminal como administrador o ajusta la ruta del proyecto.
🔗 Enlaces Útiles
📝 Licencia
Este proyecto es de código abierto.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.