LLM Tool-Calling Assistant

by o6-webwork

Integrations

  • Enables interaction with local LLMs running on the user's machine via an HTTP interface or OpenAI-compatible SDK.

  • Allows communication with OpenAI-compatible language models using the OpenAI SDK for tool-calling functionality.

Этот проект подключает локального LLM (например, Qwen) к таким инструментам, как калькулятор или база знаний, через протокол MCP . Помощник автоматически обнаруживает и вызывает эти инструменты, чтобы помочь ответить на запросы пользователя.


📦 Особенности

  • 🔧 Выполнение инструмента через сервер MCP
  • 🧠 Локальная интеграция LLM через HTTP или OpenAI SDK
  • 📚 Поддержка базы знаний ( data.json )
  • ⚡ Поддерживает транспорты stdio и sse

🗂 Файлы проекта

ФайлОписание
server.pyРегистрирует инструменты и запускает сервер MCP
client-http.pyИспользует aiohttp для связи с локальным LLM
clientopenai.pyИспользует совместимый с OpenAI SDK для LLM + логику вызова инструментов
client-stdio.pyКлиент MCP, использующий stdio
client-see.pyКлиент MCP с использованием SSE
data.jsonБаза знаний вопросов и ответов

📥 Установка

Требования

Питон 3.8+

Установить зависимости:

pip install -r requirements.txt

requirements.txt

aiohttp==3.11.18 nest_asyncio==1.6.0 python-dotenv==1.1.0 openai==1.77.0 mcp==1.6.0

🚀 Начало работы

1. Запустите MCP-сервер

python server.py

Это запустит ваш сервер инструментов с такими функциями, как add , multiply и get_knowledge_base .

2. Запустить клиент

Вариант A: HTTP-клиент (локальный LLM через необработанный API)
python client-http.py
Вариант B: клиент OpenAI SDK
python client-openai.py
Вариант C: стандартный транспорт
python client-stdio.py
Вариант D: транспорт SSE

Убедитесь, что server.py устанавливает:

transport = "sse"

Затем выполните:

python client-sse.py

💬 Примеры подсказок

Вызов математического инструмента

What is 8 times 3?

Ответ:

Eight times three is 24.

Вопрос базы знаний

What are the healthcare benefits available to employees in Singapore?

Ответ будет включать соответствующий ответ из data.json .


📁 Пример: data.json

[ { "question": "What is Singapore's public holiday schedule?", "answer": "Singapore observes several public holidays..." }, { "question": "How do I apply for permanent residency in Singapore?", "answer": "Submit an online application via the ICA website..." } ]

🔧 Конфигурация

Внутри client-http.py или clientopenai.py обновите следующее:

LOCAL_LLM_URL = "..." TOKEN = "your-api-token" LOCAL_LLM_MODEL = "your-model"

Убедитесь, что ваш LLM обслуживает конечные точки API, совместимые с OpenAI.


🧹 Уборка

Клиенты обрабатывают вызовы и ответы инструментов автоматически. Вы можете остановить сервер или клиента с помощью Ctrl+C .


🪪 Лицензия

Лицензия MIT. См. файл LICENSE .

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Подключает локальных LLM к внешним инструментам (калькулятору, базе знаний) через протокол MCP, обеспечивая автоматическое обнаружение и выполнение инструментов для улучшения ответов на запросы.

  1. 🗂 Файлы проекта
    1. 📥 Установка
      1. Требования
      2. requirements.txt
    2. 🚀 Начало работы
      1. 1. Запустите MCP-сервер
      2. 2. Запустить клиент
    3. 💬 Примеры подсказок
      1. Вызов математического инструмента
      2. Вопрос базы знаний
    4. 📁 Пример: data.json
      1. 🔧 Конфигурация
        1. 🧹 Уборка
          1. 🪪 Лицензия

            Related MCP Servers

            • -
              security
              A
              license
              -
              quality
              MCP server for toolhouse.ai. This does not rely on an external llm unlike the official server.
              Last updated -
              1
              Python
              MIT License
            • -
              security
              A
              license
              -
              quality
              A comprehensive toolkit that enhances LLM capabilities through the Model Context Protocol, allowing LLMs to interact with external services including command-line operations, file management, Figma integration, and audio processing.
              Last updated -
              14
              Python
              Apache 2.0
              • Linux
              • Apple
            • -
              security
              A
              license
              -
              quality
              An MCP server that provides tools to load and fetch documentation from any llms.txt source, giving users full control over context retrieval for LLMs in IDE agents and applications.
              Last updated -
              177
              Python
              MIT License
              • Apple
            • -
              security
              -
              license
              -
              quality
              A tool server that processes mathematical expressions via Multi-Chain Protocol (MCP), allowing LLMs to solve math problems through tool integration.
              Last updated -
              Python
              MIT License

            View all related MCP servers

            ID: d0hc6ovns6