reinvent2026-mcp
Provides access to the AWS re:Invent 2026 session catalog, with keyword and semantic search, session details, venue and travel estimates, and official AWS links.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
reinvent2026-mcp
An MCP (Model Context Protocol) server for the AWS re:Invent 2026 session catalog. Attach it to any MCP client — Claude Desktop, Kiro, Cursor, or Codex — (or a Strands agent) to search the full ~1,500-session catalog by keyword and by meaning, look up venues and campus travel, and get the official AWS links.
Author: DD · License: MIT · Repo: https://github.com/dineshrajdhanapathyDD/reinvent2026-mcp
Not affiliated with AWS. Re:Route AI recommends; AWS re:Invent confirms. Official event info always links back to AWS.
Highlights
Bundled real catalog — ships the full 1,507-session re:Invent 2026 catalog (scraped from the official public API), loaded on startup. Works offline, no keys.
Semantic search — find sessions by a natural-language goal ("build production AI agents hands-on"), not just keywords.
Venues & travel — the six venues + walk/shuttle estimates.
Official links — the source-of-truth AWS URLs.
Live refresh — re-scrape the official catalog API with Playwright.
Related MCP server: Sessionize MCP Server
Install
pip install reinvent2026-mcp
# optional: enable live scraping of the official catalog
pip install "reinvent2026-mcp[scrape]"
playwright install chromiumRun it directly:
reinvent2026-mcp # stdio MCP server
# or
python -m reinvent2026_mcp.serverTools
Tool | Description |
| Active source + session count |
| Keyword/topic search (+ day/venue) |
| Meaning-based search from a natural-language goal |
| One session by id |
| The six venues |
| Walk vs. shuttle minutes between venues |
| Authoritative AWS re:Invent URLs |
| Scrape the official public API (Playwright) |
| Load a normalized catalog JSON file |
Use it in your MCP client
The server speaks MCP over stdio. Add the snippet for your client, then restart it and ask something like "Find hands-on sessions to help me build production AI agents at re:Invent."
Claude Desktop
Edit claude_desktop_config.json:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"reinvent-2026": {
"command": "reinvent2026-mcp"
}
}
}If reinvent2026-mcp isn't on PATH, use the module form:
{
"mcpServers": {
"reinvent-2026": {
"command": "python",
"args": ["-m", "reinvent2026_mcp.server"]
}
}
}Restart Claude Desktop; the tools appear under the 🔌 (MCP) menu.
Kiro
Add to .kiro/settings/mcp.json (workspace) or ~/.kiro/settings/mcp.json
(global):
{
"mcpServers": {
"reinvent-2026": {
"command": "reinvent2026-mcp",
"disabled": false,
"autoApprove": [
"catalog_status", "search_sessions", "semantic_search",
"get_session", "list_venues", "estimate_travel", "official_links"
]
}
}
}Reconnect from Kiro's MCP Server panel (no restart needed).
Cursor
Edit ~/.cursor/mcp.json (global) or .cursor/mcp.json (project):
{
"mcpServers": {
"reinvent-2026": {
"command": "reinvent2026-mcp"
}
}
}Enable it in Settings → MCP, then use it from Cursor chat/agent.
Codex (OpenAI Codex CLI)
Add to ~/.codex/config.toml:
[mcp_servers.reinvent-2026]
command = "reinvent2026-mcp"
args = [](Equivalent module form: command = "python", args = ["-m", "reinvent2026_mcp.server"].)
Any Strands agent (Python)
from mcp import StdioServerParameters
from strands import Agent
from strands.tools.mcp import MCPClient
client = MCPClient(lambda: StdioServerParameters(command="reinvent2026-mcp"))
client.start()
agent = Agent(tools=client.list_tools_sync())
agent("Find hands-on sessions to help me build production AI agents.")Example prompts
"Search re:Invent for Amazon Bedrock chalk talks."
"Semantic search: I want to secure my generative AI applications."
"How long from The Venetian to MGM Grand — walk or shuttle?"
"Give me the official re:Invent keynotes and security-focus links."
How the scraper works
The catalog page loads its data from a public JSON API
(POST https://catalog.awsevents.com/api/sessions) that needs two profile
headers the page generates — no login required. refresh_catalog opens the
page once with Playwright, captures those headers, then pages through all
sessions and normalizes them.
The public catalog omits per-session times/rooms until nearer the event, so day/time/venue are assigned deterministically (clearly estimated) to keep scheduling usable; real published times can replace them without code changes.
Refresh the bundled data:
reinvent2026-refreshAutomated access is governed by the event's terms of use. Keep it to your own personal planning.
Data model
Each session: id, title, topic, format, venue, room, day, start, end, level, learning_mode, hands_on, abstract, official_url, catalog_url, match_score.
Formats normalize to the canonical set (Breakout, Chalk Talk, Workshop, Builders'
Session, Code Talk, Lab, Lightning Talk, Gamified Learning, Exam Prep, Bootcamp,
Keynote), each mapped to a learning mode (Watch and Learn / Work Alongside
Experts / Build It Yourself / Certification).
Development
git clone https://github.com/dineshrajdhanapathyDD/reinvent2026-mcp.git
cd reinvent2026-mcp
pip install -e ".[dev,scrape]"
pytest -qReleasing (maintainers)
CI runs the test suite on every push/PR (.github/workflows/ci.yml). To publish
a new version to PyPI, bump version in pyproject.toml, then tag:
git tag v0.1.0
git push origin v0.1.0The publish.yml workflow builds and uploads to PyPI. It uses PyPI Trusted
Publishing (OIDC — no stored token); configure the publisher once on PyPI under
the project's Publishing settings (owner dineshrajdhanapathyDD, repo
reinvent2026-mcp, workflow publish.yml). Or set a PYPI_API_TOKEN repo secret
and uncomment the password: line in the workflow.
What NOT to commit (kept out via .gitignore)
To keep the repo clean and safe, these are intentionally hidden / ignored and should never be committed:
Build artifacts:
build/,dist/,*.egg-info/Python caches:
__pycache__/,*.pyc,.pytest_cache/Virtual environments:
.venv/,venv/Editor/OS files:
.DS_Store,.idea/,.vscode/Secrets & local config: any
.env, API tokens, PyPI/.pypirc, credentialsLarge raw scrape dumps and temporary/probe scripts (
_*.py,*_raw.json)
If you fork or publish, double-check you are not committing credentials or a
.pypirc. Publish to PyPI with an API token, not a password.
License
MIT © 2026 DD
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
Search your Obsidian vault to quickly find notes by title or keyword, summarize related content, a…
Query, explore, and manage your databases through natural conversation.
Search and analyze meeting transcripts, summaries, soundbites and analytics from Fireflies.ai
Amazon search and product extraction: titles, prices, ASINs, and listings as clean JSON.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables querying Figma Config 2026 sessions, speakers, and agenda via Claude without browsing.-
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to search for speakers and talks by date using the Sessionize API.-
- AlicenseNot gradedqualityCmaintenanceEnables management of Cvent events, registrations, attendees, sessions, contacts, surveys, reports, custom objects, and webhooks via natural language through the Cvent REST API.MIT
- FlicenseNot gradedqualityCmaintenanceEnables users to query a conference agenda through MCP, listing sessions and finding when specific talks occur via natural-language agent requests.-