JSONPlaceholder
A free public REST API for testing and prototyping, powered by JSONPlaceholder.
JSONPlaceholder MCP Server
A modern Model Context Protocol (MCP) server built with FastMCP that provides access to the JSONPlaceholder API - a free fake REST API for testing and prototyping.
Features
This MCP server provides Resources, Tools, and Prompts for interacting with JSONPlaceholder:
🔧 Tools (Actions)
- get_posts - Retrieve all posts or a specific post by ID
- get_users - Retrieve all users or a specific user by ID
- get_comments - Retrieve comments, optionally filtered by post ID
- get_albums - Retrieve albums, optionally filtered by user ID
- get_photos - Retrieve photos, optionally filtered by album ID
- get_todos - Retrieve todos, optionally filtered by user ID
- create_post - Create a new post (simulated)
- search_posts - Search posts by title or body content
📄 Resources (Data Access)
- posts://all - Get all posts as a resource
- posts://{post_id} - Get a specific post as a resource
- users://all - Get all users as a resource
- users://{user_id} - Get a specific user as a resource
📝 Prompts (Templates)
- analyze_post - Generate analysis prompt for a specific post
- user_profile_summary - Create comprehensive user profile analysis
How to add it to cursor:
"mcpServers": {
"jsonplaceholder": {
"command": "/Users/danielpopa/Projects/work/mcp-server/cursor_runner.sh",
"args": []
}
}
}
Prerequisites
- Python 3.10+
- uv package manager
Installation
- Clone or download this project
- The project is already configured with uv. Simply run:
uv sync
Development & Testing
MCP Inspector (recommended for development):
uv run mcp dev server.py
This opens an interactive web interface to test all tools, resources, and prompts.
Direct server execution:
uv run python server.py
Test API connectivity:
uv run python test_server.py
Claude Desktop Integration
Install directly into Claude Desktop:
uv run mcp install server.py --name "JSONPlaceholder API"
Usage Examples
Once connected to an MCP client, you can:
Use Tools:
- "Get all posts from JSONPlaceholder"
- "Show me user details for user ID 1"
- "Search for posts containing 'dolor'"
- "Create a new post titled 'Test' with body 'Hello World' for user 1"
Access Resources:
- The client can load
posts://all
to get all posts as context - Load
users://5
to get user 5's details as background information
Use Prompts:
- Use the "analyze_post" prompt with post ID 1 for detailed post analysis
- Use "user_profile_summary" with user ID 2 for comprehensive user profiling
API Information
This server uses the JSONPlaceholder API (https://jsonplaceholder.typicode.com/), which provides:
- 100 posts
- 10 users
- 500 comments
- 100 albums
- 5000 photos
- 200 todos
No API key is required as it's completely free and public.
Architecture
Built with FastMCP, this server demonstrates modern MCP patterns:
- Decorator-based setup - Clean, Pythonic code
- Type hints - Better development experience
- Async/await - Efficient HTTP requests
- Resource management - Proper data exposure to LLMs
- Prompt templates - Reusable interaction patterns
- Development tools - Built-in testing and debugging
Development
The server uses:
- FastMCP - Modern MCP server framework
- httpx - Async HTTP client
- Python 3.10+ - Modern Python features
- uv - Fast Python package management
Related Servers
Wordware
Run your Wordware apps locally with an interactive setup.
Overleaf MCP Server
MCP Server for Overleaf (Latex)
Steadybit
Interact with the Steadybit platform to run chaos engineering experiments.
Futarchy MCP
Interact with the Futarchy protocol on the Solana blockchain.
MCP SSE Launcher
A Python management system for MCP servers that wraps stdio-based servers as SSE endpoints and includes a web inspector for testing.
Postman Agent Generator
An MCP server generated by Postman Agent Generator for automated API tools.
MemGPT MCP Server
A server that provides a memory system for LLMs, enabling persistent conversations with various providers like OpenAI, Anthropic, and OpenRouter.
EdgeOne Pages MCP
An MCP server implementation using EdgeOne Pages Functions for intelligent chat applications.
GroundDocs
A version-aware documentation assistant that connects LLMs to trusted, real-time docs to reduce hallucinations and provide accurate, version-specific responses.
ShaderToy-MCP
Query and interact with ShaderToy shaders using large language models.