Skip to main content
Glama

1MCP - すべての人のための1つのMCPサーバー

複数の MCP サーバーを 1 つに集約する統合モデル コンテキスト プロトコル サーバー実装。

NPMバージョン NPMライセンス 鍛冶屋のバッジ

概要

1MCP(One MCP)は、AIアシスタントの活用を簡素化するように設計されています。異なるクライアント(Claude Desktop、Cherry Studio、Cursor、Roo Code、Claudeなど)ごとに複数のMCPサーバーを構成する代わりに、1MCPは単一の統合サーバーを提供します。これにより、以下のことが可能になります。

  • 複数のMCPサーバーを1つの統合インターフェースに集約します

  • 冗長なサーバーインスタンスを排除することでシステムリソースの使用量を削減します

  • さまざまなAIアシスタント間の構成管理を簡素化

  • AIモデルが外部ツールやリソースと対話するための標準化された方法を提供します

  • サーバーの再起動なしで動的な構成の再読み込みをサポート

  • 正常なシャットダウンとリソースのクリーンアップを処理します

Related MCP server: MCP Starter

クイックスタート

Cursor が Claude Desktop で既に構成されている既存の MCP サーバーを使用できるようにするには、次の手順に従います。

  1. Claude Desktop 構成ファイルを使用して 1MCP サーバーを実行します。

npx -y @1mcp/agent --config ~/Library/Application\ Support/Claude/claude_desktop_config.json
  1. 1MCP サーバーをカーソル設定ファイル ( ~/.cursor/mcp.json ) に追加します。

{
    "mcpServers": {
        "1mcp": {
            "type": "http",
            "url": "http://localhost:3050/sse"
        }
    }
}
  1. 楽しめ!

使用法

npxを使用してサーバーを直接実行できます。

# Basic usage (starts server with SSE transport)
npx -y @1mcp/agent

# Use existing Claude Desktop config
npx -y @1mcp/agent --config ~/Library/Application\ Support/Claude/claude_desktop_config.json

# Use stdio transport instead of SSE
npx -y @1mcp/agent --transport stdio

# Show all available options
npx -y @1mcp/agent --help

利用可能なオプション:

  • --transport, -t : トランスポートタイプを選択します ("stdio" または "http"、デフォルト: "http")

  • --config, -c : 特定の設定ファイルを使用する

  • --port, -P : HTTP ポートを変更する (デフォルト: 3050)

  • --host, -H : HTTPホストを変更する(デフォルト: localhost)

  • --tags, -g : タグでサーバーをフィルタリングします(以下のタグのセクションを参照)

  • --help, -h : ヘルプを表示

環境変数を使用した例:

# Using environment variables
ONE_MCP_PORT=3051 ONE_MCP_TAGS=network,filesystem npx -y @1mcp/agent

# Or in your shell configuration
export ONE_MCP_PORT=3051
export ONE_MCP_TAGS=network,filesystem
npx -y @1mcp/agent

ドッカー

Docker を使用して 1MCP を実行することもできます。

# Pull the latest image
docker pull ghcr.io/1mcp-app/agent:latest

# Run with HTTP transport (default)
docker run -p 3050:3050 ghcr.io/1mcp-app/agent

# Run with a custom config file
docker run -p 3050:3050 -v /path/to/config.json:/config.json ghcr.io/1mcp-app/agent --config /config.json

# Run with stdio transport
docker run -i ghcr.io/1mcp-app/agent --transport stdio

利用可能な画像タグ:

  • latest : 最新の安定リリース

  • vX.YZ : 特定のバージョン(例: v1.0.0

  • sha-<commit> : 特定のコミット

環境変数

ONE_MCP_というプレフィックスが付いた環境変数を使用して 1MCP を設定できます。

  • ONE_MCP_TRANSPORT : トランスポートタイプ ("stdio" または "http"、デフォルト: "http")

  • ONE_MCP_PORT : HTTP ポート (デフォルト: 3050)

  • ONE_MCP_HOST : HTTPホスト(デフォルト: "localhost")

  • ONE_MCP_CONFIG : 設定ファイルへのパス

  • ONE_MCP_TAGS : サーバーをフィルタリングするためのタグのカンマ区切りリスト

環境変数を使用した例:

docker run -p 3051:3051 \
  -e ONE_MCP_PORT=3051 \
  -e ONE_MCP_TAGS=network,filesystem \
  ghcr.io/1mcp-app/agent

タグを理解する

タグは、どのMCPサーバーをどのクライアントで利用できるかを制御するのに役立ちます。タグは、各サーバーの機能を説明するラベルのようなものです。

タグの使い方

  1. サーバー設定で、各サーバーの機能を説明するタグを追加します。

{
  "mcpServers": {
    "web-server": {
      "command": "uvx",
      "args": ["mcp-server-fetch"],
      "tags": ["network", "web"],
      "disabled": false
    },
    "file-server": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "~/Downloads"],
      "tags": ["filesystem"],
      "disabled": false
    }
  }
}
  1. 1MCPをstdioモードで起動する場合: タグでサーバーをフィルタリングできます

# Only start servers with the "network" tag
npx -y @1mcp/agent --transport stdio --tags "network"

# Start servers with either "network" or "filesystem" tags
npx -y @1mcp/agent --transport stdio --tags "network,filesystem"
  1. SSEトランスポートを使用する場合:クライアントは特定のタグを持つサーバーをリクエストできます

{
    "mcpServers": {
        "1mcp": {
            "type": "http",
            "url": "http://localhost:3050/sse?tags=network"  // Only connect to network-capable servers
        }
    }
}

タグの例:

  • network : Webリクエストを行うサーバー用

  • filesystem : ファイル操作を扱うサーバー用

  • memory : メモリ/ストレージを提供するサーバーの場合

  • shell : シェルコマンドを実行するサーバー用

  • db : データベース操作を処理するサーバー用

構成

グローバル構成

サーバーは、グローバルな場所で構成を自動的に管理します。

  • macOS/Linux: ~/.config/1mcp/mcp.json

  • Windows: %APPDATA%/1mcp/mcp.json

設定ファイルの形式

{
  "mcpServers": {
    "mcp-server-fetch": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ],
      "disabled": false
    },
    "server-memory": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-memory"
      ],
      "disabled": false
    }
  }
}

仕組み

システムアーキテクチャ

graph TB
    subgraph "AI Assistants"
        A1[Claude Desktop]
        A2[Cursor]
        A3[Cherry Studio]
        A4[Roo Code]
    end

    subgraph "1MCP Server"
        MCP[1MCP Agent]
    end

    subgraph "MCP Servers"
        S1[Server 1]
        S2[Server 2]
        S3[Server 3]
    end

    A1 -->|http| MCP
    A2 -->|http| MCP
    A3 -->|http| MCP
    A4 -->|http| MCP

    MCP --> |http| S1
    MCP --> |stdio| S2
    MCP --> |stdio| S3

リクエストフロー

sequenceDiagram
    participant Client as AI Assistant
    participant 1MCP as 1MCP Server
    participant MCP as MCP Servers

    Client->>1MCP: Send MCP Request
    activate 1MCP

    1MCP->>1MCP: Validate Request
    1MCP->>1MCP: Load Config
    1MCP->>MCP: Forward Request
    activate MCP

    MCP-->>1MCP: Response
    deactivate MCP

    1MCP-->>Client: Forward Response
    deactivate 1MCP

発達

依存関係をインストールします:

pnpm install

サーバーを構築します。

pnpm build

自動リビルドを使用した開発の場合:

pnpm watch

サーバーを実行します。

pnpm dev

デバッグ

パッケージ スクリプトとして利用可能なMCP Inspectorを使用します。

pnpm inspector

インスペクターは、ブラウザでデバッグ ツールにアクセスするための URL を提供します。

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

Latest Blog Posts

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/1mcp-app/agent'

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