CopilotMCP
A collection of MCP servers built with FastMCP framework that handle various tasks including customer interviews, E2E testing, and go-live processes, enabling seamless integration with GitHub Copilot through VSCode.
README Documentation
MCP Server Project
This project contains multiple MCP servers for handling various tasks such as customer interviews, E2E testing, and go-live processes. Each MCP server is implemented using the FastMCP framework.
Prerequisites
- Python 3.11 or higher
uv
package manager (used instead ofpip
)
Setup
-
Clone the repository:
git clone <repository-url> cd CopilotMCP
-
Install dependencies using
uv
:uv install
Running the Project
To run a specific MCP server, use the following command:
uv run main.py --mcp <mcp_server_name>
Replace <mcp_server_name>
with the name of the MCP server you want to run. Available options are:
hello
customer_mcp
interview_mcp
go_live_mcp
testing_e2e_mcp
Example
To run the customer_mcp
server:
uv run main.py --mcp customer_mcp
This will start the customer_mcp
server and make it accessible at:
http://127.0.0.1:8000/customer-mcp-server/mcp
Running with Docker Compose
You can use Docker Compose to run all MCP servers simultaneously. Each server will be exposed on a different port.
Steps to Run
-
Build and start all services:
docker-compose up --build
-
Access the MCP servers at the following URLs:
hello-mcp
: http://127.0.0.1:8000/hello-server/mcpcustomer-mcp
: http://127.0.0.1:8001/customer-mcp-server/mcpinterview-mcp
: http://127.0.0.1:8002/interview-mcp-server/mcpgo-live-mcp
: http://127.0.0.1:8003/go-live-mcp-server/mcptesting-e2e-mcp
: http://127.0.0.1:8004/testing-e2e-mcp-server/mcp
-
Stop all services:
docker-compose down
Notes
- Ensure Docker and Docker Compose are installed on your system.
- Each MCP server runs in its own container and is accessible on its respective port.
Configuring MCP Servers in VSCode
To configure MCP servers in VSCode, you can add entries to your settings.json
file under the mcp.servers
section. This allows you to define and manage MCP server endpoints for easy access.
Example Configuration
To configure the hello-mcp-server
, add the following entry to your settings.json
file:
"hello-mcp-server": {
"url": "http://127.0.0.1:8000/hello-server/mcp/http",
"type": "http"
}
Then you can access hello server hello
tool by executing: #hello <something>
in Copilot.
Steps to Add Configuration
- Open your VSCode
settings.json
file. - Locate or create the
mcp.servers
section. - Add the configuration for the desired MCP server, as shown in the example above.
Accessing the Server
Once configured, you can use the defined URL to interact with the MCP server. For example, the hello-mcp-server
will be accessible at:
http://127.0.0.1:8000/hello-server/mcp/http
This setup ensures that you can easily manage and test MCP servers directly from VSCode.
Project Structure
main.py
: Entry point for running MCP servers.customer_mcp.py
: Handles customer interview-related tasks.interview_mcp.py
: Manages customer interview steps.go_live_mcp.py
: Handles go-live processes.testing_e2e_mcp.py
: Manages E2E testing tasks.hello.py
: Example MCP server for testing.
Notes
- Ensure that the
uv
package manager is installed and configured correctly. - Use the
--mcp
argument to specify which MCP server to run.