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.

Este proyecto conecta un LLM local (p. ej., Qwen) con herramientas como una calculadora o una base de conocimientos mediante el protocolo MCP . El asistente detecta y llama automáticamente a estas herramientas para responder a las consultas de los usuarios.


📦 Características

  • 🔧 Ejecución de herramientas a través del servidor MCP
  • 🧠 Integración local de LLM a través de HTTP o OpenAI SDK
  • 📚 Soporte de base de conocimientos ( data.json )
  • ⚡ Admite transportes stdio y sse

🗂 Archivos del proyecto

ArchivoDescripción
server.pyRegistra herramientas e inicia el servidor MCP
client-http.pyUtiliza aiohttp para comunicarse con LLM local
clientopenai.pyUtiliza SDK compatible con OpenAI para LLM + lógica de llamada de herramientas
client-stdio.pyCliente MCP que utiliza stdio
client-see.pyCliente MCP que utiliza SSE
data.jsonBase de conocimientos de preguntas y respuestas

📥 Instalación

Requisitos

Python 3.8+

Instalar dependencias:

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

🚀 Primeros pasos

1. Ejecute el servidor MCP

python server.py

Esto inicia su servidor de herramientas con funciones como add , multiply y get_knowledge_base .

2. Iniciar un cliente

Opción A: Cliente HTTP (LLM local a través de API sin procesar)
python client-http.py
Opción B: Cliente SDK de OpenAI
python client-openai.py
Opción C: transporte stdio
python client-stdio.py
Opción D: Transporte SSE

Asegúrese de que server.py establezca:

transport = "sse"

Luego ejecuta:

python client-sse.py

💬 Ejemplos de indicaciones

Llamada a la herramienta matemática

What is 8 times 3?

Respuesta:

Eight times three is 24.

Pregunta de la base de conocimientos

What are the healthcare benefits available to employees in Singapore?

La respuesta incluirá la respuesta relevante de data.json .


📁 Ejemplo: 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..." } ]

🔧 Configuración

Dentro de client-http.py o clientopenai.py , actualice lo siguiente:

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

Asegúrese de que su LLM esté prestando servicio a puntos finales de API compatibles con OpenAI.


🧹 Limpieza

Los clientes gestionan las llamadas y respuestas de las herramientas automáticamente. Puede detener el servidor o el cliente con Ctrl+C .


🪪 Licencia

Licencia MIT. Véase el archivo 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.

Conecta LLM locales con herramientas externas (calculadora, base de conocimiento) a través del protocolo MCP, lo que permite la detección y ejecución automática de herramientas para mejorar las respuestas a las consultas.

  1. 🗂 Archivos del proyecto
    1. 📥 Instalación
      1. Requisitos
      2. requirements.txt
    2. 🚀 Primeros pasos
      1. 1. Ejecute el servidor MCP
      2. 2. Iniciar un cliente
    3. 💬 Ejemplos de indicaciones
      1. Llamada a la herramienta matemática
      2. Pregunta de la base de conocimientos
    4. 📁 Ejemplo: data.json
      1. 🔧 Configuración
        1. 🧹 Limpieza
          1. 🪪 Licencia

            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