Skip to main content
Glama

Локальный MCP-сервер с Ollama

Локальный Python-проект, который подключает языковую модель Ollama к MCP-серверу. Модель может обнаруживать инструменты сервера, решать, когда вызвать один из них, получать результат и формировать краткий итоговый ответ.

flowchart TD
    U["User question"] --> C["Python MCP client"]
    C --> O["Ollama llama3.2:3b"]
    O --> C
    C --> S["Local MCP server"]
    S --> D["Student JSON data"]

Доступные инструменты

Инструмент

Назначение

add_numbers

Складывает два явно указанных числа

get_student_info

Возвращает встроенный демонстрационный профиль студента

search_students

Ищет в files/students.json по имени и запрошенному полю

Related MCP server: py-mcp-students

Требования

  • Python 3.11+

  • Ollama установлена и запущена

  • Модель Ollama llama3.2:3b

Настройка Windows

python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
ollama pull llama3.2:3b
python client.py

Клиент автоматически запускает server.py через активный интерпретатор Python. Вам не нужно запускать сервер в отдельном терминале.

Примеры вопросов

  • What is 10 + 20?

  • Tell me about Pranay.

  • Where is Ananya studying?

  • What is Saranya studying?

Структура проекта

mcp-server/
├── client.py
├── server.py
├── files/
│   └── students.json
├── tests/
│   └── test_server.py
└── requirements.txt

Исправление результата инструмента

Ollama ожидает, что сообщение tool-result содержит tool_name выполненного инструмента. Клиент включает это поле и передаёт определения доступных инструментов в последующий вызов, что позволяет модели сформировать итоговый ответ после выполнения MCP-инструмента.

Примечание о данных

files/students.json содержит демонстрационные данные. Замените их на вымышленные данные или данные, полученные с согласия, прежде чем использовать этот проект публично или в производстве.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Enables an LLM client to perform basic arithmetic on two numbers — addition, subtraction, multiplication, and division — plus reverse a supplied text string, through five simple tools exposed over stdio. Inputs and structured text results follow JSON schemas, with invalid operations such as division by zero surfaced as tool errors.
    5
    -