Borrowing it
Nothing to install: this file belongs to Jahia/jahia-mcp-community-server. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/Jahia/jahia-mcp-community-server/main/CLAUDE.mdgit clone --depth 1 https://github.com/Jahia/jahia-mcp-community-serverWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/instructions/jahia/jahia-mcp-community-server/claude-md)<a href="https://agentmods.dev/instructions/jahia/jahia-mcp-community-server/claude-md"><img src="https://agentmods.dev/badge/instructions/jahia/jahia-mcp-community-server/claude-md/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/instructions/jahia/jahia-mcp-community-server/claude-md"><img src="https://agentmods.dev/badge/instructions/jahia/jahia-mcp-community-server/claude-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.06180 | $0.06180 |
| Opus 5.5 | $0.02472 | $0.02472 |
| Sonnet 5.5 | $0.01236 | $0.01236 |
| Haiku 4.5 | $0.00618 | $0.00618 |
Grade A, and why
jahia-mcp-community-server CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 340 lines — stays where its author put it; the contents beside it link to each section on GitHub.
CLAUDE.md — Jahia MCP Community Server
What this module does
An extension of Jahia's mcp-server module (0.5.x). This module is version 2.x. It contributes four MCP tools to the mcp-server
endpoint (/modules/mcp) through its public tool SPI: community.graphql.execute,
community.graphql.introspect, community.skill.list and community.skill.get. The module owns no
endpoint and no MCP SDK: mcp-server handles transport, authentication, JSON-RPC and the tool catalog.
Every community tool is administrator-only. community.graphql.execute is additionally gated by a
whitelist that is read-only by default (queries allowed except under admin, mutations and subscriptions
refused). Read-only is not non-sensitive: every other query returns what the administrator can read
(JCR-stored settings such as the mail server configuration, user data) to the AI client, so the docs
recommend an explicit allow list in production. Skills (Markdown instruction documents) are stored in JCR.
Source layout
src/main/java/org/jahia/community/mcp/
McpSkillService.java # DS component (root package): JCR CRUD and seeding of mcp:skill nodes
access/
CommunityMcpAccess.java # Administrator gate (JCR 'admin' on /) and bound-caller lookup
GraphQLWhitelistGate.java # Operation-qualified whitelist gate (graphql-java parser, AST walk)
config/
McpConfigService.java # DS component, configurationPolicy=REQUIRE, metatype (ocd Config)
WhitelistEntries.java # Entry syntax: query:<path> / mutation:<path>; legacy = query-only
WhitelistSnapshot.java # Immutable snapshot published atomically by McpConfigService
tools/
AbstractCommunityTool.java # Template: final execute() = audit(adminGate(doExecute))
AbstractSkillTool.java # Read-only skill tools, tags reads-ugc
GraphQLExecuteTool.java # community.graphql.execute (DESTRUCTIVE)
GraphQLIntrospectTool.java # community.graphql.introspect (READ_ONLY)
SkillListTool.java # community.skill.list (READ_ONLY)
SkillGetTool.java # community.skill.get (READ_ONLY)
InternalGraphQLClient.java # In-process call of OsgiGraphQLHttpServlet, bounded response
ToolSupport.java # Schema loading, audit recording, hashing, sanitizing
graphql/ # ONLY exported package (Export-Package)
McpGraphQLExtensionsProvider.java # DXGraphQLExtensionsProvider (bundle-scan registration)
McpQueryExtension.java # Adds `communityMcp` to Query → CommunityMcpQuery
McpQuery.java # settings, skills; types CommunityMcpSettings, CommunityMcpSkill
McpMutationExtension.java # Adds `communityMcp` to Mutation → CommunityMcpMutation
McpMutation.java # saveSettings, saveSkill, deleteSkill
src/main/resources/
schemas/community.*.json # Hand-written JSON Schemas (draft 2020-12), one per tool
META-INF/definitions.cnd # mcp:skill node type; mcpmix:mcp (droppable, hidden from pickers)
META-INF/configurations/org.jahia.community.mcp.cfg # Default whitelist (empty); first line is fixed
skills/default/*.md # Default skills, seeded into JCR when absent
javascript/locales/{en,fr}.json # Admin UI strings
src/javascript/CommunityMcpConfig/ # React admin UI (allow-list tree, save bar, confirmations)
tests/ # Cypress Docker integration tests (provision mcp-server)
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today Changed · +1 lines · +28 tokens per session ccb92682f836
- yesterday Changed · +146 lines · +3,525 tokens per session 61e0ae49c03c
- 2mo ago First seen · 193 lines · 2,627 tokens per session scan A 6d2880b691b3
jahia-mcp-community-server CLAUDE.md is an instructions file published in the GitHub repository Jahia/jahia-mcp-community-server (0 stars, last pushed today), licensed MIT. It adds 6,180 tokens to every session, about $0.0247 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
jahia-mcp-community-server CLAUDE.md compared with instructions from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| jahia-mcp-community-server CLAUDE.mdJahia/jahia-mcp-community-server | Instructions file | 0 | today | MIT | A | 6,180 | Claude Code |
| vscode buildNext.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 9,719 | GitHub Copilot |
| next.js AGENTS.mdvercel/next.js | Instructions file | 143k | yesterday | MIT | A | 7,461 | Codex, OpenCode |
| langchain AGENTS.mdlangchain-ai/langchain | Instructions file | 149k | yesterday | MIT | A | 4,680 | Codex, OpenCode |
| vscode oss-third-party-notices.instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 5,516 | GitHub Copilot |
| vscode copilot-instructions.mdmicrosoft/vscode | Instructions file | 195k | yesterday | MIT | A | 3,093 | GitHub Copilot |
| deepseek-harness AGENTS.mddeepseek-ai/deepseek-harness | Instructions file | 274k | 2d ago | MIT | A | 4,313 | Codex, OpenCode |