Inspiration
Every engineering team has experienced the same frustrating scenario: a bug is reported, someone spends hours investigating it, and only later realizes the exact issue had already been solved before. The solution exists—but it's buried across Slack conversations, Jira tickets, GitHub commits, and internal documentation, making it difficult to find when it matters most.
We built Recall to turn that scattered knowledge into an organization's searchable memory. Instead of requiring engineers to manually search multiple systems, Recall automatically searches historical conversations, issue trackers, code repositories, and documentation to determine whether an issue has already been resolved, whether related work is already in progress, or whether a brand-new ticket should be created.
What it does
Recall continuously monitors engineering Slack channels for newly reported issues.
When a message is detected, Recall begins analyzing it and searches across your engineering knowledge in parallel.
It searches historical Slack conversations using Slack Real-Time Search (RTS), queries GitHub and Jira through the Model Context Protocol (MCP), and performs semantic retrieval over documentation, runbooks, and historical resolutions using OpenSearch.
Recall then combines all of this context to determine the best next action.
If a matching issue already exists, Recall replies directly in the Slack thread with:
- A concise summary of the issue
- The ticket status and severity
- Links to the existing Jira issue
- References to the GitHub commit or previous resolution
If no related work is found, Recall prepares a brand-new Jira issue with the relevant details, allowing engineers to immediately begin tracking and resolving the incident.
Instead of spending time searching across Slack, Jira, GitHub, and documentation, engineers receive all the relevant context directly where they are already working—in Slack.
How we built it
Recall is built as an orchestration layer that connects existing engineering tools into a single intelligent workflow.
Our Slack application, built with Bolt for JavaScript, listens for new messages in engineering channels. When a potential issue is detected, Recall launches parallel retrieval workflows.
These workflows query:
- Slack Real-Time Search (RTS) for historical conversations and previous resolutions.
- MCP servers connected to GitHub and Jira to retrieve existing issues, ticket status, ownership, and related commits.
- OpenSearch to perform semantic search across indexed documentation, runbooks, and historical engineering knowledge.
The retrieved context is combined inside Recall's Analysis and Decision Node, which evaluates whether the issue has already been solved, is currently being worked on, or represents a completely new incident.
Based on that decision, Recall either:
- Replies in the Slack thread with the relevant context and existing solution.
- Surfaces the associated Jira ticket and GitHub commit.
- Creates a new Jira issue when no matching resolution exists.
All demonstration data—including Slack conversations, Jira issues, GitHub commits, and documentation—was synthetically generated and pre-seeded to demonstrate the complete workflow without exposing proprietary information.
Challenges we ran into
One of the biggest challenges was orchestrating multiple retrieval systems that each expose different types of information. Slack conversations, Jira tickets, GitHub repositories, and documentation all have different structures, so combining them into a single decision required careful coordination.
Another challenge was ensuring Recall could confidently distinguish between genuinely duplicate issues and new incidents. We wanted to reduce duplicate work without incorrectly linking unrelated problems.
Designing around MCP also required building a flexible architecture that could support multiple engineering platforms while keeping the overall workflow consistent.
What we learned
This project reinforced that AI delivers the most value when it connects existing engineering systems rather than replacing them.
We learned how Slack Real-Time Search provides fast access to conversational history, how MCP simplifies integration with platforms like GitHub and Jira, and how OpenSearch enables semantic retrieval over large knowledge bases.
Most importantly, we learned that combining these sources into a unified decision-making workflow produces far better results than searching each system independently.
Accomplishments we're proud of
- Built an end-to-end engineering workflow integrating Slack Real-Time Search, MCP, GitHub, Jira, and OpenSearch.
- Created a centralized decision engine that combines conversations, issue tracking, documentation, and code history into a single response.
- Automatically determines whether to surface an existing solution or prepare a brand-new Jira issue.
- Delivered engineering context directly inside Slack, eliminating manual searches across multiple tools.
- Designed a modular architecture that can easily support additional enterprise systems through MCP.
What's next for Recall
- Expand MCP integrations beyond GitHub and Jira to platforms such as Linear, ServiceNow, Azure DevOps, and other engineering tools.
- Improve Recall's decision engine with configurable confidence thresholds, issue clustering, recurring incident detection, and continuous knowledge base enrichment.
- Support image and file analysis so that when screenshots, logs, PDFs, or other attachments are shared in Slack, Recall can automatically extract relevant information, identify known issues, summarize the contents, and surface related documentation, Jira tickets, or GitHub commits.
- Introduce @Recall on-demand assistance, where mentioning
@Recallin any Slack conversation triggers contextual searches across Jira, GitHub, documentation, and other integrated tools to answer questions instantly. Messages without an@Recallmention will remain normal team conversations, ensuring Recall only participates when explicitly invoked.
Our long-term vision is for Recall to evolve from an intelligent issue assistant into a proactive engineering memory that helps teams identify recurring operational problems before duplicate issues are even reported.
Built With
- github-api
- jira-api
- mcp
- opensearch
- python
- real-time-search-api
- slack-api
- slack-bolt
Log in or sign up for Devpost to join the conversation.