GemmaJnana
MCP Skills
軽量で堅牢、かつ疎結合なCLI/Agentフレームワークであり、Model Context Protocol (MCP) 上でのAgent Skillsの段階的開示を実演します。
このプロジェクトは、stdioトランスポートを使用してバックエンドのMCPサーバーと通信する、完全なローカルエージェントループを実装しています。エージェントはツールを発見し、複雑な指示(スキル)を、関連する場合にのみ動的かつオンデマンドで取得できます。
🗺️ Obsidian Vault Map
Obsidian内のドキュメントをすばやく移動する:
🏠 ホーム (README): [[README]]
📖 初心者向けガイド: [[LAYMAN_GUIDE|MCP Skillsの初心者向けガイド]]
⚙️ システムフローとウォークスルー: [[FLOW|仕組み — エンドツーエンドのウォークスルー]]
🏴☠️ サンプルスキル: [[skills/pirate-speak/SKILL|海賊語スキル (SKILL.md)]]
Related MCP server: Forage MCP Server
主な機能
疎結合アーキテクチャ: プロセスA(CLI/Agent)は、Model Context Protocolを介したJSON-RPC経由でのみプロセスB(MCPサーバー)と通信します。エージェントはサーバーツールやスキルローダーロジックをインポートしません。
段階的スキル開示: エージェントはまず利用可能なスキルのメタデータ(名前と説明)を低コストで一覧表示し、LLMがスキルが関連すると判断した場合にのみ、トークン消費量の多い指示を取得します。
ASTベースの計算機: 基本的な数値と算術演算のみに実行を制限する安全な数式評価ツールで、リモートコード実行から完全に保護されています。
堅牢なローカルテスト: ルールベースおよびスクリプト化された
DummyClientが組み込まれており、LLM APIキーを必要とせずに、多段階のエージェント動作を決定的かつオフラインでテストできます。実LLM統合: 環境設定を使用して、実際のOpenAI互換エンドポイントへシームレスに切り替えられます。
モダンなパッケージ構成: ClickベースのCLIとpyproject.tomlセットアップを使用した、クリーンなパッケージ構成です。
システムアーキテクチャ
graph LR
subgraph CLI_PROC["Process A — CLI / Agent"]
CLI["cli.py<br/>run command"]
AG["Agent<br/>ReAct Loop"]
LLM["LLMClient<br/>(Dummy / OpenAI)"]
MC["MCPClient<br/>(stdio client)"]
CLI --> AG
AG --> LLM
AG --> MC
end
subgraph SRV_PROC["Process B — MCP Server"]
SRV["FastMCP Server<br/>app.py"]
TOOLS["Tools<br/>calculator, echo"]
SKILLS["Skills<br/>list_skills / load_skill<br/>+ prompts"]
SRV --> TOOLS
SRV --> SKILLS
end
MC <-->|"MCP stdio<br/>(JSON-RPC on stdin/stdout)"| SRV
LLM -.->|"OpenAI Chat API"| EXT["LLM API Endpoint"]プロジェクト構成
mcp-skills-new/
├── chatbot-ui/ # Premium Chatbot Web UI
├── start.sh # Starts MCP server & UI in background
├── stop.sh # Stops background services
├── pyproject.toml # Build backend and dependencies config
├── FLOW.md # Walkthrough explaining how the framework runs
├── README.md # This overview file
├── skills/ # Builtin skills catalog
│ └── pirate-speak/
│ └── SKILL.md # Pirate-speak instructions with frontmatter
├── src/
│ └── mcp_skills/
│ ├── __init__.py
│ ├── cli.py # Click commands entry point
│ ├── config.py # Configuration parser settings
│ ├── agent/ # CLI Agent components
│ │ ├── __init__.py
│ │ ├── agent.py # ReAct orchestration loop
│ │ ├── mcp_client.py # MCP stdio client wrapper
│ │ └── prompts.py # System prompts
│ ├── llm/ # LLM connectors (Dummy & OpenAI)
│ │ ├── __init__.py
│ │ ├── base.py
│ │ ├── dummy.py
│ │ └── openai_client.py
│ └── server/ # Stdio/SSE MCP server
│ ├── __init__.py
│ ├── __main__.py
│ ├── app.py # FastMCP server wiring
│ ├── skills/ # Skill markdown loader
│ │ ├── __init__.py
│ │ ├── loader.py
│ │ └── models.py
│ └── tools/ # Registry and builtin tools
│ ├── __init__.py
│ ├── base.py
│ ├── registry.py
│ └── builtins.py
└── tests/ # 18 pytest unit/integration tests[!TIP] Obsidianナビゲーションのヒント: 以下のリンクを使用して、Obsidian内で主要ファイルを直接開いて編集できます:
[[FLOW]] — ReActエージェントループとstdio通信の詳細な技術ウォークスルー。
[[LAYMAN_GUIDE]] — アナロジーを用いた、開発者向けの高水準な概要。
[[skills/pirate-speak/SKILL]] — サンプルスキルの指示テンプレート。
インストール
パッケージとその開発用依存関係を編集可能モードでインストールします:
python3 -m pip install -e ".[dev]"使用方法
1. エージェントループを実行
エージェントを起動して質問に回答させます。stdio MCPサーバーのサブプロセスを自動的に起動し、アクティブなツールを検査し、ステップを推論し、適切なツールを呼び出して、要約を返します。
数式の実行(AST計算機ツールを使用):
mcp-skills run "what is 6 * 7?"スキルの発見と遅延読み込み:
mcp-skills run "what skills exist?"2. CLIで発見したスキルを探索
エージェントループを起動せずに、読み込まれたスキルテンプレートを探索します:
mcp-skills skills list3. スタンドアロンMCPサーバーを実行
stdin/stdoutで待ち受ける生のMCPサーバーを起動します:
mcp-skills serveMCP Inspectorを使用して、ツールとプロンプトを対話的に検査します:
npx @modelcontextprotocol/inspector mcp-skills serve4. Web UIとバックグラウンドサーバー
MCPサーバーと静的Web UIをバックグラウンドで実行するスクリプトを提供しています:
./start.shこれにより、SSE経由でポート8000のmcp-skills serveと、ポート8080のPython HTTPサーバーが起動します。http://127.0.0.1:8080にアクセスしてChatbot UIを使用します。
バックグラウンドプロセスを停止するには、次を実行します:
./stop.sh実LLMでの実行
オフラインのDummyClientから実際のモデルに切り替えるには、プロジェクトルートに.envファイルを作成します:
MCP_SKILLS_LLM_PROVIDER=openai
MCP_SKILLS_MODEL=gpt-4o-mini
MCP_SKILLS_OPENAI_BASE_URL=https://api.openai.com/v1
MCP_SKILLS_OPENAI_API_KEY=your-api-key-hereテストの実行
テストスイートを実行して、18件のオフライン検証チェックを実行します:
pytest -vThis server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceEnables AI agents to communicate, coordinate, and collaborate on complex tasks through a local MCP server.38ISC
- AlicenseNot gradedqualityDmaintenanceAn MCP server that enables AI agents to automatically discover, install, and learn to use new tools without manual configuration.3515MIT
- AlicenseNot gradedqualityDmaintenanceA production-grade MCP server designed for multi-tenant, authenticated, and observable AI agent systems, enabling secure tool execution across heterogeneous data sources.57MIT
- AlicenseNot gradedqualityCmaintenanceA local MCP server that gives AI agents structured task planning, execution tracking, and guided research workflows.12MIT
Related MCP Connectors
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Hosted MCP server to manage a restaurant menu from AI agents - 39 tools over the DuckHub API.
MCP server exposing the Backtest360 engine API as tools for AI agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/vdonthireddy/ollama-gemma-agents-mcp-skills'
If you have feedback or need assistance with the MCP directory API, please join our Discord server