Provides access to a dummy jobs and employee API that serves as the backend for the MCP demo
Used as the framework for building the Multi-Server Control Plane setup, enabling interactions with both jobs and employee feedback servers
Integrates with OpenAI's API to power the MCP servers using GPT-4o for processing natural language queries related to job searches and employee feedback
langchain_mcp
This repository demonstrates a minimal working MCP (Multi-Server Control Plane) setup using LangChain, with:
- A dummy jobs and employee API (FastAPI)
- Two MCP servers (jobs and employee feedback, each on its own port)
- A Python client that can query both servers simultaneously (multi-server, multi-tool)
Requirements
- Python 3.9+
- pip
- Node.js (optional, only if you want to build a frontend)
- An OpenAI API key (for GPT-4o)
Setup
1. Clone the repository
2. Create and activate a virtual environment
Note:
.venv
is gitignored. You must create it yourself.
3. Install Python dependencies
4. Set your OpenAI API key
Create a .env
file in the project root (not tracked by git):
Or export it in your shell before running the client:
Running the Demo
1. Start the dummy jobs/employee API
2. Start both MCP servers (in a new terminal)
This will start:
- Jobs server on port 8000
- Employee server on port 8002
Or, to run them manually in separate terminals:
3. Run the multi-server client (in a new terminal)
- The client will connect to both servers and can use tools from both in a single conversation.
- Make sure your OpenAI API key is exported or in a
.env
file.
File Structure
langchain_mcp_client.py
— Python client for querying both MCP servers (multi-server, multi-tool)mcp_server/server.py
— MCP servers (jobs and employee feedback, each on its own port)mcp_server/jobs_api.py
— Dummy FastAPI backend for jobs and employee datarun_servers.py
— Script to start both MCP servers at oncerequirements.txt
— Python dependencies.gitignore
— Excludes.venv
,.env
, and other environment files
Notes
- The
.venv
directory and.env
file are not included in the repo. You must create them locally. - Only the minimal, required files are tracked in git.
- If you want to add a frontend, you can do so separately (not included in this repo).
Example Usage
- Multi-server client:
- Query: "I need to find similar jobs for an AI engineer position in San Jose, CA with 4-5 years of experience, and also get a feedback summary for Kalyan P. Can you help me with both?"
- The client will use both tools:
find_similar_jobs
andsummarize_employee_feedback
.
License
MIT
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
A Multi-Server Control Plane system that enables natural language querying of job listings and employee feedback data through two specialized servers built with LangChain.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that enables LLMs to interact with Databricks workspaces through natural language, allowing SQL query execution and job management operations.Last updated -19Python
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with Linear project management systems, allowing users to retrieve, create, and update issues, projects, and teams through natural language.Last updated -3294292TypeScriptMIT License
- -securityFlicense-qualityAn MCP server that enables AI assistants to interact with the Plane project management platform, allowing them to manage workspaces, projects, issues, and comments through a structured API.Last updated -JavaScript
- AsecurityAlicenseAqualityA Model Context Protocol server implementation that enables natural language interactions with OpenSearch clusters, allowing users to search documents, analyze indices, and manage clusters through simple conversational commands.Last updated -68PythonApache 2.0