MCP.so
Sign In

MCP Stateful Example

@stevemadere

About MCP Stateful Example

A simple stateful mcp server example. Clone and modify to make any stateful mcp server.

Basic information

Category

Other

Runtime

node

Transports

stdio

Publisher

stevemadere

Config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "mcp-stateful-example": {
      "command": "python",
      "args": [
        "test_initialize.py"
      ]
    }
  }
}

Tools

No tools detected

We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.

Overview

What is MCP Stateful Example?

A minimal, fully MCP‑compliant server and client setup for exploring and validating session‑based tool invocation workflows using the Model Context Protocol.

How to use MCP Stateful Example?

Clone the repository, install Node.js dependencies with npm install and Python dependencies for integration tests with pip install -r test/integration/requirements.txt. Create a .env.test file with PORT=3088, then start the development server with npm run dev.

Key features of MCP Stateful Example

  • Implements a minimal MCP server with session handling
  • Includes imagine and isLessThan test tools
  • Python‑based integration tests for validating server behavior
  • Built‑in /health endpoint for monitoring server status

Use cases of MCP Stateful Example

  • Learning how session state works in MCP tool invocations
  • Testing and validating MCP client‑server communication
  • Prototyping stateful tool workflows before building production servers

FAQ from MCP Stateful Example

What tools are available?

Two tools: imagine picks a random number between specified bounds and stores it in the session; isLessThan checks if a number is less than the previously imagined number in the current session.

What are the prerequisites?

Node.js 18+, Python 3.8+ for integration tests, and npm or yarn.

How do I run integration tests?

Use npm run itest from the project root, or run a specific test by navigating to test/integration and executing python test_initialize.py.

What environment variables are used?

PORT (default: 3000) for the server port, and NODE_ENV for the environment mode (e.g., 'development' or 'production').

Does the server have a health check?

Yes, a GET /health endpoint returns server status.

Comments

More Other MCP servers