mcpField
D
Deno MCP Server

Deno MCP Server

ローカル
github.com/Timtech4u開発ツール685 週間前に更新

Deno MCP Server について

Deno MCP Serverは、権限を設定してLLMにDenoのTypeScriptまたはJavaScriptを実行させます。Denoのバージョン確認や、不安定機能の有効化にも対応します。

主な機能

  1. 01TypeScriptまたはJavaScriptの実行
  2. 02ランタイム権限の設定
  3. 03不安定機能の有効化
  4. 04Denoバージョンの確認

活用シーン

  1. 01アシスタント経由でDenoのコード片を実行
  2. 02コード実行時にネットワークアクセスを許可
  3. 03権限を付与してファイルを読み書き
  4. 04インストール済みDenoのバージョンを確認

MCP 対応

このMCPサーバーは、指定した権限でDenoコードを実行するツールと、インストール済みDenoのバージョンを取得するツールを提供します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Deno MCP サーバー

Deno TypeScript/JavaScript コードを実行するための Model Context Protocol(MCP)サーバーです。このサーバーを使うと、Claude などの LLM が、設定可能な権限のもとで Deno コードを安全に実行できます。

機能

  • Deno TypeScript または JavaScript コードを実行
  • 権限を設定(net、read、write、env、run など)
  • unstable 機能を有効化/無効化
  • Deno のバージョン情報を取得

前提条件

この MCP サーバーを使用する前に、以下を準備してください。

インストール

  1. このリポジトリをクローンします。
git clone https://github.com/Timtech4u/deno-mcp.git
cd deno-mcp
  1. 依存関係をインストールします。
npm install
  1. プロジェクトをビルドします。
npm run build

設定

Claude Desktop の場合
  1. Claude Desktop の設定ファイルを開きます。

    • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows:%APPDATA%\Claude\claude_desktop_config.json
  2. Deno MCP サーバーの設定を追加します。

{
  "mcpServers": {
    "deno": {
      "command": "node",
      "args": [
        "/absolute/path/to/deno-mcp/dist/index.js"
      ],
      "disabled": false,
      "autoApprove": [
        "execute_deno_code",
        "check_deno_version"
      ]
    }
  }
}
  1. /absolute/path/to/deno-mcp を、リポジトリをクローンした実際のパスに置き換えます。

  2. Claude Desktop を再起動します。

Cline の場合
  1. Cline の MCP 設定ファイルを開きます。

    • macOS:~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json
    • Windows:%APPDATA%\Code\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json
  2. Deno MCP サーバーの設定を追加します。

{
  "mcpServers": {
    "deno": {
      "command": "node",
      "args": [
        "/absolute/path/to/deno-mcp/dist/index.js"
      ],
      "disabled": false,
      "autoApprove": [
        "execute_deno_code",
        "check_deno_version"
      ]
    }
  }
}
  1. /absolute/path/to/deno-mcp を、リポジトリをクローンした実際のパスに置き換えます。

  2. Cline を再起動するか、ウィンドウを再読み込みします。

使用方法

設定が完了したら、さまざまな方法で Claude に Deno コードの実行を依頼できます。以下に例を示します。

基本的な使い方

特別な権限を指定せずに、簡単な Deno コードを実行できます。

Can you run this Deno code for me?

console.log("Hello from Deno!");
console.log("Version:", Deno.version);
console.log("Current directory:", Deno.cwd());
ネットワーク権限を指定する場合

HTTP リクエストを行うには、ネットワーク権限を付与する必要があります。

Run this Deno code with network permissions:

async function fetchData() {
  const response = await fetch("https://jsonplaceholder.typicode.com/todos/1");
  const data = await response.json();
  console.log("Fetched data:", data);
}

await fetchData();
ファイルシステム権限を指定する場合

ファイルを読み書きするには、ファイルシステム権限を付与する必要があります。

Run this Deno code with file system permissions:

const text = "Hello, Deno File System!";
await Deno.writeTextFile("./hello.txt", text);
console.log("File written successfully");

const content = await Deno.readTextFile("./hello.txt");
console.log("File content:", content);
複数の権限を指定する場合

複数の権限を組み合わせることができます。

Run this Deno code with network and file system permissions:

const response = await fetch("https://jsonplaceholder.typicode.com/todos/1");
const data = await response.json();
await Deno.writeTextFile("./todo.json", JSON.stringify(data, null, 2));
console.log("Todo data saved to file");
Deno 標準ライブラリを使用する場合

Deno の標準ライブラリを使用できます。

Run this Deno code with network permissions:

import { serve } from "https://deno.land/[email protected]/http/server.ts";

const handler = (req) => new Response("Hello, Deno Server!");
console.log("HTTP server running on http://localhost:8000");
serve(handler, { port: 8000 });

利用可能なツール

execute_deno_code

Deno TypeScript/JavaScript コードを実行します。

パラメーター:

  • code(string、必須):実行する Deno コード
  • permissions(文字列の配列、省略可能):付与する権限の一覧(例:「net」、「read」、「write」、「env」、「run」など)
  • unstable(boolean、省略可能):unstable 機能を有効にするかどうか
  • typescript(boolean、省略可能):コードが TypeScript(true)か JavaScript(false)か

Claude からの使用例:

Can you run this Deno code with permissions for network and file system access?

const response = await fetch("https://api.github.com/users/denoland");
const data = await response.json();
await Deno.writeTextFile("./deno-github.json", JSON.stringify(data, null, 2));
console.log("GitHub data for Deno saved to file");
check_deno_version

インストールされている Deno のバージョン情報を返します。

Claude からの使用例:

Can you check what version of Deno I have installed?

トラブルシューティング

Deno が見つからない

「Deno is not installed」のようなエラーが表示される場合は、Deno がインストールされており、システムの PATH から利用できることを確認してください。

権限エラー

コードの実行時に権限エラーが発生する場合は、適切な権限を要求していることを確認してください。

  • ネットワークリクエスト:「net」
  • ファイルシステム:「read」および/または「write」
  • 環境変数:「env」
  • サブプロセスの実行:「run」
タイムアウトエラー

コードの実行には 30 秒のタイムアウトが設定されています。コードの実行にそれ以上かかる場合、終了されます。

コントリビューション

コントリビューションを歓迎します。お気軽にプルリクエストを送信してください。

ライセンス

MIT

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。