Skip to main content
Glama

MCP JSON-RPC Server

MCP JSON-RPC クライアントとサーバーの例

このリポジトリには、MCPに着想を得たJavaScriptで実装された、シンプルで初心者にも分かりやすいJSON-RPCクライアントとサーバーのサンプルが含まれています。このプロジェクトでは、外部依存関係を一切使用せずに、Node.jsの組み込みモジュールを用いた基本的な通信フローを実証しています。

概要

  • サーバー ( server.js ):
    • TCP ポート 4000 をリッスンします。
    • 2 つの JSON-RPC メソッドを実装します。
      • initialize : 基本機能オブジェクト (「エコー」ツールをアドバタイズ) を返します。
      • echo : クライアントから提供されたパラメータをエコーバックします。
  • クライアント ( client.js ):
    • ポート 4000 でサーバーに接続します。
    • initialize要求を送信し、その後にecho要求を送信します。
    • サーバーから受信した応答をログに記録します。

前提条件

  • システムにNode.jsがインストールされていること (v10 以降を推奨)。

はじめる

Smithery経由でインストール

Smithery経由で Claude Desktop 用の MCP JSON-RPC クライアントおよびサーバーの例を自動的にインストールするには:

npx -y @smithery/cli install @melvincarvalho/mcpjs --client claude

手動インストール

  1. リポジトリをクローンします。
    git clone https://github.com/sandy-mount/mcpjs.git cd mcp-jsonrpc-example
  2. サーバーを実行します。ターミナル ウィンドウを開いて、次を実行します。
    node server.js
    次のようなメッセージが表示されます。
    Server listening on port 4000
  3. クライアントを実行します。別のターミナル ウィンドウを開いて、次を実行します。
    node client.js
    クライアントはサーバーに接続し、初期化要求とエコー要求を送信し、応答を表示します。

仕組み

  • サーバーはポート 4000 で着信 TCP 接続をリッスンします。JSON-RPC メッセージ (それぞれ改行で終了) を受信すると、リクエストを処理します。
    • initializeメソッドでは、基本機能とサーバー情報を含む JSON-RPC 応答を返します。
    • echoメソッドの場合、リクエストで送信されたパラメータを返します。
    • 不明なメソッドが要求された場合は、JSON-RPC エラーで応答します。
  • クライアントはサーバーに接続し、JSON-RPCのinitializeリクエストを送信し、しばらく待機してからechoリクエストを送信します。サーバーからの応答はコンソールに表示されます。

ファイル

  • server.js — JSON-RPC サーバーの実装。
  • client.js — JSON-RPC クライアント実装。

カスタマイズ

この例は次のように拡張できます。

  • サーバーに JSON-RPC メソッドを追加します。
  • 追加のエラー処理とログ記録を実装します。
  • さまざまなトランスポート プロトコルを試したり、TLS サポートを追加したりします。

ライセンス

このプロジェクトはMITライセンスの下で提供されています。詳細はLICENSEファイルをご覧ください。

貢献

お気軽に問題を開いたり、改善点や提案を記載したプル リクエストを送信してください。


楽しいコーディングを!

-
security - not tested
A
license - permissive license
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Node.js で構築された、初心者に優しい MCP 風の JSON-RPC サーバー。「initialize」機能ハンドシェイクと「echo」関数を通じて基本的なクライアント サーバー インタラクションを提供します。

  1. 概要
    1. 前提条件
      1. はじめる
        1. Smithery経由でインストール
        2. 手動インストール
      2. 仕組み
        1. ファイル
          1. カスタマイズ
            1. ライセンス
              1. 貢献

                Related MCP Servers

                • A
                  security
                  A
                  license
                  A
                  quality
                  A Model Context Protocol (MCP) server that provides JSON-RPC functionality through OpenRPC.
                  Last updated -
                  2
                  7
                  33
                  JavaScript
                  Apache 2.0
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  A Node.js-based MCP server implementing JSON-RPC 2.0, allowing users to generate random US State and signature soup combinations through a fun and simple tool.
                  Last updated -
                  1
                  1
                  JavaScript
                  • Apple
                  • Linux
                • -
                  security
                  A
                  license
                  -
                  quality
                  An MCP server that enables fetching web content using the Node.js undici library, supporting various HTTP methods, content formats, and request configurations.
                  Last updated -
                  66
                  8
                  TypeScript
                  MIT License
                  • Apple
                  • Linux
                • -
                  security
                  A
                  license
                  -
                  quality
                  A Node.js package that provides Model Context Protocol server infrastructure for AWS Lambda functions with SSE support, enabling developers to implement MCP tools and prompts as serverless functions.
                  Last updated -
                  112
                  9
                  TypeScript
                  MIT License

                View all related MCP servers

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/melvincarvalho/mcpjs'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server