N.I.L.O. Docs

MCP クライアント

この文書では、MCP 対応ツールをローカル N.I.L.O. MCP server に接続する方法を説明します。

先に Notion token を設定する

MCP クライアントに Notion token を直接保存する必要はありません。token はローカルのグローバル設定に保存します。

nilo config --global user.token ntn_xxx
nilo config --global user.name "Ada"
nilo config --global --show

MCP クライアントはローカルの nilo server に接続するだけです。

Transport を選ぶ

N.I.L.O. がサポートする transport は次の 2 つだけです。

Transport 向いている用途 事前に server 起動が必要か
stdio command/args で server を起動する local client 不要
streamable-http MCP service URL に接続する local/remote client 必要。service を先に起動

local command-launched client には stdio を使います。N.I.L.O. を service として実行し、client が URL で接続する場合は Streamable HTTP を使います。client は local/remote のどちらでも構いません。legacy SSE はサポートせず、transport value sse は拒否されます。

Stdio 設定

stdio mode では、MCP クライアントが server process を起動・停止します。

設定値:

Field Value
Server name nilo
Transport stdio
Command nilo
Arguments server, stdio

一般的な JSON:

{
  "mcpServers": {
    "nilo": {
      "command": "nilo",
      "args": ["server", "stdio"]
    }
  }
}

1 行の command が必要なクライアントでは次を使います。

nilo server stdio

uv tool install . でインストールした場合は、shell で次が実行できることを確認します。

nilo --help

クライアントが nilo を見つけられない場合:

uv tool update-shell

その後、ターミナルまたは MCP クライアントを再起動します。

nilo をインストールしない Stdio 設定

niloPATH にない場合でも、MCP クライアントから uv 経由で repository path の nilo を実行できます。

Field Value
Server name nilo
Transport stdio
Command uv
Arguments run, --no-project, --with, /path/to/notion-nilo, nilo, server, stdio

JSON 例:

{
  "mcpServers": {
    "nilo": {
      "command": "uv",
      "args": [
        "run",
        "--no-project",
        "--with",
        "/path/to/notion-nilo",
        "nilo",
        "server",
        "stdio"
      ]
    }
  }
}

/path/to/notion-nilo は自分の repository root に置き換えてください。

Streamable HTTP 設定

MCP URL または streamable HTTP transport をサポートするクライアントでは、先にローカル server を起動します。

nilo server run --host 127.0.0.1 --port 8000

状態確認:

nilo server status

クライアント設定:

Field Value
Server name nilo
Transport streamable-http
URL http://127.0.0.1:8000/mcp
Authentication None(localhost example のみ)

JSON 例:

{
  "mcpServers": {
    "nilo": {
      "transport": "streamable-http",
      "url": "http://127.0.0.1:8000/mcp"
    }
  }
}

クライアントが httpstreamableHttpremote server などの名前を使う場合は、URL を入力できる選択肢を選び、次を入力します。

http://127.0.0.1:8000/mcp

MCP クライアントに Notion token を書かないでください。ローカル nilo server がローカル設定から読み取ります。

Remote service scope

N.I.L.O. を将来 remote service として deploy する場合も、transport contract は /mcp endpoint の Streamable HTTP です。remote client は legacy SSE を選択してはいけません。この release で文書化・検証するのは上記 localhost server だけです。remote deployment、authentication、TLS、reverse proxy configuration は今回延期しているため、この unauthenticated localhost example を network に公開しないでください。

Background server 管理

状態確認:

nilo server status

ログ:

nilo server logs --tail 100

停止:

nilo server stop

ローカル server state とログの削除:

nilo server remove

実行中プロセスも含めて強制 cleanup:

nilo server remove --force

これはローカル server runtime state だけを削除します。MCP client entry、コマンド、token 設定、project context の削除は Uninstallation を参照してください。

環境変数

カスタムのグローバル設定ファイルを使う場合は、同じ環境変数を MCP クライアントにも渡します。

NOTION_MCP_CONFIG=/path/to/config.json

stdio JSON 例:

{
  "mcpServers": {
    "nilo": {
      "command": "nilo",
      "args": ["server", "stdio"],
      "env": {
        "NOTION_MCP_CONFIG": "/path/to/config.json"
      }
    }
  }
}

現在の MCP Tool

Configuration and authentication:

Pages:

Blocks:

Databases:

Data sources:

Users:

Comments:

Views:

File uploads:

Search and custom emoji:

Controlled Raw API:

FAQ

クライアントに N.I.L.O. MCP tools が表示されない場合:

  1. ターミナルで nilo --help を実行し、コマンドが存在するか確認します。
  2. stdio では commandargs が別フィールドか確認します。
  3. streamable HTTP では nilo server status が running を示すか確認します。
  4. nilo server logs --tail 100 でログを確認します。
  5. nilo config --global --show で Notion token が設定済みか確認します。

Security notes