fast-bitrix24-mcp
fast-bitrix24-mcp is a server designed for interacting with the Bitrix24 REST API. It currently supports entities such as deals and custom fields, allowing for human-readable field names. It is recommended for use in local networks and is still under development, so stability should be considered.
GitHub Stars
0
User Rating
Not Rated
Favorites
0
Views
42
Forks
1
Issues
0
MCP сервер для взаимодействия с Bitrix24 rest api на основе fast-bitrix24
Сервер находится в стадии разработки и тестирования. Рекомендуется использовать только в локальной частной сети.
На данный момент сервер поддерживает следsующие сущности:
сделки
list_deal- Список сделок по фильтрам
пользовательские поля
get_all_info_fields- Получение всех ID, названий и значений полей сделки, контакта, компании, задач, лида
контакты
list_contact- Список контактов по фильтрам
компании
list_company- Список компаний по фильтрам
пользователи
list_user- Список пользователей по фильтрам
лиды
list_lead- Список лидов по фильтрам
задачи
list_task- Список задач по фильтрамget_task_time_tracking- Получение времени выполнения задачи по idget_task- Получение задачи по idget_task_comments_list- Получение списка комментариев к задаче по idget_task_checklist_items- Получение списка пунктов чеклиста задачи по id
хелпер
export_entities_to_json- Экспорт элементов сущности в JSON (сделки, контакты, компании, лиды)analyze_export_file- Анализ экспортированных данных (сумма, количество, среднее значение, минимальное значение, максимальное значение)analyze_tasks_export- Анализ экспортированных данных для задач (сумма, количество, среднее значение, минимальное значение, максимальное значение)export_task_fields_to_json- Экспорт описания полей задачdatetime_now- Получение текущей даты и времени в московской зоне
поддержка человеческого названия полей даже для полей типа список
например:
- какая сумма сделок где поле 'этаж доставки' равно 'в подвал'?
- какая сумма сделок которые нужно доставить в подвал
- как называется поле у сделки с id UF_CRM_1749724770090?
- у каких пользователях есть просроченные задачи?
Установка и запуск сервера
установите переменные окружения из файла .env.example
cp .env.example .env
установите зависимости
uv sync
или установите пакет
uv add fast-bitrix24-mcp
создайте файл для запуска сервера
from fast_bitrix24_mcp.main import mcp
if __name__ == "__main__":
mcp.run(transport="http", host="0.0.0.0", port=8000)
# mcp.run(transport="streamable-http", host="127.0.0.1", port=9000)
запустите сервер
uv run main.py
Авторизация запросов
Сервер принимает только авторизованные запросы. Токен берётся из переменной окружения AUTH_TOKEN (файл .env).
- Установите токен в
.env:
AUTH_TOKEN=ваш_секретный_токен
- Пример авторизованного запроса к HTTP MCP эндпоинту (по умолчанию путь
/mcp):
curl -X POST \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $AUTH_TOKEN" \
http://localhost:8000/mcp \
inspector
ui для тестирования сервера
npx @modelcontextprotocol/inspector
Пример использования в langchain
from langchain_mcp_adapters.client import MultiServerMCPClient
from langgraph.prebuilt import create_react_agent
from dotenv import load_dotenv
from pprint import pprint
load_dotenv()
client = MultiServerMCPClient(
{
"bitrix24-main": {
"url": "http://localhost:8000/mcp",
"transport": "http",
"headers": {
"Authorization": f"Bearer {os.getenv('AUTH_TOKEN')}"
}
},
}
)
async def main():
tools = await client.get_tools()
promts = await client.get_prompt('bitrix24-main', 'main_prompt')
promts=promts[0].content
# agent = create_react_agent("openai:gpt-4.1-nano-2025-04-14", tools, prompt=promt)
agent = create_react_agent("openai:gpt-4.1-nano-2025-04-14", tools, prompt=promts, debug=True)
# math_response = await agent.ainvoke({"messages": "сколько сделок с названием Обновленная тестовая сделка ?"})
# math_response = await agent.ainvoke({"messages": "как называется поле у сделки с id UF_CRM_1749724770090?"})
# math_response = await agent.ainvoke({"messages": "какая сумма сделок где поле 'этаж доставки' равно 'в подвал'"})
# math_response = await agent.ainvoke({"messages": "какая сумма сделок у которых этаж доставки 'в подвал'?"})
math_response = await agent.ainvoke({"messages": "покажи статистику по сделкам за сегодня и позавчера"})
token=0
for message in math_response["messages"]:
print(message.content + "\n\n")
# pprint(math_response)
token=math_response["messages"][-1].usage_metadata['total_tokens']
print(f'token: {token}')
while True:
message = input("Введите сообщение: ")
math_response["messages"].append({"role": "user", "content": message})
math_response = await agent.ainvoke(math_response)
for message in math_response["messages"]:
print(message.content + "\n\n")
if __name__ == "__main__":
import asyncio
asyncio.run(main())
)
The Tufin MCP Server is an open-source project designed to bridge Tufin's APIs with modern AI development workflows. By providing a secure REST API, it allows users to integrate Tufin functionalities into custom scripts and applications. This community-driven initiative encourages contributions and aims to enhance security and usability.
The mcp-client-for-ollama is a simple yet powerful Python client designed for interacting with Model Context Protocol (MCP) servers using Ollama. This client enables local large language models (LLMs) to utilize tools effectively. It primarily facilitates communication with APIs, streamlining workflows and enhancing the capabilities of LLMs.
