T-Invest について
T-InvestはSymfonyベースのMCPサーバーで、T-Invest APIを通じて口座、ポートフォリオ、企業のファンダメンタル指標を取得できます。MCPクライアントで投資情報を扱いたいユーザー向けで、ローカルまたはコンテナで実行できます。
主な機能
- 01ユーザー口座の一覧取得
- 02ポートフォリオの取得
- 03ティッカーによる絞り込み
- 04企業ファンダメンタル指標の取得
- 05ローカルとコンテナでの実行
活用シーン
- 01T-Invest口座一覧の確認
- 02ティッカー別のポートフォリオ確認
- 03企業のファンダメンタル指標の参照
MCP 対応
MCP サーバーとして、T-Invest API経由で口座、ポートフォリオ、企業指標の取得ツールをクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
docker run -i --rm -e APP_T_INVEST_BASE_URL -e APP_T_INVEST_TOKEN -e APP_T_INVEST_ACCOUNT_ID prikotov/t-invest-mcp-server:latestAPP_T_INVEST_BASE_URLAPP_T_INVEST_TOKENシークレットAPP_T_INVEST_ACCOUNT_IDローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
T-Invest API 用 MCP サーバー
このプロジェクトには、Symfony を基盤とするコンソールアプリケーションが含まれており、MCP(Model Context Protocol)サーバーを実装しています。 サーバーは T-Invest API を操作するためのツールを提供します。
サーバーはライブラリ logiscape/mcp-sdk-php を使用します。
設定
{
"mcpServers": {
"t-invest": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"APP_T_INVEST_BASE_URL",
"-e",
"APP_T_INVEST_TOKEN",
"-e",
"APP_T_INVEST_ACCOUNT_ID",
"prikotov/t-invest-mcp-server:latest",
"bin/server"
],
"env": {
"APP_T_INVEST_BASE_URL": "<API ENDPOINT>",
"APP_T_INVEST_TOKEN": "<YOUR_TOKEN>",
"APP_T_INVEST_ACCOUNT_ID": "<YOUR_ACCOUNT_ID>"
}
}
}
}
ここで、 は T-Invest REST API エンドポイント です。
- https://invest-public-api.tinkoff.ru/rest/ - 本番サービス
- https://sandbox-invest-public-api.tinkoff.ru/rest/ - サンドボックス
<YOUR_TOKEN> は T-Invest REST API のトークンです。トークンの取得方法についてはこちらをご覧ください。
<YOUR_ACCOUNT_ID> は、MCP Server を接続する T-Invest の口座番号です。
機能(ツール)
get_accounts- ユーザーの口座一覧を返します。get_portfolio- クライアントのポートフォリオを返します。ティッカーによるフィルタリングに対応しています。get_asset_fundamentals- 指定されたティッカーの企業のファンダメンタル指標を返します。
開発者向け情報
要件
- PHP バージョン 8.3 以上
- Composer
アプリケーションはローカルでも Docker でも起動できます。
インストール
リポジトリをクローンし、依存関係をインストールします。
composer install
起動
ローカル
bin/server
または、従来の方法で実行します。
php bin/console app:mcp-server
または、podman を使用します。
podman run --rm -i t-invest-mcp-server bin/console app:mcp-server
サーバーは利用可能なツールの一覧を表示し、それぞれを呼び出せます。次の方法で確認できます。
podman-compose run --rm t-invest-mcp-server bin/console app:mcp-client --via=console
--via オプションで、サーバーの起動方法(console、podman、または docker)を選択できます。デフォルトでは console が使用されます。
Docker(Podman)
プロジェクトには Dockerfile と compose.yaml が含まれています。コンテナをビルドして起動するには、次を実行します。
podman build -t t-invest-mcp-server .
Makefile
一般的なタスクの自動化には Make を使用します。主なターゲットは次のとおりです。
make help # вывести справку
make build # собрать Docker-образ
make push # отправить образ в репозиторий
make cache-clear # очистить кэш приложения
make test-all # запустить тесты и пример клиента
make tests # запустить юнит тесты
make psalm # статический анализ
make phpcs # проверка стиля кода
テスト
ローカルでテストを実行します。
./bin/phpunit
または、Make を使って 1 つのコマンドで実行します。
make tests
または、docker を使って実行します。
docker-compose run --rm t-invest-mcp-server bin/phpunit
または、podman を使って実行します。
podman-compose run --rm t-invest-mcp-server bin/phpunit
テストではクライアントをサーバーに接続し、サーバーのツールを呼び出します。
プロジェクト構成
src/- アプリケーションのソースコードsrc/Tool- ツールのソースコードbin/- コンソールスクリプトconfig/- Symfony の設定tests/- 統合テストvar/log- アプリケーションのログ
ライセンス
このプロジェクトは MIT ライセンスの条件に基づいて配布されています。ライセンスの全文は LICENSE ファイルをご覧ください。
サポート
ご質問やご提案は、以下をご利用ください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。