NN

nuxeo/nuxeo-mcp-server

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

5 stars 3 forks 质量 63 趋势 33

Nuxeo MCP Server

概览

A Model Context Protocol (MCP) server for interacting with a Nuxeo Content Repository Server. This server provides tools, resources, and prompt templates for AI assistants to interact with Nuxeo content repositories. - 🔄 Connect to a Nuxeo Content Repository Server - 🛠️ MCP Tools for common Nuxeo operations (query, retrieve, create, update, delete documents) - 🔍 Document search with NXQL, or by meaning on servers with vector search, returning a normalized result envelope - ⚡ Query DSL search - raw Elasticsearch/OpenSearch request bodies for aggregations, highlighting and sorting - 🔐 Audit log search - Query DSL against the audit index (admin only) - 🔒 OAuth2 authentication - browser-based, with token storage - 📚 MCP Resources for accessing Nuxeo content - 🧩 MCP Resource Templates for dynamic content access - 📖 Guide resources - NXQL syntax, and the indexed field names for both Query DSL tools - 🐳 Docker support for testing with a Nuxeo server - 🧪 Comprehensive test suite...

README

以下为原文 README 节选,完整内容请查看原文。

Nuxeo MCP Server

A Model Context Protocol (MCP) server for interacting with a Nuxeo Content Repository Server. This server provides tools, resources, and prompt templates for AI assistants to interact with Nuxeo content repositories.

Features

  • 🔄 Connect to a Nuxeo Content Repository Server
  • 🛠️ MCP Tools for common Nuxeo operations (query, retrieve, create, update, delete documents)
  • 🔍 Document search with NXQL, or by meaning on servers with vector search, returning a normalized result envelope
  • ⚡ Query DSL search - raw Elasticsearch/OpenSearch request bodies for aggregations, highlighting and sorting
  • 🔐 Audit log search - Query DSL against the audit index (admin only)
  • 🔒 OAuth2 authentication - browser-based, with token storage
  • 📚 MCP Resources for accessing Nuxeo content
  • 🧩 MCP Resource Templates for dynamic content access
  • 📖 Guide resources - NXQL syntax, and the indexed field names for both Query DSL tools
  • 🐳 Docker support for testing with a Nuxeo server
  • 🧪 Comprehensive test suite with pytest

Requirements

  • Python 3.11+
  • Nuxeo Server (can be run via Docker)
  • Docker (for testing)

Account Privileges

The MCP server connects to Nuxeo using the credentials you provide through configuration — the NUXEO_USERNAME/NUXEO_PASSWORD environment variables, or OAuth2 (see below). There is no default: with Basic authentication the server refuses to start unless both NUXEO_USERNAME and NUXEO_PASSWORD are set. Whichever account is configured is the identity Nuxeo uses to enforce ACLs — the server does not assume or force an administrator. Most tools work with any authenticated Nuxeo user; administrator privileges are not required for day-to-day operations.

Privilege Tools
Any authenticated user nuxeo_get_repository_info, nuxeo_list_children, nuxeo_search_documents, nuxeo_search_documents_with_query_dsl, nuxeo_get_document, nuxeo_create_document, nuxeo_update_metadata, nuxeo_delete_document, nuxeo_move_document, nuxeo_list_document_types, nuxeo_get_metadata_schema, nuxeo_list_operations
Administrator only nuxeo_search_audit_with_query_dsl — the Nuxeo ES passthrough enforces this server-side and returns HTTP 403 for non-admins, which the MCP tool surfaces as a clear permission error
Depends on operation nuxeo_execute_operation — privilege is determined by the specific Nuxeo Automation operation invoked; enforced server-side

Using a least-privilege account (a regular Nuxeo user) is recommended for production deployments.

在 GitHub 查看完整 README

安装

docker run -p 8181:8181 --name nuxeo-mcp \
新手?先看 mcpskill.org 教程 →