mcp-projects
@SrGrace
My Projects Repo for MCP (Model Context Protocol)
概要
What is mcp-projects?
mcp‑projects is an open‑source repository of example projects that demonstrate the Model Context Protocol (MCP). It provides reusable MCP server and client code, along with integration examples for IBM watsonx.ai and Tavily, and is intended for developers learning or implementing context‑aware AI systems.
How to use mcp-projects?
Clone the repository, install the required Python packages (e.g., mcp, fastapi, llama-index, etc.) with pip, create a .env file with credentials for IBM watsonx and Tavily, then run the MCP servers first and the clients afterward. The project is designed to be agnostic to the LLM provider with minor changes.
Key features of mcp-projects
- Open‑source collection of MCP server and client examples
- Integrates with IBM watsonx.ai and Tavily search
- Agnostic to the LLM provider (adjustable with few changes)
- Includes both server and client run scripts
- Educational explanation of the Model Context Protocol
Use cases of mcp-projects
- Learning how to implement MCP servers and clients
- Building and testing context‑aware AI applications
- Experimenting with different LLM providers in an MCP setup
- Creating prototypes that maintain conversation memory across sessions
FAQ from mcp-projects
What is the Model Context Protocol (MCP)?
MCP is a standardized way for applications to provide AI models with richer context about their environment, user preferences, and conversation history, solving the problem of limited “working memory” in AI systems.
What dependencies are required to run the projects?
The projects require Python packages such as mcp, fastapi, uvicorn, fastapi-mcp, llama-index, llama-index-embeddings-huggingface, llama-index-llms-langchain, langchain-mcp-adapters, and mcp-use, installed via pip.
How do I configure API keys?
Create a .env file in the root folder with the following credentials: API_KEY, PROJECT_ID, IBM_CLOUD_URL, MODEL_ID (for IBM watsonx.ai), and TAVILY_API_KEY (for web search).
Can I use a different LLM provider instead of IBM watsonx?
Yes, the projects are agnostic to the LLM provider, though a few code changes are needed to adapt to a different provider.
How should I run the servers and clients?
Always run the MCP servers first, and only then run the clients.