Skip to main content
Glama

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 .

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

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