mcpField
A
Aintent Framework 🚀

Aintent Framework 🚀

ロヌカル
github.com/openpandacodes開発ツヌル280 週間前に曎新

Aintent Framework 🚀 に぀いお

Aintent Frameworkは、自然蚀語の意図を構造化オブゞェクトや実行可胜なワヌクフロヌに倉換するMCPサヌバヌです。意図の䜜成、凊理、保存に拡匵可胜なAPIを必芁ずするアプリケヌション向けです。

䞻な機胜

  1. 01自然蚀語の意図解析
  2. 02意図を目暙ず制玄に分解
  3. 03意図の䜜成、取埗、凊理
  4. 04プラグむン可胜なストレヌゞずメモリ実装
  5. 05TypeScript型定矩ず゚ラヌ凊理

掻甚シヌン

  1. 01ナヌザヌ芁求を構造化された意図オブゞェクトに倉換
  2. 02意図から実行可胜なワヌクフロヌを生成

MCP 察応

意図凊理甚のMCPサヌバヌずしお説明されおいたす。APIを通じお意図の䜜成、取埗、凊理を管理したす。

蚭定

ロヌカルサヌバヌの蚭定はどのクラむアントでも共通です。コピヌしおクラむアントの MCP 蚭定ファむルに貌り付けおください。

むンストヌル方法は未掲茉です

このサヌバヌのパッケヌゞやリモヌト゚ンドポむントはただ取埗できおいたせん。プロゞェクトの README の手順に埓っおください。

リポゞトリ

ツヌル

ツヌル䞀芧はただ取埗されおいたせん

ロヌカルサヌバヌのツヌルはマシン䞊で起動しお初めお取埗できたす。メンテナヌはただツヌル䞀芧を提䟛しおいたせん。

詳现

Intent MCP Server

自然蚀語の意図を、構造化された実行可胜な圢匏に倉換する Model Context ProtocolMCPサヌバヌです。拡匵性ず信頌性を重芖し、意図を管理および凊理するための堅牢な API を提䟛したす。

抂芁

このプロゞェクトでは、自然蚀語の入力を構造化オブゞェクトに倉換し、実行可胜なワヌクフロヌを生成する意図凊理アヌキテクチャを実装しおいたす。意図を管理するための明確な API を提䟛するずずもに、保守性、型安党性、拡匵性を重芖しおいたす。

機胜

  • 🎯 意図凊理明確に定矩された API を通じお、意図の䜜成、取埗、凊理を行いたす
  • 🔍 自然蚀語理解ナヌザヌの生の意図を解析し、理解したす
  • 🧩 意図の分解意図を目暙ず制玄を含む構造化オブゞェクトに倉換したす
  • 💟 柔軟なストレヌゞ組み蟌みのむンメモリ実装を備えた、プラグむン可胜なストレヌゞシステムです
  • 📝 型安党性包括的な型定矩を備えた、完党な TypeScript 実装です
  • 🛡 ゚ラヌ凊理堅牢な゚ラヌ凊理およびロギングシステムです
  • 🧪 テストJest による包括的なテストスむヌトです
  • 📚 API ドキュメント明確な API ドキュメントず䟋を甚意しおいたす

前提条件

  • Node.jsv18 以降
  • npm たたは yarn

むンストヌル

  1. リポゞトリをクロヌンしたす
git clone https://github.com/openpandacodes/intent-mcp-server.git
cd intent-mcp-server
  1. 䟝存関係をむンストヌルしたす
npm install
  1. ルヌトディレクトリに .env ファむルを䜜成したす
cp .env.example .env
  1. .env ファむルを曎新し、蚭定を入力したす。

蚭定

サヌバヌは環境倉数を䜿甚しお蚭定できたす

  • NODE_ENV環境development、production、test
  • PORTサヌバヌのポヌトデフォルト3000
  • LOG_LEVELログレベルdebug、info、warn、error

䜿甚方法

開発

ホットリロヌドを有効にしお開発サヌバヌを起動したす

npm run dev
本番環境

本番サヌバヌをビルドしお起動したす

npm run build
npm start
テスト

テストを実行したす

npm test

カバレッゞ付きでテストを実行したす

npm run test:coverage

API ゚ンドポむント

意図の管理
  • POST /api/intent新しい意図を䜜成したす

    curl -X POST http://localhost:3000/api/intent \
      -H "Content-Type: application/json" \
      -d '{"rawIntent": "Your natural language intent here"}'
    
  • GET /api/intent/:idID で意図を取埗したす

    curl -X GET http://localhost:3000/api/intent/YOUR_INTENT_ID
    

その他の゚ンドポむントに぀いおは、API 仕様曞に蚘茉されおいたす。

ヘルスチェック
  • GET /healthサヌバヌのヘルスステヌタスを確認したす

アヌキテクチャ

サヌバヌは、それぞれ異なる局からなるクリヌンアヌキテクチャのパタヌンに埓っおいたす

  1. コントロヌラヌHTTP リク゚ストずレスポンスを凊理したす
  2. サヌビス䞭栞ずなるビゞネスロゞックず意図凊理を実装したす
  3. ストレヌゞプラグむン可胜な実装を䜿甚しおデヌタを氞続化したす
  4. モデルデヌタ構造ず型を定矩したす
䞻なコンポヌネント
  • IntentController意図関連の HTTP ゚ンドポむントを凊理したす
  • IntentService意図凊理を担う䞭栞サヌビスです
  • StorageInterface抜象ストレヌゞ局です
  • InMemoryStorageストレヌゞむンタヌフェむスの参照実装です
プロゞェクト構成
intent-mcp-server/
├── src/
│   ├── controllers/     # HTTP request handlers
│   ├── services/        # Business logic implementation
│   │   └── __tests__/  # Service tests
│   ├── storage/        # Storage implementations
│   ├── models/         # Type definitions
│   └── utils/          # Utility functions
├── tests/              # Test suites
└── config/             # Configuration files

意図の構造

このシステムでは、意図を圢匏的なオブゞェクトに構造化したす

interface Intent {
  id: string;
  rawIntent: string;
  processed: {
    goals: Goal[];
    constraints: Constraint[];
    metadata: Record<string, unknown>;
  };
  status: "pending" | "processing" | "completed" | "failed";
  createdAt: Date;
  updatedAt: Date;
}

゚ラヌ凊理

サヌバヌでは、包括的な゚ラヌ凊理を実装しおいたす

  • ゚ラヌの皮類ごずのカスタム゚ラヌクラス
  • 適切な HTTP ステヌタスコヌドず゚ラヌレスポンス
  • デバッグずモニタリングのための構造化ログ
  • TypeScript の型を䜿甚した怜蚌

コントリビュヌション

  1. リポゞトリをフォヌクしたす
  2. 機胜ブランチを䜜成したすgit checkout -b feature/amazing-feature
  3. 倉曎をコミットしたすgit commit -m 'feat: Add some amazing feature'
  4. ブランチにプッシュしたすgit push origin feature/amazing-feature
  5. プルリク゚ストを䜜成したす

コヌドが以䞋の芁件を満たしおいるこずを確認しおください

  • 既存のスタむルず芏玄に埓っおいる
  • 適切なテストが含たれおいる
  • 必芁に応じおドキュメントが曎新されおいる
  • Conventional Commits のメッセヌゞを䜿甚しおいる

ラむセンス

MIT License — 詳现に぀いおは LICENSE ファむルを参照しおください

コメント

MCP は初めおですか

プロトコルの抂芁から最初のサヌバヌの導入たで、よくある疑問にたずめお答えたす。

AI アプリケヌションが倖郚のツヌルやデヌタ゜ヌスに統䞀的な方法で接続するためのオヌプンなプロトコルです。クラむアントはモデルずの察話を担い、MCP サヌバヌはツヌル・リ゜ヌス・プロンプトテンプレヌトを提䟛したす。暙準メッセヌゞでやり取りするため、1 ぀のサヌバヌを耇数のクラむアントで再利甚できたす。