Skip to content

davidrsetti/A2A-and-MCP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧠 LLM-Powered Terminal Assistant using A2A & MCP

youtube link : Deep dive and step by step tutorial of A2A and MCP, including code walthrough

This is an LLM-powered application that allows users to execute terminal commands using simple English queries like:

"Delete readme.txt on my desktop."

It leverages the A2A (Agent-to-Agent) and MCP (Model Context Protocol) to interpret and execute commands on a Linux system.


🛠️ Getting Started

Follow these steps to get the system up and running.

1. Clone the Repository

git clone https://github.com/ishanExtreme/a2a_mcp-example.git
cd a2a_mcp-example

2. Set OpenAI API Key

Export your OpenAI API key to your environment:

export OPENAI_API_KEY="<your-openai-api-key>"

3. Create and Activate Virtual Environment

python -m venv venv or conda create ...
source venv/bin/activate  # On Windows use: venv\Scripts\activate

4. Install Requirements

pip install -r requirements.txt

🧩 Running the Application

Ensure all the services are running in separate terminal tabs/windows:

🖥️ Start the UI Server

cd ./client/demo/ui
uv run main.py

🔁 Start the A2A Server

cd ./a2a_server
python main.py

🖥️ Start the MCP Server

cd ./mcp_server
python mcp_server.py

🌐 Accessing the Application

  1. Open your browser and go to: http://localhost:12000
  2. Navigate to the Agents section.
  3. Add a Linux agent using the following endpoint:
http://localhost:10000

You are now ready to start chatting and executing Linux commands via natural language!


🧪 Example Queries

  • "Delete the notes.txt file on Desktop"
  • "List all files in the Documents folder"
  • "Create a new directory called projects"

🧠 Built With

  • OpenAI GPT
  • A2A Protocol
  • MCP Protocol
  • FastAPI + Uvicorn
  • Python 3.12+

📜 License

MIT License © 2025


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published