mcp-agent-tool-adapter

mcp-agent-tool-adapterは、Pythonで開発された自動化ツールで、MCPエージェントと連携し、効率的なワークフローを実現します。ユーザーは簡単にエージェントを設定し、タスクを自動化することができ、業務の生産性を向上させることが可能です。

GitHubスター

8

ユーザー評価

未評価

お気に入り

0

閲覧数

27

フォーク

0

イシュー

0

README

mcp-agent-tool-adapter

From Protocol to Intelligence: Powering Agents with MCP.

license last-commit repo-top-language repo-language-count


📍 Overview

MCP Agent Tool Adapter enables modular tool invocation via the MCP protocol, and provides agents that can dynamically reason with tools using either Google ADK or LangGraph.

This project transforms MCP tools into:

  • 🤖 Google ADK-based agents with streaming FastAPI or CLI interfaces
  • 🧠 LangGraph-based agents that use ReAct + streaming tool planning

🧱 Project Structure
mcp-agent-tool-adapter/
├── mcp_client/                # Core client implementation (modular)
│   ├── client.py              # MCPClient & MCPServer
│   ├── tool_loader.py         # High-level async loader
│   └── types.py               # Shared type definitions
├── app_client_adk.py         # Google ADK agent + CLI chat
├── app_client_langgraph.py   # LangGraph agent + ReAct CLI chat
├── mcp_config.json           # Example MCP tool config
├── requirements.txt          # Dependencies
└── README.md

🚀 Getting Started
☑️ Prerequisites
  • Python 3.10+
⚙️ Installation
# Clone this repository
❯ git clone https://github.com/serkanyasr/mcp-agent-tool-adapter
❯ cd mcp-agent-tool-adapter

# Install dependencies
❯ pip install -r requirements.txt

🤖 Usage
Run Google ADK CLI agent:
❯ python app_client_adk.py
Run LangGraph ReAct CLI agent:
❯ python app_client_langgraph.py

Ensure your mcp_config.json defines tools like:

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["@modular-protocol/filesystem"]
    }
  }
}

🧠 Tool Architecture

MCP tools are connected to agents through MCPClient, which handles:

  • Tool server spawning (via subprocess)
  • Session management
  • Tool adaptation (langgraph or Google ADK)
  • Cleanup

You can dynamically swap agent type by changing tool_type to "google" or "langgraph" in your app.


🧪 Development / Contributing
  • Fork the repo and create feature branches.
  • Submit a PR with a description of your changes.
  • Tag @serkanyasr in issues or PRs.

We welcome contributions in:

  • 🧩 new MCP tool adapters
  • 🧠 multi-agent LangGraph use cases
  • 🛠️ OpenAPI / streaming support

🎗 License

This project is licensed under the MIT License.For more details, refer to the LICENSE file.