Skip to main content
Glama
kjpou1

ForexFactory MCP Server

by kjpou1

📅 ForexFactory MCP Server

Python License MCP uv

Contributions welcome Status PRs Welcome Made with Love

Сервер MCP (Model Context Protocol), который предоставляет данные экономического календаря ForexFactory в качестве ресурсов и инструментов.

Разработан для использования в агентских рабочих процессах, LLM и торговых помощниках.



🚀 Функции

  • ✅ Получение событий экономического календаря по периодам времени (today, this_week, custom и т.д.)

  • ✅ Доступ через ресурсы MCP (для доступа по подписке)

  • ✅ Доступ через инструменты MCP (прямые вызовы от клиентов/агентов)

  • ✅ Ответы в формате JSON для легкой интеграции

  • ⚡ Интеграция с LangChain, n8n или любым MCP-совместимым клиентом


📌 Статус разработки

Этот проект активно развивается. Основная функциональность стабильна (получение событий экономического календаря ForexFactory через инструменты и ресурсы MCP), но мы все еще:

  • Расширяем возможности (промпты, варианты развертывания)

  • Улучшаем документацию и примеры

Мы приветствуем отзывы и участие в разработке, пока продолжаем развивать экосистему.


forexfactory-mcp/
│── src/forexfactory_mcp/   # Main package
│   ├── models/             # Schemas & enums
│   ├── services/           # Scraper + data normalization
│   ├── tools/              # MCP tool definitions
│   ├── resources/          # MCP resource definitions
│   ├── prompts/            # Prompt templates (optional MCP prompts)
│   ├── utils/              # Shared helpers & config
│   └── server.py           # FastMCP server entrypoint
│
│── examples/               # Example clients
│── tests/                  # Unit tests
│── .env.example            # Copy to .env for config
│── pyproject.toml          # Dependencies & metadata
│── README.md               # Documentation
│── .python-version         # Python version pin (3.12)

(Полную информацию см. в репозитории — это высокоуровневая структура для участников разработки.)


Related MCP server: Google-Calendar Universal MCP

🔧 Установка

Требования

  • Python 3.12+

  • uv или pip

  • Современный терминал или MCP-совместимый клиент

Настройка

# Clone repo
git clone https://github.com/kjpou1/forexfactory-mcp.git
cd forexfactory-mcp

# Install dependencies
uv sync   # or: pip install -e .

# Install Playwright browser binaries
uv run playwright install chromium
# or, if using pip/venv:
playwright install chromium

# Copy example environment and adjust if needed
cp .env.example .env

▶️ Использование

⚡ Быстрый старт

Запустите сервер с настройками по умолчанию (транспорт stdio):

uv run ffcal-server

Запуск с транспортом HTTP:

uv run ffcal-server --transport http --host 0.0.0.0 --port 8080

Транспорт SSE (⚠️ устарело)

uv run ffcal-server --transport sse --host 127.0.0.1 --port 8001

Значения переменных окружения по умолчанию

MCP_TRANSPORT=http
MCP_HOST=0.0.0.0
MCP_PORT=8080

🏷️ Пространство имен

Пространство имен по умолчанию:

ffcal

Переопределение через .env:

NAMESPACE=ffcal

📦 Ресурсы

Имя

Путь

Описание

events_today

ffcal://events/today

События на сегодня

events_week

ffcal://events/week

Все события на неделю

events_range

ffcal://events/range/{start}/{end}

Пользовательский диапазон дат


🛠️ Инструменты

Имя

Тип

Описание

ffcal_get_calendar_events

Инструмент

Получить события за указанный период

Поддерживаемые значения:

today, tomorrow, yesterday, this_week, next_week, last_week, this_month, next_month, last_month, custom

📝 Промпты

Имя

Описание

ffcal_daily_prep

Заметка для подготовки трейдера на сегодня

ffcal_weekly_outlook

Еженедельный обзор макроэкономических событий

ffcal_volatility_grid

Тепловая карта рисков событий на неделю

ffcal_trade_map_scenarios

Карта сценариев для конкретных событий


🧩 Стили промптов

Все промпты поддерживают параметр style для управления форматированием. По умолчанию:

style: str = "bullet points"

См. Справочник стилей вывода для доступных форматов.


💻 Примеры клиентов

Пример: Использование MCP CLI

mcp call ffcal:get_calendar_events time_period=this_week

Пример: Использование в Python

from mcp.client.session import Session
async with Session("ws://localhost:8000") as session:
    result = await session.call_tool("ffcal:get_calendar_events", {"time_period": "today"})
    print(result)

Пример: Интеграция с LangChain

from langchain.agents import initialize_agent
from langchain_mcp import MCPToolkit

toolkit = MCPToolkit.from_server_url("ws://localhost:8000", namespace="ffcal")
agent = initialize_agent(toolkit.tools)
response = agent.run("What are today's USD-related high impact events?")
print(response)

📘 Справочник конфигурации клиента

📖 docs/CLIENT_CONFIG_REFERENCE.md

Включает:

  • ✅ Примеры конфигураций для Claude Desktop (локально + Docker)

  • 🐳 Сборка и настройка Docker

  • 🧩 Интеграция с VS Code MCP (в будущем)

  • 🧪 Чек-лист тестирования и устранения неполадок

  • 🔍 Настройка инспектора для визуальной отладки


⚙️ Конфигурация

Переменная

По умолчанию

Описание

NAMESPACE

ffcal

Префикс пространства имен

MCP_TRANSPORT

stdio

Тип транспорта (stdio, http, sse)

MCP_HOST

127.0.0.1

Хост для HTTP/SSE

MCP_PORT

8000

Порт для HTTP/SSE

SCRAPER_TIMEOUT_MS

5000

Тайм-аут Playwright

LOCAL_TIMEZONE

Системное локальное

Переопределение часового пояса


Пример .env

MCP_TRANSPORT=http
MCP_HOST=0.0.0.0
MCP_PORT=8080
NAMESPACE=ffcal

🐳 Интеграция с Docker

Поддерживает как stdio (по умолчанию), так и HTTP/SSE.

docker compose build
docker compose up forexfactory_mcp

Запускает сервер MCP и открывает его на порту 8000.


Цель

Описание

make build

Сборка образа Docker

make run-http

Запуск сервера в режиме HTTP

make run-stdio

Запуск в режиме stdio

make dev-http

Проверка через MCP Inspector

make stop

Остановка контейнеров


🐍 1. Ошибка установки uv или зависимостей

Запустите:

docker compose build --no-cache forexfactory_mcp

⚡ 2. Сервер немедленно завершает работу

Переключитесь на:

make run-http

🌐 3. Порт занят

Измените порт:

docker compose run --rm -e MCP_PORT=8080 forexfactory_mcp

🔐 4. Ошибка браузера

Установите Chromium:

docker compose run forexfactory_mcp playwright install chromium

🧪 Тестирование

pytest -v

📊 Дорожная карта

  • [ ] Фильтры событий по валюте и важности

  • [ ] Загрузка исторических данных

  • [ ] Расширение промптов MCP

  • [ ] Развертывание, готовое к облаку


🤝 Участие в разработке

  1. Сделайте форк репозитория

  2. Создайте ветку для функции

  3. Закоммитьте с понятным сообщением

  4. Отправьте изменения и откройте PR


📜 Лицензия

Лицензия MIT – подробности см. в LICENSE.

A
license - permissive license
B
quality
C
maintenance

Maintenance

Maintainers
10dResponse time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Real SEC, 13F, insider, congress & macro data your AI agent can cite. Hosted MCP, 24 tools.

  • The financial MCP for AI agents - 90+ financial tables, SEC filings, signals, alt-data.

  • Calendar API for AI agents: events, availability, Google/Microsoft setup, scheduling, and iCal.

View all MCP Connectors

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/kjpou1/forexfactory-mcp'

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