{"id":"cdatasoftware-microsoft-exchange-mcp-server-by-cdata","name":"microsoft-exchange-mcp-server-by-cdata","homepage":null,"repo_url":"https://github.com/CDataSoftware/microsoft-exchange-mcp-server-by-cdata","category":"api-gateway","subcategories":[],"tags":["mcp","microsoft-exchange","cdata","jdbc","data-integration","claude-desktop","stdio","read-only"],"what_it_does":"Provides a locally hosted, read-only MCP server that wraps the CData JDBC Driver for Microsoft Exchange. It exposes Exchange data as relational SQL tables via MCP tools (get_tables, get_columns, run_query) using stdio for client communication (e.g., Claude Desktop).","use_cases":["Query live Microsoft Exchange data from an AI client without writing SQL","Explore available Exchange tables and columns through MCP tools","Run read-only SQL SELECT queries over Exchange-exposed tables to answer questions or generate reports"],"not_for":["Environments needing network-accessible MCP endpoints (it uses stdio/local process communication)","Applications requiring full CRUD write/update/delete via MCP (this project is explicitly read-only)","Use cases that require an OpenAPI/REST-style HTTP interface, webhooks, or SaaS-style API consumption"],"best_when":"You want an on-machine MCP integration for Exchange data exploration and read-only querying using existing CData JDBC connectivity/authentication.","avoid_when":"You require strong operational controls for large/long-running queries (no rate-limit/pagination guidance shown) or you need audited, structured error handling beyond what the underlying driver/tool returns.","alternatives":["Use CData’s managed MCP platform (CData Connect AI) for remote/managed access","Use the CData JDBC driver directly from your own application with JDBC","Use other Microsoft Exchange APIs (e.g., Microsoft Graph) with an MCP layer built in-house"],"af_score":40.8,"security_score":38.2,"reliability_score":27.5,"package_type":"mcp_server","discovery_source":["github"],"priority":"low","status":"evaluated","version_evaluated":null,"last_evaluated":"2026-04-04T19:34:36.783915+00:00","interface":{"has_rest_api":false,"has_graphql":false,"has_grpc":false,"has_mcp_server":true,"mcp_server_url":null,"has_sdk":false,"sdk_languages":[],"openapi_spec_url":null,"webhooks":false},"auth":{"methods":["CData JDBC Driver authentication mechanisms (e.g., OAuth if required by the JDBC driver; configured via JdbcUrl / connection string)","Local license activation for the CData JDBC driver (java -jar cdata.jdbc.exchange.jar --license)"],"oauth":true,"scopes":false,"notes":"README indicates OAuth may be needed depending on the Exchange/JDBC configuration; scopes are not described at the MCP/server level. Authentication details appear to be delegated to the underlying CData JDBC driver via the JDBC URL/connection settings and the local .prp configuration."},"pricing":{"model":null,"free_tier_exists":false,"free_tier_limits":null,"paid_tiers":[],"requires_credit_card":false,"estimated_workload_costs":null,"notes":"Pricing is not specified for the MCP server repo; it depends on the CData JDBC Driver licensing and (optionally) any managed MCP platform mentioned (CData Connect AI)."},"requirements":{"requires_signup":false,"requires_credit_card":false,"domain_verification":false,"data_residency":[],"compliance":[],"min_contract":null},"agent_readiness":{"af_score":40.8,"security_score":38.2,"reliability_score":27.5,"mcp_server_quality":60.0,"documentation_accuracy":70.0,"error_message_quality":0.0,"error_message_notes":null,"auth_complexity":45.0,"rate_limit_clarity":0.0,"tls_enforcement":30.0,"auth_strength":55.0,"scope_granularity":30.0,"dependency_hygiene":30.0,"secret_handling":40.0,"security_notes":"Security posture is largely inherited from the CData JDBC driver and the way credentials/JdbcUrl are stored in the .prp file. The README does not describe transport/security controls at the MCP layer (stdio/local process). It does mention OAuth may be needed, but provides no scope minimization or secret-handling guidance. Query execution is delegated to SQL (SELECT) over JDBC; agents should treat returned data as sensitive and avoid overly broad queries. Dependency/version/security hygiene is not verifiable from the provided content.","uptime_documented":0.0,"version_stability":40.0,"breaking_changes_history":50.0,"error_recovery":20.0,"idempotency_support":"false","idempotency_notes":null,"pagination_style":"none","retry_guidance_documented":false,"known_agent_gotchas":["Server runs over stdio, so it must be co-located with the MCP client process (not usable as a remote MCP service as described).","README claims tools for read-only access, but it also generically says 'read, write, update, and delete'—agents should rely on the explicit project description (read-only) to avoid unsafe assumptions.","No rate-limit, timeout, or result-size guidance is provided; agents may need to constrain queries to avoid excessive payloads."]}}