Thanks to visit codestin.com
Credit goes to github.com

Skip to content

This read-only MCP Server allows you to connect to Microsoft Teams data from Claude Desktop through CData JDBC Drivers. Free (beta) read/write servers available at https://www.cdata.com/solutions/mcp

License

Notifications You must be signed in to change notification settings

CDataSoftware/microsoft-teams-mcp-server-by-cdata

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

microsoft-teams-mcp-server-by-cdata

CData's Model Context Protocol (MCP) Server for Microsoft Teams

❗ This project builds a read-only MCP server. For full read, write, update, delete, and action capabilities and a simplified setup, check out our free CData MCP Server for Microsoft Teams (beta).

Purpose

We created this read-only MCP Server to allow LLMs (like Claude Desktop) to query live data Microsoft Teams supported by the CData JDBC Driver for Microsoft Teams.

CData JDBC Driver connects to Microsoft Teams by exposing them as relational SQL models.

This server wraps that driver and makes Microsoft Teams data available through a simple MCP interface, so LLMs can retrieve live information by asking natural language questions — no SQL required.

Setup Guide

  1. Clone the repository:
    git clone https://github.com/cdatasoftware/microsoft-teams-mcp-server-by-cdata.git
    cd microsoft-teams-mcp-server-by-cdata
  2. Build the server:
    mvn clean install
    This creates the JAR file: CDataMCP-jar-with-dependencies.jar
  3. Download and install the CData JDBC Driver for {source}: https://www.cdata.com/drivers/msteams/download/jdbc
  4. License the CData JDBC Driver:
    • Navigate to the lib folder in the installation directory, typically:
      • (Windows) C:\Program Files\CData\CData JDBC Driver for Microsoft Teams\
      • (Mac/Linux) /Applications/CData JDBC Driver for Microsoft Teams/
    • Run the command java -jar cdata.jdbc.msteams.jar --license
    • Enter your name, email, and "TRIAL" (or your license key).
  5. Configure your connection to the data source (Salesforce as an example):
    • Run the command java -jar cdata.jdbc.msteams.jar to open the Connection String utility.

    • Configure the connection string and click "Test Connection"

      Note: If the data sources uses OAuth, you will need to authenticate in your browser.

    • Once successful, copy the connection string for use later.

  6. Create a .prp file for your JDBC connection (e.g. microsoft-teams.prp) using the following properties and format:
    • Prefix - a prefix to be used for the tools exposed
    • ServerName - a name for your server
    • ServerVersion - a version for your server
    • DriverPath - the full path to the JAR file for your JDBC driver
    • DriverClass - the name of the JDBC Driver Class (e.g. cdata.jdbc.msteams.MSTeamsDriver)
    • JdbcUrl - the JDBC connection string to use with the CData JDBC Driver to connect to your data (copied from above)
    • Tables - leave blank to access all data, otherwise you can explicitly declare the tables you wish to create access for
      Prefix=msteams
      ServerName=CDataMSTeams
      ServerVersion=1.0
      DriverPath=PATH\TO\cdata.jdbc.msteams.jar
      DriverClass=cdata.jdbc.msteams.MSTeamsDriver
      JdbcUrl=jdbc:msteams:InitiateOAuth=GETANDREFRESH;
      Tables=

Using the Server with Claude Desktop

  1. Create the config file for Claude Desktop ( claude_desktop_config.json) to add the new MCP server, using the format below. If the file already exists, add the entry to the mcpServers in the config file.

    Windows

    {
      "mcpServers": {
        "{classname_dash}": {
          "command": "PATH\\TO\\java.exe",
          "args": [
            "-jar",
            "PATH\\TO\\CDataMCP-jar-with-dependencies.jar",
            "PATH\\TO\\microsoft-teams.prp"
          ]
        },
        ...
      }
    }

    Linux/Mac

    {
      "mcpServers": {
        "{classname_dash}": {
          "command": "/PATH/TO/java",
          "args": [
            "-jar",
            "/PATH/TO/CDataMCP-jar-with-dependencies.jar",
            "/PATH/TO/microsoft-teams.prp"
          ]
        },
        ...
      }
    }

    If needed, copy the config file to the appropriate directory (Claude Desktop as the example). Windows

    cp C:\PATH\TO\claude_desktop_config.json %APPDATA%\Claude\claude_desktop_config.json

    Linux/Mac

    cp /PATH/TO/claude_desktop_config.json /Users/{user}/Library/Application\ Support/Claude/claude_desktop_config.json'
  2. Run or refresh your client (Claude Desktop).

Note: You may need to fully exit or quit your Claude Desktop client and re-open it for the MCP Servers to appear.

Running the Server

  1. Run the follow the command to run the MCP Server on its own
    java -jar /PATH/TO/CDataMCP-jar-with-dependencies.jar /PATH/TO/Salesforce.prp

Note: The server uses stdio so can only be used with clients that run on the same machine as the server.

Usage Details

Once the MCP Server is configured, the AI client will be able to use the built-in tools to read, write, update, and delete the underlying data. In general, you do not need to call the tools explicitly. Simply ask the client to answer questions about the underlying data system. For example:

  • "What is the correlation between my closed won opportunities and the account industry?"
  • "How many open tickets do I have in the SUPPORT project?"
  • "Can you tell me what calendar events I have today?"

The list of tools available and their descriptions follow:

Tools & Descriptions

In the definitions below, {servername} refers to the name of the MCP Server in the config file (e.g. {classname_dash} above).

  • {servername}_get_tables - Retrieves a list of tables available in the data source. Use the {servername}_get_columns tool to list available columns on a table. The output of the tool will be returned in CSV format, with the first line containing column headers.
  • {servername}_get_columns - Retrieves a list of columns for a table. Use the {servername}_get_tables tool to get a list of available tables. The output of the tool will be returned in CSV format, with the first line containing column headers.
  • {servername}_run_query - Execute a SQL SELECT query

Troubleshooting

  1. If you cannot see your CData MCP Server in Claude Desktop, be sure that you have fully quit Claude Desktop (Windows: use the Task Manager, Mac: use the Activity Monitor)
  2. If Claude Desktop is unable to retrieve data, be sure that you have configured your connection properly. Use the Connection String builder to create the connection string (see above) and copy the connection string into the property (.prp) file.
  3. If you are having trouble connecting to your data source, contact the CData Support Team.
  4. If you are having trouble using the MCP server, or have any other feedback, join the CData Community.

License

This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.

All Supported Sources

AccessAct CRMAct-OnActive Directory
ActiveCampaignAcumaticaAdobe AnalyticsAdobe Commerce
ADPAirtableAlloyDBAmazon Athena
Amazon DynamoDBAmazon MarketplaceAmazon S3Asana
Authorize.NetAvalara AvaTaxAvroAzure Active Directory
Azure Analysis ServicesAzure Data CatalogAzure Data Lake StorageAzure DevOps
Azure SynapseAzure TableBasecampBigCommerce
BigQueryBing AdsBing SearchBitbucket
Blackbaud FE NXTBoxBullhorn CRMCassandra
CertiniaCloudantCockroachDBConfluence
Cosmos DBCouchbaseCouchDBCSV
CventDatabricksDB2DocuSign
DropboxDynamics 365Dynamics 365 Business CentralDynamics CRM
Dynamics GPDynamics NAVeBayeBay Analytics
ElasticsearchEmailEnterpriseDBEpicor Kinetic
Exact OnlineExcelExcel OnlineFacebook
Facebook AdsFHIRFreshdeskFTP
GitHubGmailGoogle Ad ManagerGoogle Ads
Google AnalyticsGoogle CalendarGoogle Campaign Manager 360Google Cloud Storage
Google ContactsGoogle Data CatalogGoogle DirectoryGoogle Drive
Google SearchGoogle SheetsGoogle SpannerGraphQL
GreenhouseGreenplumHarperDBHBase
HCL DominoHDFSHighriseHive
HubDBHubSpotIBM Cloud Data EngineIBM Cloud Object Storage
IBM InformixImpalaInstagramJDBC-ODBC Bridge
JiraJira AssetsJira Service ManagementJSON
KafkaKintoneLDAPLinkedIn
LinkedIn AdsMailChimpMariaDBMarketo
MarkLogicMicrosoft DataverseMicrosoft Entra IDMicrosoft Exchange
Microsoft OneDriveMicrosoft PlannerMicrosoft ProjectMicrosoft Teams
Monday.comMongoDBMYOB AccountRightMySQL
nCinoNeo4JNetSuiteOData
OdooOffice 365OktaOneNote
OracleOracle EloquaOracle Financials CloudOracle HCM Cloud
Oracle SalesOracle SCMOracle Service CloudOutreach.io
ParquetPaylocityPayPalPhoenix
PingOnePinterestPipedrivePostgreSQL
Power BI XMLAPrestoQuickbaseQuickBooks
QuickBooks OnlineQuickBooks TimeRaisers Edge NXTReckon
Reckon Accounts HostedRedisRedshiftREST
RSSSage 200Sage 300Sage 50 UK
Sage Cloud AccountingSage IntacctSalesforceSalesforce Data Cloud
Salesforce Financial Service CloudSalesforce MarketingSalesforce Marketing Cloud Account EngagementSalesforce Pardot
SalesloftSAPSAP Ariba ProcurementSAP Ariba Source
SAP Business OneSAP BusinessObjects BISAP ByDesignSAP Concur
SAP FieldglassSAP HANASAP HANA XS AdvancedSAP Hybris C4C
SAP Netweaver GatewaySAP SuccessFactorsSAS Data SetsSAS xpt
SendGridServiceNowSFTPSharePoint
SharePoint Excel ServicesShipStationShopifySingleStore
SlackSmartsheetSnapchat AdsSnowflake
SparkSplunkSQL Analysis ServicesSQL Server
SquareStripeSugar CRMSuiteCRM
SurveyMonkeySybaseSybase IQTableau CRM Analytics
TallyTaxJarTeradataTier1
TigerGraphTrelloTrinoTwilio
TwitterTwitter AdsVeeva CRMVeeva Vault
Wave FinancialWooCommerceWordPressWorkday
xBaseXeroXMLYouTube Analytics
ZendeskZoho BooksZoho CreatorZoho CRM
Zoho InventoryZoho ProjectsZuora... Dozens More

About

This read-only MCP Server allows you to connect to Microsoft Teams data from Claude Desktop through CData JDBC Drivers. Free (beta) read/write servers available at https://www.cdata.com/solutions/mcp

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages