timeline-mcp
Panteon Timeline MCP Server 🚀
MCP-сервер (Model Context Protocol), созданный на FastMCP, который позволяет AI-ассистентам (Antigravity, Claude Desktop, Cursor и др.) получать данные о задачах и историю переписки в реальном времени напрямую из Panteon Timeline (https://timeline.panteon.no).
✨ Возможности
Извлечение ID задачи: Автоматически разбирает URL-форматы, такие как
https://timeline.panteon.no/tasks#/list/15033/edit/5461, или принимает прямые ID задач (5461).Двухэтапное разрешение API: Повторяет логику браузерного расширения, разрешая внешний ID задачи (
5461) во внутреннийtask_idPanteon через API 1, а затем получая полную временную шкалу переписки через API 2.Форматирование, оптимизированное для ИИ: Предоставляет структурированный XML/Markdown-контекст (
<task_title>,<task_description>,<conversation_history>) для анализа, обобщения и составления ответов с помощью ИИ.Гибкая аутентификация: Поддерживает JWT Bearer-токены или Cookie-заголовки через конфигурацию в файле
.envили параметры при вызове инструмента.
Related MCP server: Rytnow MCP Server
🛠️ Установка и настройка
1. Установка зависимостей
Убедитесь, что у вас установлен Python 3.10+, затем создайте или повторно используйте виртуальное окружение проекта и установите в него зависимости:
cd timeline-mcp
python3 -m venv .venv
.venv/bin/python -m pip install -r requirements.txt2. Настройка аутентификации
Для получения защищенных данных с timeline.panteon.no MCP-серверу требуется токен аутентификации из вашей авторизованной сессии браузера.
Скопируйте
.env.exampleв.env:cp .env.example .envОткройте Google Chrome и войдите в
https://timeline.panteon.no.Откройте Chrome DevTools (
F12илиCtrl+Shift+I) -> перейдите на вкладку Network.Обновите страницу задачи или выполните любое действие.
Нажмите на любой запрос, начинающийся с
api/(например,taskbyissue/...илиtimeline).В разделе Request Headers скопируйте значение
Authorization(без префиксаBearer) или исходную строку заголовкаCookie.Вставьте его в ваш файл
.env:PANTEON_BEARER_TOKEN=eyJ... # OR PANTEON_COOKIE=...
🤖 Настройка MCP-клиентов
Для Claude Desktop / Antigravity / Cursor
Добавьте следующую конфигурацию в файл конфигурации вашего MCP-сервера (например, claude_desktop_config.json):
{
"mcpServers": {
"timeline-mcp": {
"command": "/home/harpalsinh.solanki@hs.local/projects/panteon/timeline-mcp/.venv/bin/python",
"args": [
"/home/harpalsinh.solanki@hs.local/projects/panteon/timeline-mcp/server.py"
],
"env": {
"PANTEON_BEARER_TOKEN": "your_jwt_token_here"
}
}
}
}Для Codex
Codex читает MCP-серверы из config.toml. Добавьте это в ~/.codex/config.toml для глобальной настройки или в .codex/config.toml внутри этого репозитория для настройки в рамках проекта:
[mcp_servers.timeline_mcp]
command = "/home/harpalsinh.solanki@hs.local/projects/panteon/timeline-mcp/.venv/bin/python"
args = ["/home/harpalsinh.solanki@hs.local/projects/panteon/timeline-mcp/server.py"]
cwd = "/home/harpalsinh.solanki@hs.local/projects/panteon/timeline-mcp"
startup_timeout_sec = 20
tool_timeout_sec = 120Если cwd указывает на этот репозиторий, python-dotenv автоматически загружает .env. Если вы предпочитаете передавать учетные данные из оболочки, добавьте:
env_vars = ["PANTEON_BEARER_TOKEN", "PANTEON_COOKIE", "PANTEON_TIMELINE_DIR"]После сохранения конфигурации перезапустите Codex и выполните /mcp в TUI Codex, чтобы убедиться, что timeline_mcp активен.
🧰 Доступные инструменты
get_task_conversation
Получает задачу полностью — тело описания и всю переписку в комментариях — включая каждое изображение, встроенное где-либо, и записывает её в markdown-файл.
Аргументы:
issue_identifier(str) — например,"https://timeline.panteon.no/tasks#/list/15033/edit/5461"или"5461". Должен быть простым числовым ID или URL, содержащим/edit/<id>.bearer_token/cookie(str, необязательно) — переопределяют учетные данные из.envпри каждом вызове.inline(bool, по умолчаниюfalse) — еслиtrue, полный markdown задачи добавляется к возвращаемому значению в дополнение к сохранению. Используйте это для клиентов, которые не могут читать локальный путь файловой системы.
Побочный эффект: записывает
timeline/<issue_id>/task.md(заголовок, метаданные, описание, комментарии). Сохраненный файл также доступен как MCP ресурс по адресуtimeline://<issue_id>/task.md, поэтому клиенты могут читать полное содержимое через MCP после получения.Пустые задачи: когда и описание, и комментарии пусты, инструмент запрашивает необязательный контекст от пользователя, если MCP-клиент поддерживает уточнение. Принятый ввод сохраняется в разделе
## User-Provided Context; неподдерживающие клиенты получают обычный вывод-заглушку.Возвращает короткую читаемую строку-сводку с ID задачи, заголовком, статусом и путем к сохраненному файлу — например:
Issue #4117 — Label print Status: open Saved to: /abs/path/timeline/4117/task.mdПолное тело задачи, вся переписка в комментариях и все URL изображений записываются в сохраненный файл. Прочитайте этот файл, чтобы получить полное содержимое.
URL изображений, встроенных в комментарии (markdown  или HTML <img>), преобразуются в абсолютные URL https://timeline.panteon.no/.... Ссылки на вложения, не являющиеся изображениями (например, .csv), исключаются.
Расположение вывода
Файл записывается в <base>/timeline/<issue_id>/task.md, где <base> — это:
Переменная окружения
PANTEON_TIMELINE_DIR, если она задана (этот MCP настроен так, что она указывает на корень проектаduell-admin); в противном случаетекущая рабочая директория.
💻 Использование из командной строки
Та же логика получения доступна из оболочки через fetch_task.py (учетные данные берутся из .env):
# By numeric ID or full URL
.venv/bin/python fetch_task.py 5461
.venv/bin/python fetch_task.py "https://timeline.panteon.no/tasks#/list/15033/edit/5461"
# Also print the rendered markdown to stdout
.venv/bin/python fetch_task.py 5461 --print
# Write under a specific project root instead of PANTEON_TIMELINE_DIR / cwd
.venv/bin/python fetch_task.py 5461 --base-dir /path/to/project🧪 Разработка и тестирование
# Install dev dependencies (adds pytest)
.venv/bin/python -m pip install -r requirements-dev.txt
# Run the unit tests — no network or credentials required
.venv/bin/python -m pytestТесты находятся в tests/ и покрывают чистые помощники по разбору/рендерингу, а также обработку ошибок аутентификации (через имитированную HTTP-сессию).
This server cannot be installed
Maintenance
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
AlicenseAqualityCmaintenanceEnables AI clients to interact with Webvizio projects and development tasks through a standardized interface. Provides access to task management, screenshots, logs, and project details for streamlined development workflows.11196MIT- FlicenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to interact with Rytnow project management platform, supporting task management, time tracking, plan creation, and team collaboration through natural language commands.
- AlicenseNot gradedqualityNot gradedmaintenanceEnables AI assistants to interact with ClickUp workspaces through natural language - search tasks, manage workflows, track time, collaborate via comments, and access complete task context including comments and images.
- AlicenseAqualityDmaintenanceEnables AI assistants to fetch ProofHub task details, comments, and bug tracker links from a URL, streamlining development workflows.612MIT
Related MCP Connectors
Task manager your agent can fully operate: boards, tasks, sprints, roles, worklogs, day planner.
Give AI agents access to form submissions — read, search, update, and process file attachments.
Connect AI assistants to ITM Platform projects, tasks, budgets, risks, and team workload.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/hspanteon/timeline-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server