Skip to main content
Glama
o6-webwork

LLM Tool-Calling Assistant

by o6-webwork

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


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

  • 🔧 Выполнение инструмента через сервер MCP

  • 🧠 Локальная интеграция LLM через HTTP или OpenAI SDK

  • 📚 Поддержка базы знаний ( data.json )

  • ⚡ Поддерживает транспорты stdio и sse


Related MCP server: MCP Documentation Server

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

Файл

Описание

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 .

A
license - permissive license
-
quality - not tested
C
maintenance

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/o6-webwork/mcp-template'

If you have feedback or need assistance with the MCP directory API, please join our Discord server