MCP cover image
See in Github
2025-03-10

Un serveur MCP qui est également un client MCP. Utile pour laisser Claude développer et tester les MCP sans avoir à réinitialiser l'application.

2

Github Watches

7

Github Forks

115

Github Stars

MCP Test Client

An MCP middleware that acts as both a server (to Claude) and a client (to servers under test) for testing MCP servers during development.

Architecture

The MCP Test Client has a dual role:

  • It's a server registered with Claude that exposes tools for testing
  • It's a client that connects to and tests other MCP servers
┌─────────────┐          ┌───────────────────┐          ┌────────────────┐
│             │  Tools   │                   │  Client  │                │
│   Claude    │─────────>│  MCP Test Client  │─────────>│  Server Under  │
│             │          │                   │          │     Test       │
└─────────────┘          └───────────────────┘          └────────────────┘

This architecture lets you test MCP servers without registering them directly with Claude.

Features

  • Deploy MCP servers to test environments
  • Call individual tools with custom arguments
  • Run automated test suites
  • View server logs
  • Test servers before formal registration with Claude

Implementation

The MCP Test Client is implemented with:

  • Process Management: Spawns and manages MCP server processes
  • MCP SDK Client: Uses the official MCP SDK to communicate with servers
  • Custom Transport: Implements a custom transport for stdio communication
  • Test Execution: Runs tests and validates responses
  • CLI Interface: Provides an interactive testing interface

The current implementation is Phase 1 of the design plan, with future enhancements planned for Phases 2 and 3.

Installation

# Install dependencies
npm install

# Build the TypeScript project
npm run build

Usage

As an MCP Server

The MCP Test Client is registered with Claude via the claude-mcp-local script. You can use the following tools:

  1. Deploy a server:
mcp__mcp-test__mcp_test_deploy_server({
  name: "my-server",
  source_path: "/path/to/server",
  env_vars: {
    "API_KEY": "${API_KEY}"
  }
})
  1. Call a tool on a deployed server:
mcp__mcp-test__mcp_test_call_tool({
  server_name: "my-server",
  tool_name: "tool_name",
  arguments: {
    // Tool-specific arguments
  }
})
  1. Run tests against a server:
mcp__mcp-test__mcp_test_run_tests({
  server_name: "my-server"
})
  1. View server logs:
mcp__mcp-test__mcp_test_get_logs({
  server_name: "my-server",
  lines: 100
})
  1. List deployed servers:
mcp__mcp-test__mcp_test_list_servers({})
  1. Stop a server:
mcp__mcp-test__mcp_test_stop_server({
  server_name: "my-server"
})

As a CLI Tool

Run the CLI interface for testing:

# Use npm script
npm run test

# Or run directly
node dist/test-runner.js

This provides an interactive menu for deploying, testing, and managing MCP servers.

Development Workflow

The MCP Test Client supports this workflow:

  1. Develop an MCP server in the playground directory
  2. Deploy it to the test environment with MCP Test Client
  3. Test functionality, call individual tools, and debug issues
  4. Fix and iterate until the server works correctly
  5. Migrate the server to mcp-servers/ when ready
  6. Register with Claude through claude-mcp-local

Future Enhancements

Planned enhancements include:

  • Phase 2: Docker-based container management, comprehensive test suites
  • Phase 3: Migration tools, more advanced test validation

See notes/mcp_test_client_design.md for the complete design document.

相关推荐

  • https://suefel.com
  • Latest advice and best practices for custom GPT development.

  • Yusuf Emre Yeşilyurt
  • I find academic articles and books for research and literature reviews.

  • https://maiplestudio.com
  • Find Exhibitors, Speakers and more

  • Carlos Ferrin
  • Encuentra películas y series en plataformas de streaming.

  • Joshua Armstrong
  • Confidential guide on numerology and astrology, based of GG33 Public information

  • Contraband Interactive
  • Emulating Dr. Jordan B. Peterson's style in providing life advice and insights.

  • rustassistant.com
  • Your go-to expert in the Rust ecosystem, specializing in precise code interpretation, up-to-date crate version checking, and in-depth source code analysis. I offer accurate, context-aware insights for all your Rust programming questions.

  • Elijah Ng Shi Yi
  • Advanced software engineer GPT that excels through nailing the basics.

  • Emmet Halm
  • Converts Figma frames into front-end code for various mobile frameworks.

  • lumpenspace
  • Take an adjectivised noun, and create images making it progressively more adjective!

  • apappascs
  • Découvrez la collection la plus complète et la plus à jour de serveurs MCP sur le marché. Ce référentiel sert de centre centralisé, offrant un vaste catalogue de serveurs MCP open-source et propriétaires, avec des fonctionnalités, des liens de documentation et des contributeurs.

  • Mintplex-Labs
  • L'application tout-en-un desktop et Docker AI avec chiffon intégré, agents AI, constructeur d'agent sans code, compatibilité MCP, etc.

  • ShrimpingIt
  • Manipulation basée sur Micropython I2C de l'exposition GPIO de la série MCP, dérivée d'Adafruit_MCP230XX

  • n8n-io
  • Plateforme d'automatisation de workflow à code équitable avec des capacités d'IA natives. Combinez le bâtiment visuel avec du code personnalisé, de l'auto-hôte ou du cloud, 400+ intégrations.

  • WangRongsheng
  • 🧑‍🚀 全世界最好的 LLM 资料总结 (数据处理、模型训练、模型部署、 O1 模型、 MCP 、小语言模型、视觉语言模型) | Résumé des meilleures ressources LLM du monde.

  • metorial
  • Versions conteneurisées de centaines de serveurs MCP 📡 🧠 🧠

  • langgenius
  • ravitemer
  • Un puissant plugin Neovim pour gérer les serveurs MCP (Protocole de contexte modèle)

  • patruff
  • Pont entre les serveurs Olllama et MCP, permettant aux LLM locaux d'utiliser des outils de protocole de contexte de modèle

    Reviews

    1 (1)
    Avatar
    user_2U0KZqnG
    2025-04-17

    I have been using mcp-client-server by willccbb, and I'm thoroughly impressed. This client-server application is robust, user-friendly, and well-documented. The seamless interaction between client and server components enhances productivity, and the support provided by the community is outstanding. I highly recommend checking it out at https://github.com/willccbb/mcp-client-server. Great work, willccbb!