Metis FCA Handbook AI Harness MCP Server
This server provides a single tool, evaluate_fca_handbook_applicability, to assess the applicability of FCA Handbook rules and guidance to any financial entity, product, or service. You can submit a natural-language compliance question (up to 5,000 characters) describing the firm, products/services, target market, and regulatory question. The tool returns a structured compliance report with verbatim FCA citations (including binding levels: R=Rule, G=Guidance) to minimize hallucination. Analysis modes include a quick overview (60–120 seconds) or full conditional reasoning. The report categorizes obligations (high-confidence, conditional, low-confidence), highlights compliance gaps, suggests refinements, and tracks token usage. The server searches across 10,000+ Handbook entries automatically, is stateless and one-shot, integrates with AI agent workflows (MCP), and may display progress messages for longer runs.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Metis FCA Handbook AI Harness MCP ServerAnalyze FCA handbook for a peer-to-peer lending platform"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Metis FCA Handbook AI Harness — MCP Server
An MCP (Model Context Protocol) server that integrates the Metis FCA Handbook AI Harness into your AI workflow. MCP is supported by Claude, OpenAI, Gemini, and most desktop/IDE MCP clients (Cursor, Windsurf, Cline, and others) — this README uses Claude Desktop as a fully worked example; adjust the configuration steps to fit your own client.
Source & full documentation: github.com/99blakeD99/the-metis-fca-handbook-ai-harness-mcp-files
Tools
evaluate_fca_handbook_applicability
Evaluate which FCA Handbook entries apply to an entity, via the Metis FCA Handbook AI Harness. One-shot: no session, no conversation state. Supports quick mode (60-120 seconds, default) and full mode (longer, more detailed). Returns a compliance report with verbatim citations, gaps, and refinement suggestions.
Related MCP server: eu-regulations
Why choose The Metis FCA Handbook AI Harness?
Efficiency Multiplies effectiveness of compliance advice. Saves £80+ in token fees per Harness run.
Deals with "Hard Problem", in which LLMs' token incentives prioritise training data so results are unreliable.
Verbatim citations Quotes verbatim entries from the FCA Handbook. Other AI systems struggle to do this.
Matches real-world need You do not have to start off knowing which sections you are looking for. Carries out structured searches across all 10,000+ FCA Handbook entries.
Secure Design Harness compartmentalisation, one-shot structure, and statelessness fits natively with emerging AI agent security standards such as OWASP Top 10 for Agentic Applications 2026.
AI Accessible Integrates easily with AI workflows and agents. Your LLM can use it as a tool.
Try the Harness Live
Experience the Harness interactively before integrating:
https://fcahandbookharnessimplementation.onrender.comEmail the-metis-fca-handbook-ai-harness@jbmd.co.uk and request a free temporary Access Code.
Ask compliance questions in natural language and watch each reasoning step unfold in real-time.
Design Principles
The Harness is built on proven principles:
Stateless — Each request is independent; no session coupling
One-shot — Complete analysis in a single call; no multi-turn state
Clear contract — Explicit input/output schemas for easy integration
Hosted — Single canonical source; no version drift or stale data
Use Cases
Compliance AI Platforms
Embed FCA reasoning as a service within your compliance platform. Users ask natural-language questions; your platform calls the Harness and presents structured reasoning.
AI Agent Workflows
Agents building compliance workflows can include FCA Handbook reasoning as a composed tool—no external API calls, just MCP configuration.
Compliance Review Automation
Integrate into document review or due-diligence pipelines. Automatically screen new rules against FCA applicability.
For Regulatory Screening
FS firms screening MCP servers will find:
Simple model: Stateless, no hidden state, no background jobs
Clear contract: Explicit input schema, output schema, error modes
Transparent updates: Version pinning; no automatic upgrades
Single point of failure: If the Harness is down, it is obvious; no cascading config issues
Audit-friendly: All calls logged centrally, not distributed
Quick Start
1. Get an API Key
Visit the Metis account dashboard:
https://fcahandbookharnessimplementation.onrender.comClick "Create Account" (modal on the homepage)
Complete Stripe payment flow (accounts are paid)
Navigate to API Keys and generate a new key
Save it securely
2. Install the MCP Server
pip install fca-handbook-harness-mcp3. Configure your MCP client
This section walks through Claude Desktop as a fully worked example. The mcpServers JSON shape below is shared by most desktop/IDE MCP clients (Claude Code, Cursor, Windsurf, Cline, and others) — but the config file location and restart step are Claude Desktop's specifically. If you are using a different client, including one with a GUI-based connector flow (some OpenAI and Gemini integrations work this way) rather than a JSON config file, consult that client's own documentation for where to add a server.
Claude Desktop file location:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Add this server entry (create the file if it doesn't exist):
{
"mcpServers": {
"fca-handbook-harness": {
"command": "fca-handbook-harness-mcp",
"env": {
"METIS_API_KEY": "sk_live_..."
}
}
}
}Replace sk_live_... with your actual API key from your Metis account.
4. Restart your MCP client
For Claude Desktop: quit and restart the app. Other clients reload MCP connections differently — check your client's documentation if unsure. Once connected, the evaluate_fca_handbook_applicability tool will be available in agent workflows.
Using the Tool
The tool accepts two parameters:
user_input (required, max 5000 characters): Everything together as one piece of text — firm type, products/services, target market, regulatory question, etc.
analysis_mode (optional):
"quick"(default, ~60-120 seconds) or"full"(longer, detailed conditional reasoning)
The tool returns:
summary: 2-3 sentence overview of applicability
entry_analysis: Retrieved FCA Handbook entries with reasoning
obligations: High-confidence, conditional, and low-confidence obligations
gaps: What the analysis couldn't determine from your input
refinement_suggestions: Follow-up information that would improve accuracy
citations: Verbatim quotes from FCA Handbook with binding levels (R=Rule, G=Guidance)
tokens: Token count for cost/complexity tracking
Troubleshooting
Tool not appearing (Claude Desktop; the same class of issue applies to most desktop MCP clients):
Verify the config file path (platform-specific, see above)
Confirm
fca-handbook-harness-mcpresolves on the command line (which fca-handbook-harness-mcp/where fca-handbook-harness-mcp). Desktop MCP clients typically launch with a minimal environment and may not see the same PATH as your shell — if the command does not resolve, replace"command": "fca-handbook-harness-mcp"with the absolute path from that lookupRestart your MCP client (not just reload)
401 Unauthorized:
Verify
METIS_API_KEYis set in the configenvCheck the key is correct (copy from dashboard again)
Ensure no extra spaces or newlines in the key
Connection timeout:
The analysis can take 60-120 seconds (quick mode) or longer (full mode)
Ensure you have internet access to fcahandbookharnessimplementation.onrender.com
Files
mcp_server.py — MCP server implementation (main entry point; its docstring is the source of truth for the tool schema)
pyproject.toml — pypi package manifest
server.json — MCP registry manifest (registry.modelcontextprotocol.io format)
manifest.json — MCPB/Smithery bundle manifest
requirements.txt — Python dependencies (
mcp,requests)uv.lock — Pinned dependency resolution for reproducible
uv run__init__.py— Python package markerREADME.md — This file
LICENSE — MIT License
.gitignore — Git ignore rules
.mcpbignore — Files excluded from the MCPB bundle
Support
For questions or issues, contact: the-metis-fca-handbook-ai-harness@jbmd.co.uk
Product: Metis FCA Handbook AI Harness
License: MIT
Available Tools
1 toolevaluate_fca_handbook_applicabilityA
Evaluate which FCA Handbook entries apply to an entity, via the Metis FCA Handbook AI Harness.
Calls a live compliance reasoning run, billed to the configured account. Use for questions about FCA authorisation, permissions, or obligations for a specific firm/product/service.
CRITICAL: This call takes 90+ seconds to complete and streams progress messages. You MUST display each progress message to the user as it arrives. Do NOT wait silently for the result. Silently waiting makes the user think the tool is broken. The progress messages are not filler — they contain essential detail about what the Harness is doing (which reasoning node is running, what it found, etc.). Your response MUST actively incorporate and relay each message, not just the final result.
Before calling: check whether you already have (from this conversation, documents you were given, or other tools) grounded answers to these six things — the specific compliance question, the product/service, who's providing it (platform/adviser/bank/etc.), its key features, the target market (retail/institutional/professional), and what data it handles. If you are missing more than one or two, ask the user for them first rather than calling with thin input. Every call is billed to the account at a flat rate regardless of input quality, so a vague call followed by a refinement round costs twice what one good call would have.
The result includes refinement_suggestions — gaps the Harness couldn't resolve from user_input alone, typically subtler than the six basics above (e.g. a regulatory edge case, not a missing fact you could have just asked for). If you already have grounded information addressing one (from this conversation, documents you were given, or other tools you've called), fold it into a new user_input and call again yourself, rather than just relaying the suggestion to the user as a question. Do not speculate or infer plausible-sounding detail you do not actually have to fill a gap — that reintroduces the hallucination risk this Harness exists to avoid, one level up. Only ask the user for whatever's left that you genuinely do not know.
Args: user_input: Everything together as one piece of text (up to 5000 characters) — the specific compliance question, the product/service, who's providing it, its key features, the target market, and what data it handles. See "Before calling" above for why all six matter. analysis_mode: 'quick' (default, ~60-120 seconds) for a fast pass, or 'full' (longer) for detailed conditional reasoning — conditions, interactions between rules, and second-order implications. Ask the user which they want if it is not obvious; default to 'quick'.
| Name | Required | Description | Default |
|---|---|---|---|
| user_input | Yes | ||
| analysis_mode | No | quick |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description fully discloses critical behaviors: the 90+ second runtime, streaming of progress messages, billing implications, the need to display progress messages, the nature of refinement_suggestions, and the explicit warning against speculation to avoid hallucination risk. This goes far beyond any annotation coverage.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is long but every section serves a purpose: purpose, critical warnings, pre-call guidance, parameter details, and post-call handling. It is well-structured with clear headings and critical caveats in block caps. It could be slightly condensed, but the length is justified by the complexity of behavioral quirks and usage requirements.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity, lack of annotations, and absence of an output schema, the description covers virtually all necessary aspects: purpose, when to use, what to prepare, runtime behavior, progress messaging, billing, refinement_suggestions handling, and detailed parameter semantics. It even addresses hallucination risk and when to ask the user vs. re-call. No major gaps are evident.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, but the description thoroughly compensates. For 'user_input', it explains the content, up to 5000 characters, and why all six elements matter. For 'analysis_mode', it explains the 'quick' vs 'full' options, time ranges, what 'full' does, and advises asking the user if unclear. It adds substantial meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Evaluate which FCA Handbook entries apply to an entity' with a specific verb (Evaluate), resource (FCA Handbook entries), and scope (apply to an entity). It also names the specific system ('Metis FCA Handbook AI Harness'), which distinguishes it from any potential similar tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states when to use the tool ('Use for questions about FCA authorisation, permissions, or obligations for a specific firm/product/service') and provides a detailed pre-call checklist of six required inputs, including when to ask the user for missing information. It also gives guidance on when to re-call the tool after receiving refinement_suggestions, covering both usage context and exclusions for thin input.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
1 tool update
v0.1.7- First observed
evaluate_fca_handbook_applicability
TDQS
Only one tool exists, so there is no possibility of confusion with other tools. Its purpose is clearly defined for evaluating FCA handbook applicability.
The single tool follows a clear verb_noun pattern ('evaluate_fca_handbook_applicability'). With only one tool, there are no naming inconsistencies to penalize.
The server exposes only one tool, which feels thin for a compliance-focused service. While the tool is substantial, a single tool offers minimal surface area and would benefit from auxiliary operations like retrieving past evaluations.
The sole tool thoroughly covers the advertised purpose of evaluating FCA handbook applicability, including detailed input guidance and refinement suggestions. However, it lacks any supporting operations such as listing or retrieving historical evaluations, leaving minor gaps for multi-step workflows.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Cited, standards-aware compliance overlay for AI assistants (ISO, NIST, FedRAMP, IRAP), over MCP.
Your audit methodology inside Claude: findings, risks, controls and workpapers in your team format.
1EU compliance corpus across 8 frameworks (NIS2, DORA, AI Act, ISO 27001 + more) via MCP.
AI-powered Hong Kong SFC regulatory intelligence. Bilingual EN/ZH compliance queries.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn AI-powered compliance assistant that analyzes financial marketing content for regulatory violations across multiple jurisdictions including Singapore, Hong Kong, UAE, and India. It enables real-time compliance checking, automatic disclaimer insertion, and audit trail generation within MCP-compatible environments like Claude and Cursor.3MIT
- AlicenseAqualityFmaintenanceQuery 37 EU regulations — from GDPR and AI Act to DORA, MiFID II, eIDAS, Medical Device Regulation, and more — directly from Claude, Cursor, or any MCP-compatible client.1417325Apache 2.0
- AlicenseNot gradedqualityAmaintenanceTurn Claude into an ISO 27001 compliance assistant - controls, risk register, policies, evidence tracking, SoA generation, and full audit workflows in one local encrypted MCP server.44731MIT
- FlicenseBqualityDmaintenanceEnables comprehensive financial analysis including structured products, portfolio optimization, risk analytics, and backtesting through Claude Desktop integration.181-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/99blakeD99/the-metis-fca-handbook-ai-harness-mcp-files'
If you have feedback or need assistance with the MCP directory API, please join our Discord server