mcpField
M
MCP Manager

MCP Manager

Local
github.com/DMaxterAI & Agents3Updated 76w ago

About MCP Manager

MCP Manager bridges supported LLM endpoints and local MCP servers, letting teams send natural-language prompts through an HTTP API. YAML workspaces keep multiple model and server configurations in one instance.

Key features

  1. 01Gemini and Azure OpenAI support
  2. 02Local MCP server connections
  3. 03YAML-configured workspaces
  4. 04API key authentication
  5. 05OpenAI-format HTTP prompt API

Use cases

  1. 01Send prompts to different configured workspaces
  2. 02Query or act on APIs through local MCP servers

MCP support

It connects supported LLMs to local MCP servers and routes prompts to their tools. Remote MCP server connections are listed as planned.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

MCP Manager

CI Release

MCP Manager acts as a bridge between Large Language Models (LLMs) and MCP servers. It allows you to interact with remote and local APIs using natural language prompts via supported chat completion APIs.

Workspaces can be defined with distinct configurations, enabling connections to different LLM endpoints and MCP servers (potentially on various ports, addresses, or paths) using a single MCP Manager instance.

What is an MCP Server?

An MCP server is a middleware that currently sits between LLMs and APIs allowing the LLM to check which tools it has available to perform actions that the user prompt might have and decide to act instead of providing only an answer to the user. An MCP server translates this "will" of the model to perform an action into the action itself, might it be a change or a query to some system.

If you want to learn more, head over to https://mcp.so and scroll to the bottom for the FAQ section.

Features

  • Integrates with various LLMs (Gemini, Azure OpenAI currently supported)
  • Enables LLM interaction with MCP servers
  • Flexible workspace configuration via a single YAML file
  • Supports API Key authentication (OAuth 2.0 planned)
  • Exposes a simple HTTP API for sending prompts, in the OpenAI format

Installation

Just download the appropriate file for your operating system in the Release section, on Packages, and it is ready to go.

Configuration

The configuration is managed through a YAML file (default: config.yaml in the runtime directory). The path can be overriden using the MCP_MANAGER_CONFIG environment variable.

An annotated example configuration file is available at config.example.yaml.

Authentication

Currently, only API Key authentication is supported and is configured within the model settings. OAuth 2.0 support is planned.

LLM Configuration

Configuration varies depending on the LLM provider:

  • Gemini

    • Requires an API Key
    • The API endpoint can be found in the Gemini documentation(use the base REST endpoint). The API Key should be configured via MCP Manager and not included in the URL
  • Azure OpenAI

    • Requires a deployed model
    • Resource endpoint
    • API Version (see available versions)
    • Deployed model name
    • API Key

Usage

  1. Start the server
mcp-manager

Optionally with a different configuration path

export MCP_MANAGER_CONFIG=/path/to/your/config.yaml
mcp-manager
  1. Perform prompts via HTTP call (assuming default port)

Example with curl, using the workspace configured for /azure and using the filesystem MCP server:

curl http://localhost:7000/azure -H "Content-Type: application/json" -d '{"messages": [{"role":"user","content":"Check if the file /tmp/abc exists"}]}'

The output is something similar to:

{
  "messages": [
    {
      "role": "user",
      "content": "Check if the file /tmp/abc exists"
    },
    {
      "role": "assistant",
      "tool_calls": [
        {
          "name": "get_file_info",
          "id": "cGAjCuzqBBnUx2J2dpjpDbZg",
          "arguments": {
            "path": "/tmp/abc"
          }
        }
      ]
    },
    {
      "type": "FunctionCallOutput",
      "call_id": "cGAjCuzqBBnUx2J2dpjpDbZg",
      "output": "Error: ENOENT: no such file or directory, stat '/tmp/abc'"
    },
    {
      "role": "assistant",
      "content": "The file /tmp/abc does not exist."
    }
  ],
  "temperature": null,
  "max_tokens": null,
  "top_p": null,
  "tools": null
}

We get a complete list of all the messages exchanged between the user, the model, MCP Manager and the MCP servers.

Limitations

Contributing

Contributions are welcome, see CONTRIBUTING.md

Main development occurs on GitLab. Issues and merge requests should be submitted there. A mirror repository is maintained on GitHub and issues opened on GitHub will be manually migrated to GitLab.

Bug reports and feature requests are encouraged via GitLab Issues.

License

This project is licensed under GNU GPLv3

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.