Skip to content

Commit c2103e0

Browse files
authored
Merge branch 'main' into atlan-mcp
2 parents 638bc68 + 7a0eef8 commit c2103e0

File tree

4 files changed

+83
-21
lines changed

4 files changed

+83
-21
lines changed

README.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ Official integrations are maintained by companies building production ready MCP
4747
- <img height="12" width="12" src="https://iotdb.apache.org/img/logo.svg" alt="Apache IoTDB Logo" /> **[Apache IoTDB](https://github.com/apache/iotdb-mcp-server)** - MCP Server for [Apache IoTDB](https://github.com/apache/iotdb) database and its tools
4848
- <img height="12" width="12" src="https://apify.com/favicon.ico" alt="Apify Logo" /> **[Apify](https://github.com/apify/actors-mcp-server)** - [Actors MCP Server](https://apify.com/apify/actors-mcp-server): Use 3,000+ pre-built cloud tools to extract data from websites, e-commerce, social media, search engines, maps, and more
4949
- <img height="12" width="12" src="https://2052727.fs1.hubspotusercontent-na1.net/hubfs/2052727/cropped-cropped-apimaticio-favicon-1-32x32.png" alt="APIMatic Logo" /> **[APIMatic MCP](https://github.com/apimatic/apimatic-validator-mcp)** - APIMatic MCP Server is used to validate OpenAPI specifications using [APIMatic](https://www.apimatic.io/). The server processes OpenAPI files and returns validation summaries by leveraging APIMatic’s API.
50+
- <img height="12" width="12" src="https://www.datastax.com/favicon-32x32.png" alt="DataStax logo" /> **[Astra DB](https://github.com/datastax/astra-db-mcp)** - Comprehensive tools for managing collections and documents in a [DataStax Astra DB](https://www.datastax.com/products/datastax-astra) NoSQL database with a full range of operations such as create, update, delete, find, and associated bulk actions.
5051
- <img height="12" width="12" src="https://assets.atlan.com/assets/atlan-a-logo-blue-background.png" alt="Atlan Logo" /> **[Atlan](https://github.com/atlanhq/agent-toolkit/tree/main/modelcontextprotocol)** - The Atlan Model Context Protocol server allows you to interact with the [Atlan](https://www.atlan.com/) services through multiple tools.
5152
- <img height="12" width="12" src="https://resources.audiense.com/hubfs/favicon-1.png" alt="Audiense Logo" /> **[Audiense Insights](https://github.com/AudienseCo/mcp-audiense-insights)** - Marketing insights and audience analysis from [Audiense](https://www.audiense.com/products/audiense-insights) reports, covering demographic, cultural, influencer, and content engagement analysis.
5253
- <img height="12" width="12" src="https://axiom.co/favicon.ico" alt="Axiom Logo" /> **[Axiom](https://github.com/axiomhq/mcp-server-axiom)** - Query and analyze your Axiom logs, traces, and all other event data in natural language
@@ -109,6 +110,7 @@ Official integrations are maintained by companies building production ready MCP
109110
- <img height="12" width="12" src="https://avatars.githubusercontent.com/u/4792552?s=200&v=4" alt="Notion Logo" /> **[Notion](https://github.com/makenotion/notion-mcp-server#readme)** - This project implements an MCP server for the Notion API.
110111
- <img height="12" width="12" src="https://avatars.githubusercontent.com/u/82347605?s=48&v=4" alt="OceanBase Logo" /> **[OceanBase](https://github.com/oceanbase/mcp-oceanbase)** - MCP Server for OceanBase database and its tools
111112
- <img height="12" width="12" src="https://docs.octagonagents.com/logo.svg" alt="Octagon Logo" /> **[Octagon](https://github.com/OctagonAI/octagon-mcp-server)** - Deliver real-time investment research with extensive private and public market data.
113+
- <img height="12" width="12" src="https://maps.olakrutrim.com/favicon.ico" alt="Ola Maps" /> **[OlaMaps](https://pypi.org/project/ola-maps-mcp-server)** - Official Ola Maps MCP Server for services like geocode, directions, place details and many more.
112114
- <img height="12" width="12" src="https://oxylabs.io/favicon.ico" alt="Oxylabs Logo" /> **[Oxylabs](https://github.com/oxylabs/oxylabs-mcp)** - Scrape websites with Oxylabs Web API, supporting dynamic rendering and parsing for structured data extraction.
113115
- <img height="12" width="12" src="https://developer.paddle.com/favicon.svg" alt="Paddle Logo" /> **[Paddle](https://github.com/PaddleHQ/paddle-mcp-server)** - Interact with the Paddle API. Manage product catalog, billing and subscriptions, and reports.
114116
- <img height="12" width="12" src="https://www.paypalobjects.com/webstatic/icon/favicon.ico" alt="PayPal Logo" /> **[PayPal](https://mcp.paypal.com)** - PayPal's official MCP server.
@@ -178,6 +180,7 @@ A growing set of community-developed and maintained servers demonstrates various
178180
- **[CFBD API](https://github.com/lenwood/cfbd-mcp-server)** - An MCP server for the [College Football Data API](https://collegefootballdata.com/).
179181
- **[ChatMCP](https://github.com/AI-QL/chat-mcp)** – An Open Source Cross-platform GUI Desktop application compatible with Linux, macOS, and Windows, enabling seamless interaction with MCP servers across dynamically selectable LLMs, by **[AIQL](https://github.com/AI-QL)**
180182
- **[ChatSum](https://github.com/mcpso/mcp-server-chatsum)** - Query and Summarize chat messages with LLM. by [mcpso](https://mcp.so)
183+
- **[Chess.com](https://github.com/pab1it0/chess-mcp)** - Access Chess.com player data, game records, and other public information through standardized MCP interfaces, allowing AI assistants to search and analyze chess information.
181184
- **[Chroma](https://github.com/privetin/chroma)** - Vector database server for semantic document search and metadata filtering, built on Chroma
182185
- **[ClaudePost](https://github.com/ZilongXue/claude-post)** - ClaudePost enables seamless email management for Gmail, offering secure features like email search, reading, and sending.
183186
- **[Cloudinary](https://github.com/felores/cloudinary-mcp-server)** - Cloudinary Model Context Protocol Server to upload media to Cloudinary and get back the media link and details.
@@ -281,6 +284,7 @@ A growing set of community-developed and maintained servers demonstrates various
281284
- **[mcp-local-rag](https://github.com/nkapila6/mcp-local-rag)** - "primitive" RAG-like web search model context protocol (MCP) server that runs locally using Google's MediaPipe Text Embedder and DuckDuckGo Search. ✨ no APIs required ✨.
282285
- **[mcp-proxy](https://github.com/sparfenyuk/mcp-proxy)** - Connect to MCP servers that run on SSE transport, or expose stdio servers as an SSE server.
283286
- **[mem0-mcp](https://github.com/mem0ai/mem0-mcp)** - A Model Context Protocol server for Mem0, which helps with managing coding preferences.
287+
- **[Membase](https://github.com/unibaseio/membase-mcp)** - Save and query your agent memory in distributed way by Membase.
284288
- **[MSSQL](https://github.com/aekanun2020/mcp-server/)** - MSSQL database integration with configurable access controls and schema inspection
285289
- **[MSSQL](https://github.com/JexinSam/mssql_mcp_server)** (by jexin) - MCP Server for MSSQL database in Python
286290
- **[MSSQL-Python](https://github.com/amornpan/py-mcp-mssql)** (by amornpan) - A read-only Python implementation for MSSQL database access with enhanced security features, configurable access controls, and schema inspection capabilities. Focuses on safe database interaction through Python ecosystem.
@@ -352,6 +356,7 @@ A growing set of community-developed and maintained servers demonstrates various
352356
- **[Shopify](https://github.com/GeLi2001/shopify-mcp)** - MCP to interact with Shopify API including order, product, customers and so on.
353357
- **[Siri Shortcuts](https://github.com/dvcrn/mcp-server-siri-shortcuts)** - MCP to interact with Siri Shortcuts on macOS. Exposes all Shortcuts as MCP tools.
354358
- **[Snowflake](https://github.com/isaacwasserman/mcp-snowflake-server)** - This MCP server enables LLMs to interact with Snowflake databases, allowing for secure and controlled data operations.
359+
- **[SoccerDataAPI](https://github.com/yeonupark/mcp-soccer-data)** - This MCP server provides real-time football match data based on the SoccerDataAPI.
355360
- **[Solana Agent Kit](https://github.com/sendaifun/solana-agent-kit/tree/main/examples/agent-kit-mcp-server)** - This MCP server enables LLMs to interact with the Solana blockchain with help of Solana Agent Kit by SendAI, allowing for 40+ protcool actions and growing
356361
- **[Spotify](https://github.com/varunneal/spotify-mcp)** - This MCP allows an LLM to play and use Spotify.
357362
- **[Starwind UI](https://github.com/Boston343/starwind-ui-mcp/)** - This MCP provides relevant commands, documentation, and other information to allow LLMs to take full advantage of Starwind UI's open source Astro components.
@@ -364,6 +369,7 @@ A growing set of community-developed and maintained servers demonstrates various
364369
- **[Terminal-Control](https://github.com/GongRzhe/terminal-controller-mcp)** - A MCP server that enables secure terminal command execution, directory navigation, and file system operations through a standardized interface.
365370
- **[TFT-Match-Analyzer](https://github.com/GeLi2001/tft-mcp-server)** - MCP server for teamfight tactics match history & match details fetching, providing user the detailed context for every match.
366371
- **[Ticketmaster](https://github.com/delorenj/mcp-server-ticketmaster)** - Search for events, venues, and attractions through the Ticketmaster Discovery API
372+
- **[TickTick](https://github.com/alexarevalo9/ticktick-mcp-server)** - A Model Context Protocol (MCP) server designed to integrate with the TickTick task management platform, enabling intelligent context-aware task operations and automation.
367373
- **[Todoist](https://github.com/abhiz123/todoist-mcp-server)** - Interact with Todoist to manage your tasks.
368374
- **[Typesense](https://github.com/suhail-ak-s/mcp-typesense-server)** - A Model Context Protocol (MCP) server implementation that provides AI models with access to Typesense search capabilities. This server enables LLMs to discover, search, and analyze data stored in Typesense collections.
369375
- **[Travel Planner](https://github.com/GongRzhe/TRAVEL-PLANNER-MCP-Server)** - Travel planning and itinerary management server integrating with Google Maps API for location search, place details, and route calculations.
@@ -421,12 +427,14 @@ Additional resources on MCP.
421427
- **[Discord Server](https://glama.ai/mcp/discord)** – A community discord server dedicated to MCP by **[Frank Fiegel](https://github.com/punkpeye)**
422428
- **[Discord Server (ModelContextProtocol)](https://discord.gg/jHEGxQu2a5)** – Connect with developers, share insights, and collaborate on projects in an active Discord community dedicated to the Model Context Protocol by **[Alex Andru](https://github.com/QuantGeekDev)**
423429

430+
- **[MCP Router](https://mcp-router.net)** – Free Windows and macOS app that simplifies MCP management while providing seamless app authentication and powerful log visualization by **[MCP Router](https://github.com/mcp-router/mcp-router)**
424431
- **[MCP Badges](https://github.com/mcpx-dev/mcp-badges)** – Quickly highlight your MCP project with clear, eye-catching badges, by **[Ironben](https://github.com/nanbingxyz)**
425432
- **[MCP Servers Hub](https://github.com/apappascs/mcp-servers-hub)** (**[website](https://mcp-servers-hub-website.pages.dev/)**) - A curated list of MCP servers by **[apappascs](https://github.com/apappascs)**
426433
- **[MCP X Community](https://x.com/i/communities/1861891349609603310)** – A X community for MCP by **[Xiaoyi](https://x.com/chxy)**
427434
- **[mcp-cli](https://github.com/wong2/mcp-cli)** - A CLI inspector for the Model Context Protocol by **[wong2](https://github.com/wong2)**
428435
- **[mcp-get](https://mcp-get.com)** - Command line tool for installing and managing MCP servers by **[Michael Latman](https://github.com/michaellatman)**
429436
- **[mcp-guardian](https://github.com/eqtylab/mcp-guardian)** - GUI application + tools for proxying / managing control of MCP servers by **[EQTY Lab](https://eqtylab.io)**
437+
- **[mcpm](https://github.com/pathintegral-institute/mcpm.sh)** ([website](https://mcpm.sh)) - MCP Manager (MCPM) is a Homebrew-like service for managing Model Context Protocol (MCP) servers across clients by **[Pathintegral](https://github.com/pathintegral-institute)**
430438
- **[mcp-manager](https://github.com/zueai/mcp-manager)** - Simple Web UI to install and manage MCP servers for Claude Desktop by **[Zue](https://github.com/zueai)**
431439
- **[MCPHub](https://github.com/Jeamee/MCPHub-Desktop)** – An Open Source MacOS & Windows GUI Desktop app for discovering, installing and managing MCP servers by **[Jeamee](https://github.com/jeamee)**
432440
- **[mcp.natoma.id](https://mcp.natoma.id)** - A Hosted MCP Platform to discover, install, manage and deploy MCP servers by **[Natoma Labs](https://www.natoma.id)**

src/everything/everything.ts

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -114,16 +114,17 @@ export const createServer = () => {
114114

115115
let subscriptions: Set<string> = new Set();
116116
let subsUpdateInterval: NodeJS.Timeout | undefined;
117-
// Set up update interval for subscribed resources
117+
let stdErrUpdateInterval: NodeJS.Timeout | undefined;
118118

119+
// Set up update interval for subscribed resources
119120
subsUpdateInterval = setInterval(() => {
120121
for (const uri of subscriptions) {
121122
server.notification({
122123
method: "notifications/resources/updated",
123124
params: { uri },
124125
});
125126
}
126-
}, 5000);
127+
}, 10000);
127128

128129
let logLevel: LoggingLevel = "debug";
129130
let logsUpdateInterval: NodeJS.Timeout | undefined;
@@ -152,7 +153,21 @@ export const createServer = () => {
152153
};
153154
if (!isMessageIgnored(message.params.level as LoggingLevel))
154155
server.notification(message);
155-
}, 15000);
156+
}, 20000);
157+
158+
159+
// Set up update interval for stderr messages
160+
stdErrUpdateInterval = setInterval(() => {
161+
const shortTimestamp = new Date().toLocaleTimeString([], {
162+
hour: '2-digit',
163+
minute: '2-digit',
164+
second: '2-digit'
165+
});
166+
server.notification({
167+
method: "notifications/stderr",
168+
params: { content: `${shortTimestamp}: A stderr message` },
169+
});
170+
}, 30000);
156171

157172
// Helper method to request sampling from client
158173
const requestSampling = async (
@@ -676,6 +691,7 @@ export const createServer = () => {
676691
const cleanup = async () => {
677692
if (subsUpdateInterval) clearInterval(subsUpdateInterval);
678693
if (logsUpdateInterval) clearInterval(logsUpdateInterval);
694+
if (stdErrUpdateInterval) clearInterval(stdErrUpdateInterval);
679695
};
680696

681697
return { server, cleanup };

src/slack/README.md

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ MCP Server for the Slack API, enabling Claude to interact with Slack workspaces.
55
## Tools
66

77
1. `slack_list_channels`
8-
- List public channels in the workspace
8+
- List public or pre-defined channels in the workspace
99
- Optional inputs:
1010
- `limit` (number, default: 100, max: 200): Maximum number of channels to return
1111
- `cursor` (string): Pagination cursor for next page
@@ -102,7 +102,8 @@ Add the following to your `claude_desktop_config.json`:
102102
],
103103
"env": {
104104
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
105-
"SLACK_TEAM_ID": "T01234567"
105+
"SLACK_TEAM_ID": "T01234567",
106+
"SLACK_CHANNEL_IDS": "C01234567, C76543210"
106107
}
107108
}
108109
}
@@ -124,17 +125,26 @@ Add the following to your `claude_desktop_config.json`:
124125
"SLACK_BOT_TOKEN",
125126
"-e",
126127
"SLACK_TEAM_ID",
128+
"-e",
129+
"SLACK_CHANNEL_IDS",
127130
"mcp/slack"
128131
],
129132
"env": {
130133
"SLACK_BOT_TOKEN": "xoxb-your-bot-token",
131-
"SLACK_TEAM_ID": "T01234567"
134+
"SLACK_TEAM_ID": "T01234567",
135+
"SLACK_CHANNEL_IDS": "C01234567, C76543210"
132136
}
133137
}
134138
}
135139
}
136140
```
137141

142+
### Environment Variables
143+
144+
1. `SLACK_BOT_TOKEN`: Required. The Bot User OAuth Token starting with `xoxb-`.
145+
2. `SLACK_TEAM_ID`: Required. Your Slack workspace ID starting with `T`.
146+
3. `SLACK_CHANNEL_IDS`: Optional. Comma-separated list of channel IDs to limit channel access (e.g., "C01234567, C76543210"). If not set, all public channels will be listed.
147+
138148
### Troubleshooting
139149

140150
If you encounter permission errors, verify that:

src/slack/index.ts

Lines changed: 43 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ interface GetUserProfileArgs {
5353
// Tool definitions
5454
const listChannelsTool: Tool = {
5555
name: "slack_list_channels",
56-
description: "List public channels in the workspace with pagination",
56+
description: "List public or pre-defined channels in the workspace with pagination",
5757
inputSchema: {
5858
type: "object",
5959
properties: {
@@ -221,23 +221,51 @@ class SlackClient {
221221
}
222222

223223
async getChannels(limit: number = 100, cursor?: string): Promise<any> {
224-
const params = new URLSearchParams({
225-
types: "public_channel",
226-
exclude_archived: "true",
227-
limit: Math.min(limit, 200).toString(),
228-
team_id: process.env.SLACK_TEAM_ID!,
229-
});
230-
231-
if (cursor) {
232-
params.append("cursor", cursor);
224+
const predefinedChannelIds = process.env.SLACK_CHANNEL_IDS;
225+
if (!predefinedChannelIds) {
226+
const params = new URLSearchParams({
227+
types: "public_channel",
228+
exclude_archived: "true",
229+
limit: Math.min(limit, 200).toString(),
230+
team_id: process.env.SLACK_TEAM_ID!,
231+
});
232+
233+
if (cursor) {
234+
params.append("cursor", cursor);
235+
}
236+
237+
const response = await fetch(
238+
`https://slack.com/api/conversations.list?${params}`,
239+
{ headers: this.botHeaders },
240+
);
241+
242+
return response.json();
233243
}
234244

235-
const response = await fetch(
236-
`https://slack.com/api/conversations.list?${params}`,
237-
{ headers: this.botHeaders },
238-
);
245+
const predefinedChannelIdsArray = predefinedChannelIds.split(",").map((id: string) => id.trim());
246+
const channels = [];
239247

240-
return response.json();
248+
for (const channelId of predefinedChannelIdsArray) {
249+
const params = new URLSearchParams({
250+
channel: channelId,
251+
});
252+
253+
const response = await fetch(
254+
`https://slack.com/api/conversations.info?${params}`,
255+
{ headers: this.botHeaders }
256+
);
257+
const data = await response.json();
258+
259+
if (data.ok && data.channel && !data.channel.is_archived) {
260+
channels.push(data.channel);
261+
}
262+
}
263+
264+
return {
265+
ok: true,
266+
channels: channels,
267+
response_metadata: { next_cursor: "" },
268+
};
241269
}
242270

243271
async postMessage(channel_id: string, text: string): Promise<any> {

0 commit comments

Comments
 (0)