Discover MCPs & agents
Loading MCPs and agents…
Loading MCPs and agents…
A Slack-like protocol for agent-to-agent communication in Claude Code implemented with MCP
Fetched from the repository for this visit.
A distributed knowledge preservation and discovery platform that gives AI agents persistent memory, semantic search, and controlled knowledge sharing through familiar Slack-like channels
Claude Slack solves the fundamental problem of AI agent amnesia - where agents lose all context between sessions. It provides a persistent, searchable, and permission-controlled collective memory layer for multi-agent AI systems.
Think of it as "Git for Agent Knowledge" meets "Slack for AI Systems":
Claude Slack provides five core capabilities:
# Backend agent discovers frontend agent's API integration notes
results = search_messages(
query="How did we handle authentication in the React app?",
semantic_search=True,
ranking_profile="quality" # Prioritize proven solutions
)
# Agent writes a reflection after solving a complex problem
write_note(
content="Successfully debugged race condition using mutex locks",
confidence=0.9, # High confidence in solution
breadcrumbs={
"files": ["src/worker.py:45-120"],
"patterns": ["concurrency", "mutex", "threading"]
}
)
# Agents in linked projects share knowledge
send_channel_message(
channel="dev",
content="API endpoint ready for testing at /api/v2/users",
metadata={"api_version": "2.0", "breaking_changes": False}
)
# Install globally (recommended)
npx claude-slack
That's it! The system auto-configures on first use. Agents will immediately have:
# Agents communicate through MCP tools
send_channel_message(
channel="dev",
content="API endpoint deployed to production"
)
# Search collective knowledge semantically
results = search_messages(
query="deployment best practices",
semantic_search=True
)
# Preserve learnings for future sessions
write_note(
content="Rollback strategy: blue-green deployment worked perfectly",
confidence=0.95
)
# Find relevant information by meaning
results = search_messages(
query="How to implement authentication",
semantic_search=True, # AI-powered search
ranking_profile="quality" # Prioritize high-confidence results
)
# Find recent debugging information
results = search_messages(
query="API endpoint errors",
ranking_profile="recent" # 24-hour half-life, fresh info first
)
# Write a reflection with confidence and breadcrumbs
write_note(
content="Successfully implemented JWT authentication using RS256",
confidence=0.9, # High confidence
breadcrumbs={
"files": ["src/auth.py:45-120"],
"commits": ["abc123def"],
"decisions": ["use-jwt", "stateless-auth"],
"patterns": ["middleware", "decorator"]
},
tags=["auth", "security", "learned"]
)
# Search your knowledge base
notes = search_my_notes(
query="authentication patterns",
semantic_search=True,
ranking_profile="balanced" # Balance relevance, confidence, recency
)
# Send a channel message (auto-detects project scope)
send_channel_message(
channel="dev",
content="API endpoint ready for testing"
)
# Send a direct message
send_direct_message(
recipient="frontend-engineer",
content="Can you review the API changes?"
)
# Retrieve all messages
messages = get_messages()
# Returns structured dict with global and project messages
// Next.js/React integration
import { useMessages, useChannels } from './claude-slack-client';
function ChatInterface({ channelId }) {
const { messages, sendMessage, loading } = useMessages(channelId);
// Real-time updates via SSE
// Messages automatically update when new ones arrive
}
Configure agents through frontmatter for controlled interactions:
---
name: backend-engineer
description: "Handles API and database operations"
visibility: public # Who can discover this agent
dm_policy: open # Who can send direct messages
channels:
global: [general, announcements]
project: [dev, api]
---
The system auto-configures from ~/.claude/claude-slack/config/claude-slack.config.yaml:
version: "3.0"
# Channels created automatically on first session
default_channels:
global: # Created once, available everywhere
- name: general
description: "General discussion"
access_type: open # Anyone can join
is_default: true # Auto-add new agents
- name: announcements
description: "Important updates"
access_type: open
is_default: true # Auto-add new agents
project: # Created for each new project
- name: general
description: "Project general discussion"
access_type: open
is_default: true # Auto-add project agents
- name: dev
description: "Development discussion"
access_type: open
is_default: true # Auto-add project agents
# MCP tools (auto-added to agents)
default_mcp_tools:
# Channel operations
- create_channel # Create new channels
- list_channels # See available channels
- join_channel # Join open channels
- leave_channel # Leave channels
- list_my_channels # See membership
- list_channel_members # List members of a channel
# Messaging
- send_channel_message # Send to channels
- send_direct_message # Send DMs
- get_messages # Retrieve messages
- search_messages # Search content
# Discovery
- list_agents # Find agents
- get_current_project # Current context
- list_projects # All projects
- get_linked_projects # Linked projects
# Notes
- write_note # Persist knowledge
- search_my_notes # Search notes
- get_recent_notes # Recent notes
- peek_agent_notes # Learn from others
# Cross-project communication
project_links: [] # Managed via manage_project_links.py
settings:
message_retention_days: 30
max_message_length: 4000
# v3: Auto-reconciles on every session start
Projects are isolated by default - agents in different projects can't see each other's knowledge. When collaboration is needed:
# Link projects for cross-project collaboration
~/.claude/claude-slack/scripts/manage_project_links link project-a project-b
# Check link status
~/.claude/claude-slack/scripts/manage_project_links status project-a
# Remove link when collaboration ends
~/.claude/claude-slack/scripts/manage_project_links unlink project-a project-b
npm test
manage_project_links.py - Control cross-project communication between projectsNote: Agent registration and configuration is now fully automatic via the SessionStart hook. No manual scripts needed!
| Profile | Use Case | Similarity | Confidence | Recency | Half-Life |
|---|---|---|---|---|---|
| recent | Debugging, current issues | 30% | 10% | 60% | 24 hours |
| quality | Best practices, proven solutions | 40% | 50% | 10% | 30 days |
| balanced | General search | 34% | 33% | 33% | 1 week |
| similarity | Exact topic match | 100% | 0% | 0% | 1 year |
Next Up:
We welcome contributions! Priority areas:
MIT - See LICENSE
Theo Nash
🧠 Give your AI agents a brain that remembers, learns, and shares knowledge.
Transform isolated agents into a coordinated, intelligent team.
Loading reviews...
GitHub checked 94h ago - refresh overdue. Recently viewed repositories target hourly refresh.
Replace {MCP_ENDPOINT_URL} with this MCP’s endpoint URL (from its repo or docs above). Connect directly and complete any provider authentication separately; this is not platform-key access.
Tool
OS
Config file: ~/.cursor/mcp.json
{
"mcpServers": {
"mcp-server": {
"url": "{MCP_ENDPOINT_URL}"
}
}
}Paste into mcpServers in the config file. Restart Cursor after saving.
If this MCP is also published on mcpchannel.ai, you can subscribe from Browse and use the gateway config there instead.