MCP ExplorerExplorer

Chat Mcp

@karthikv2kon 9 months ago
4 MIT
FreeCommunity
AI Systems
A FastAPI server for interacting with MCP servers and tools.

Overview

What is Chat Mcp

chat-mcp is a FastAPI-based async API server designed to communicate with Model Context Protocol (MCP) servers, allowing users to interact with various tools and services provided by these servers.

Use cases

Use cases for chat-mcp include automating tasks across different MCP servers, integrating various tools into a single application, and providing a unified interface for developers to access and utilize MCP server functionalities.

How to use

To use chat-mcp, clone the repository, set up a virtual environment, install the dependencies, configure the MCP server URL in the .env file, and then run the server using uvicorn. You can interact with the API endpoints using tools like curl.

Key features

Key features of chat-mcp include listing available MCP servers, listing tools available from MCP servers, and invoking tools on MCP servers through a simple API interface.

Where to use

chat-mcp can be used in various fields such as software development, data analysis, and any application that requires interaction with multiple MCP servers and their tools.

Content

MCP FastAPI Server

A FastAPI-based async API server that communicates with Model Context Protocol (MCP) servers.

Features

  • List available MCP servers
  • List tools available from MCP servers
  • Invoke tools on MCP servers

API Endpoints

  • POST /api/list-mcp-servers: List all available MCP servers
  • POST /api/list-tools: List all tools available from an MCP server
  • POST /api/invoke-tool: Invoke a tool on an MCP server

Prerequisites

  • Python 3.8 or higher
  • An accessible MCP server (local or remote)

Installation

  1. Clone this repository:

    git clone <repository-url>
    cd mcp-fastapi-server
    
  2. Create a virtual environment:

    python -m venv venv
    source venv/bin/activate  # For Windows: venv\Scripts\activate
    
  3. Install dependencies:

    pip install -r requirements.txt
    
  4. Create a .env file from the example:

    cp .env.example .env
    

    Edit the .env file to configure your MCP server URL and other settings.

Running the Server

Start the server with:

uvicorn app.main:app --reload

This will start the server on http://localhost:8000.

API Usage Examples

List MCP Servers

curl -X POST http://localhost:8000/api/list-mcp-servers -H "Content-Type: application/json" -d '{}'

List Tools from an MCP Server

curl -X POST http://localhost:8000/api/list-tools -H "Content-Type: application/json" -d '{"server_url": "http://localhost:5000"}'

Invoke a Tool

curl -X POST http://localhost:8000/api/invoke-tool -H "Content-Type: application/json" -d '{
  "server_url": "http://localhost:5000",
  "tool_name": "example_tool",
  "params": {
    "parameter1": "value1",
    "parameter2": "value2"
  }
}'

Documentation

Once the server is running, you can access the interactive API documentation at:

  • Swagger UI: http://localhost:8000/docs
  • ReDoc: http://localhost:8000/redoc

License

MIT # chat-mcp

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers