Workspace Server
БесплатноНе проверенEnables AI agents to query MongoDB databases and project management REST APIs through a universal MCP interface, providing read-time access to workspace data.
Описание
Enables AI agents to query MongoDB databases and project management REST APIs through a universal MCP interface, providing read-time access to workspace data.
README
An MCP (Model Context Protocol) server that gives AI agents read-time access to workspace databases and project management APIs.
Built with FastMCP, this service acts as a universal data gateway — allowing any MCP-compatible agent (Claude Desktop, Copilot, custom orchestrators) to introspect, query, and correlate business data without writing integration code.
Architecture & Stack Rationale
Why MCP + FastMCP?
Model Context Protocol is the emerging standard for connecting LLMs to external tools and data. Instead of building one-off function calls or plugin APIs per agent, MCP provides a single, typed interface that any compliant LLM can discover and invoke at runtime.
- FastMCP was chosen over raw
mcpSDK because it eliminates boilerplate: tools are plain Python functions with a decorator — no JSON-RPC wire protocol handling, no manual capability negotiation. - The SSE (Server-Sent Events) transport allows long-lived connections from agents running in browsers, desktop apps, or cloud functions, and is trivially load-balanced behind Knative or any HTTP ingress.
┌──────────────────────┐ MCP/SSE ┌──────────────────────────────┐
│ AI Agent │ ◄──────────────► │ Workspace MCP Server │
│ (Claude, Copilot…) │ │ ├─ Database Tools (Mongo) │
└──────────────────────┘ │ └─ API Tools (REST) │
└──────────────────────────────┘
Why MongoDB for Workspace Data?
Workspace applications produce semi-structured, schema-flexible data — project documents, task metadata, user activity logs, and configuration records. MongoDB's document model:
- Handles polymorphic schemas without migrations (different document types emit different fields).
- Provides native aggregation pipelines for reporting and analytics (counts, grouping, windowed stats).
- Supports text indexes for full-text search across notes, descriptions, and logs.
- The
analyze_databasetool gives AI agents runtime introspection — they discover collections, field types, and indexes on their own, without hardcoded schemas.
Why a Dedicated Project Management API Adapter?
The project management REST API tracks tickets, tasks, projects, and users. Rather than exposing raw HTTP to the LLM (security risk + prompt overhead), the server wraps the API with:
- Managed authentication — supports both Bearer token and Basic Auth; credentials never leak into the agent conversation.
- Structured error boundaries — non-2xx responses are captured and returned as strings, never as raw stack traces.
- Metadata tools (
get_metadata,get_custom_fields) that let the agent self-discover valid enum values and custom field IDs — no hardcoding, no "I don't know what statuses exist."
Why Knative + Kubernetes for Deployment?
Production workloads demand zero-downtime updates and automatic scaling:
| Requirement | Solution |
|---|---|
| Scale to zero when idle | Knative Serving auto-scales down to 0 replicas |
| Per-environment isolation | Kubernetes Namespace separation |
| Secret rotation | Pre-deployment kubectl create secret from CI/CD |
| Canary rollouts | Knative revision traffic splitting |
The deploy_kn.sh script handles the full lifecycle: Docker build, image push to private registry, Kubernetes Secret upsert, and Knative Service apply — all in a single idempotent command.
Tools Overview
Database (MongoDB)
| Tool | Purpose |
|---|---|
analyze_database |
Introspect databases, collections, indexes, and inferred schemas |
get_sample_documents |
Peek at documents from any collection |
get_distinct_values |
Distinct values and frequency for a field |
query_documents |
Filtered queries with projection and sort |
aggregate_documents |
MongoDB aggregation pipelines |
count_documents |
Document count matching a filter |
search_documents |
Full-text search across documents |
Project Management API (REST)
| Tool | Purpose |
|---|---|
check_api_connection |
Verify API connectivity and return caller identity |
list_projects |
List all accessible projects |
search_items |
Query items by structured condition |
get_item_detail |
Full detail — linked items, references, comments |
get_metadata |
Discover valid priorities, statuses, categories, projects |
find_user |
Resolve users by name or email |
get_custom_fields |
List custom fields with API IDs |
Quick Start
pip install -r requirements.txt
cp .env.example .env
# Edit WORKSPACE_MONGO_URI, API_TOKEN, API_SITE_ID
python server.py
Server starts on http://0.0.0.0:8080 with SSE transport. Connect any MCP client to http://host:8080/sse.
Environment Variables
| Variable | Description |
|---|---|
WORKSPACE_MONGO_URI |
MongoDB connection string |
API_TOKEN |
Project management API token |
API_EMAIL |
Email for Basic Auth (omit for Bearer token) |
API_BASE_URL |
API instance URL |
API_SITE_ID |
Site ID (preferred over auto-resolve) |
SERVER_PORT |
HTTP server port (default 8080) |
Docker
docker build -t workspace-mcp .
docker run -p 8080:8080 --env-file .env workspace-mcp
Deployment
export AGENT_NAME=workspace-mcp
export DEPLOYMENT_CONTEXT=workspace
bash deploy.sh
Requires: Docker, kubectl (with Knative Serving installed), access to a container registry, and a .env.workspace file with deployment-specific variables (registry, namespace, pull secret, credentials).
Установка Workspace Server
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/sudenlee/workspace-mcpFAQ
Workspace Server MCP бесплатный?
Да, Workspace Server MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для Workspace Server?
Нет, Workspace Server работает без API-ключей и переменных окружения.
Workspace Server — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить Workspace Server в Claude Desktop, Claude Code или Cursor?
Открой Workspace Server на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Fetch
Web content fetching and conversion for efficient LLM usage.
AWS KB Retrieval
Retrieval from AWS Knowledge Base using Bedrock Agent Runtime.
автор: modelcontextprotocolSpring AI MCP Server
Provides auto-configuration for setting up an MCP server in Spring Boot applications.
llm-analysis-assistant
A very streamlined mcp client that supports calling and monitoring stdio/sse/streamableHttp, and can also view request responses through the /logs page. It also
автор: xuzexin-hzCompare Workspace Server with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории ai
