DSAengine: Rust-Powered Algorithm Intelligence for AI Agents について
DSAengineは、Rust製のローカルMCPサーバー兼ライブラリで、コーディングエージェントが142種類以上のデータ構造とアルゴリズムから選ぶのを支援します。決定的なキーワード照合で複雑度を含む提案を返します。
主な機能
- 01複数カテゴリにわたる142種類以上のアルゴリズム
- 02キーワードによるアルゴリズム要求の分類
- 03複雑度を含むアルゴリズム提案
- 04外部API呼び出しなしでローカル実行
- 05MCPサーバー、Rustライブラリ、HTTP APIとして利用
活用シーン
- 01コーディング課題に適したアルゴリズムを探す
- 02手法の選択時に複雑度を確認
- 03総当たり解法の代替案を検討
MCP 対応
DSAengineはstdio上のJSON-RPCでMCPサーバーとして動作し、コーディングエージェントからアルゴリズムの分類や提案を要求できます。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://dsaengine-v2026-04-08-2.onrender.com/claude mcp add --transport http DSAengine https://dsaengine-v2026-04-08-2.onrender.com/{"mcpServers":{"DSAengine":{"type":"http","url":"https://dsaengine-v2026-04-08-2.onrender.com/"}}}Cursor で開く{"servers":{"DSAengine":{"type":"http","url":"https://dsaengine-v2026-04-08-2.onrender.com/"}}}VS Code で開く{"mcpServers":{"DSAengine":{"type":"http","url":"https://dsaengine-v2026-04-08-2.onrender.com/"}}}{"mcpServers":{"DSAengine":{"serverUrl":"https://dsaengine-v2026-04-08-2.onrender.com/"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
https://dsaengine-v2026-04-08-2.onrender.com/認証が必要ツール
詳細
🚀 dsaEngine
dsaEngine は、高性能で決定論的な MCP(Model Context Protocol)サーバーであり、AI コーディングエージェント(Cursor、Windsurf、Claude Code、GitHub Copilot など)向けに本番環境対応の DSA アルゴリズムを 142 種類以上提供します。
⚡ ゼロコストのアルゴリズムアドバイザー
DSAEngine はマシン上でローカルに動作し、Model Context Protocol を通じてお気に入りのコーディングエージェントと連携します。
- ✅ API 呼び出しなし — 100%ローカルで、使用ごとの費用はゼロ
- ✅ アルゴリズム 142 種類以上 — 最適な実装を分類・インデックス化
- ✅ 決定論的 — ランダム性がなく、推奨内容を再現できます
- ✅ エージェント 7 種類 — Cursor、Windsurf、Claude Code、GitHub Copilot、Kiro、Augment、Antigravity
- ✅ MCP 互換 — stdio 経由の JSON-RPC で、ホスティングは不要です
仕組み
You ask Cursor: "Find shortest path in weighted graph with negative edges"
↓
Cursor sees .cursorrules → "consult DSAEngine first"
↓
Cursor calls: dsa_classify("Find shortest path in weighted graph with negative edges")
↓
DSAEngine responds: "Bellman-Ford Algorithm, O(V·E), confidence: 0.95"
↓
Cursor calls: graphs.bellman_ford(edges, source)
↓
DSAEngine returns: Rust code + pseudocode + result
↓
Cursor writes optimized code
1. DSAEngine をインストールする
Linux / macOS(Bash)
curl -sSL https://raw.githubusercontent.com/sVm19/DSAengine/main/install.sh | bash
Windows(PowerShell)
irm https://raw.githubusercontent.com/sVm19/DSAengine/main/install.ps1 | iex
注:お使いのプラットフォーム向けのビルド済みバイナリがない場合は、git と cargo をインストールする必要があります。
2. エージェントをセットアップする
3. コーディングを始める
エージェントにアルゴリズムの作成を依頼すると、DSAEngine が最適なものになるよう支援します。
📖 142 種類以上のアルゴリズムライブラリ
13 のカテゴリに分類されています。
📖 12 ページ(スキルカテゴリ)
Cargo の機能(--features "arrays graphs")を有効にして必要なものだけを読み込むことで、バイナリを極小に保てます。
| 機能フラグ | スキルカテゴリ | 例 |
|---|---|---|
arrays | 配列と文字列 | Two-Sum、KMP 検索、スライディングウィンドウ、Kadane のアルゴリズム |
linked_lists | 連結リスト | サイクル検出、反転、ソート済みリストのマージ、交差 |
stacks_queues | スタックとキュー | Min Stack、有効な括弧、次に大きい要素、ヒストグラム |
trees_binary | 二分木 | トラバーサル、LCA、シリアライズ、反転、最大パス和 |
trees_advanced | 高度な木構造 | Trie、セグメントツリー、Fenwick Tree、AVL Tree、Red-Black Tree |
graphs | グラフ | Dijkstra、Bellman-Ford、BFS/DFS、MST(Kruskal/Prim) |
dynamic_programming | 動的計画法 | コイン問題、LCS、編集距離、ナップサック問題 |
greedy_algorithms | 貪欲法 | 活動選択、Huffman 符号化、Jump Game |
backtracking | バックトラッキング | N-Queens、数独、組み合わせ、順列 |
sorting_searching | ソートと検索 | マージソート、クイックソート、二分探索 |
dsa_fundamentals | 基礎 | Big-O 解析、二つのポインター、スライディングウィンドウ |
advanced_topics | 応用 | LRU/LFU キャッシュ、Union-Find、Bloom Filter、Trie オートコンプリート |
🎯 使い方
MCP サーバーとして(エージェント向けに推奨)
セットアップ後、エージェントが自動的に DSAEngine を呼び出します。
Cursor:
"Write a function to find all connected components in an undirected graph"
→ Cursor calls dsa_classify("connected components undirected graph")
DSAEngine responds:
{
"algorithm": "Union-Find",
"confidence": 0.98,
"time_complexity": "O(α(n))",
"space_complexity": "O(n)",
"tool_name": "advanced_topics.union_find",
"reason": "Optimal for connectivity queries with near-O(1) amortized complexity"
}
→ Cursor calls advanced_topics.union_find(...)
→ You get optimized code
Rust ライブラリとして
use dsaengine::skills::graphs::dijkstra::Dijkstra;
fn main() {
let edges = vec![(0, 1, 4), (1, 2, 2), (0, 2, 5)];
let (distances, paths) = Dijkstra::shortest_path(&edges, 0);
println!("Shortest distances: {:?}", distances);
}
HTTP API として
# Run HTTP server (default: localhost:8000)
dsaengine
# Test:
curl -X POST http://localhost:8000/api/v1/graphs/dijkstra \
-H "Content-Type: application/json" \
-d '{...}'
# Swagger UI: http://localhost:8000/swagger-ui/
🛠 インストール方法
方法 1:Cargo(最も簡単)
cargo install dsaengine
必要条件:Rust 1.70 以降
方法 2:ビルド済みバイナリ
GitHub Releases からダウンロードしてください。
dsaengine(macOS/Linux)dsaengine.exe(Windows)dsaengine-arm64(macOS Apple Silicon)
方法 3:ソースからビルド
git clone https://github.com/yourusername/dsaengine
cd dsaengine
cargo build --release
# Binary: target/release/dsaengine
🔧 セットアップガイド
- Cursor のセットアップ — Cursor ユーザー向けの手順
- Windsurf のセットアップ — Windsurf ユーザー向けの手順
- Claude Code のセットアップ — Claude ユーザー向けの手順
📝 コマンド
# Run MCP stdio server (for agents)
dsaengine --mcp
# Run HTTP web server (for API/testing)
dsaengine
# Generate rules files for agents
dsaengine --install
# Show help
dsaengine --help
🧠 使用例
✅ 最適なアルゴリズムの選択
Cursor/Windsurf にアルゴリズム問題の解決を依頼すると、DSAEngine が最適なアプローチを提案します。
✅ 決定論的な推奨
ランダム性や LLM の幻覚がなく、純粋なキーワードベースでアルゴリズムを照合します。
✅ O(n) → O(log n) の最適化
力任せのアプローチを検出し、最適な代替案を自動的に提案します。
✅ API コストゼロ
完全にローカルで動作するため、外部 API の呼び出しもレート制限もありません。
📊 パフォーマンス
| 指標 | 値 |
|---|---|
| バイナリサイズ | 約25 MB(リリースビルド) |
| 起動時間 | 100ms 未満 |
| レコメンデーションのレイテンシ | 5ms 未満 |
| メモリ使用量 | 実行時に約50 MB |
| 利用可能なアルゴリズム | 142以上 |
🤝 コントリビューション
DSAEngine へのコントリビューションを歓迎します!ガイドラインについてはCONTRIBUTING.mdをご覧ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。