Times Newswire API MCP Server

MCP-сервер

Этот проект представляет собой сервер MCP (Multi-Agent Conversation Protocol) для указанного URL-адреса OpenAPI - https://api.apis.guru/v2/specs/nytimes.com/timeswire/3.0.0/openapi.json , автоматически сгенерированный с помощью конструктора MCP AG2.

Предпосылки

  • Питон 3.9+
  • пип и уф

Установка

  1. Клонируйте репозиторий:
    git clone <repository-url> cd mcp-server
  2. Установка зависимостей: Скрипт .devcontainer/setup.sh управляет установкой зависимостей с помощью pip install -e ".[dev]" . Если вы не используете контейнер dev, вы можете запустить эту команду вручную.
    pip install -e ".[dev]"
    В качестве альтернативы вы можете использовать uv :
    uv pip install --editable ".[dev]"

Разработка

В этом проекте используется ruff для линтинга и форматирования, mypy для статической проверки типов и pytest для тестирования.

Линтинг и форматирование

Чтобы проверить наличие проблем с линтингом:

ruff check

Чтобы отформатировать код:

ruff format

Эти команды также доступны через скрипт scripts/lint.sh .

Статический анализ

Чтобы запустить статический анализ (mypy, bandit, semgrep):

./scripts/static-analysis.sh

Этот скрипт также настроен как pre-commit hook в .pre-commit-config.yaml .

Проведение тестов

Для запуска тестов с покрытием:

./scripts/test.sh

Это запустит pytest и сгенерирует отчет о покрытии. Для комбинированного отчета и очистки вы можете использовать:

./scripts/test-cov.sh

Предварительные фиксации Хуков

Этот проект использует pre-commit hooks, определенные в .pre-commit-config.yaml . Чтобы установить hooks:

pre-commit install

Хуки будут запускаться автоматически перед каждым коммитом.

Запуск сервера

Сервер MCP можно запустить с помощью скрипта mcp_server/main.py . Он поддерживает различные транспортные режимы (например, stdio , sse ).

Для запуска сервера (например, в режиме stdio):

python mcp_server/main.py stdio

Сервер можно настроить с помощью переменных среды:

  • CONFIG_PATH : Путь к файлу конфигурации JSON (например, mcp_server/mcp_config.json ).
  • CONFIG : строка JSON, содержащая конфигурацию.
  • SECURITY : переменные среды для параметров безопасности (например, ключи API).

Подробную информацию о том, как они загружаются, см. в блоке if __name__ == "__main__": в mcp_server/main.py.

Файл tests/test_mcp_server.py демонстрирует, как запустить сервер и взаимодействовать с ним программным способом для тестирования.

Строительство и издательское дело

Этот проект использует Hatch для сборки и публикации. Чтобы собрать проект:

hatch build

Чтобы опубликовать проект:

hatch publish

Эти команды также доступны через скрипт scripts/publish.sh .

-
security - not tested
F
license - not found
-
quality - not tested

Сервер MCP, который обеспечивает доступ к API New York Times Newswire, позволяя агентам получать обновления новостей и контент из New York Times в режиме реального времени.

  1. Предпосылки
    1. Установка
      1. Разработка
        1. Линтинг и форматирование
        2. Статический анализ
        3. Проведение тестов
        4. Предварительные фиксации Хуков
      2. Запуск сервера
        1. Строительство и издательское дело

          Related MCP Servers

          • A
            security
            A
            license
            A
            quality
            This is a TypeScript-based MCP server that allows searching for New York Times articles from the last 30 days based on a keyword.
            Last updated -
            1
            5
            8
            JavaScript
            MIT License
            • Apple
          • -
            security
            F
            license
            -
            quality
            An MCP server that fetches RSS feeds and shares them with LLMs, allowing AI assistants to access and present the latest news and articles from configured feeds.
            Last updated -
            1
            TypeScript
          • A
            security
            A
            license
            A
            quality
            The MCP server that can read recent news from Coindesk.
            Last updated -
            2
            Python
            MIT License
            • Linux
            • Apple
          • -
            security
            A
            license
            -
            quality
            An MCP server that provides real-time cryptocurrency news sourced from NewsData for AI agents.
            Last updated -
            3
            Python
            MIT License

          View all related MCP servers

          ID: e2hf6cdnc7