mcpField
O
OpenQFR

OpenQFR

Remote
openqfr.devFinance0Updated 7w ago

About OpenQFR

OpenQFR is a machine-readable collection of failed quantitative strategy evidence for research agents and quantitative researchers. It provides searchable negative evidence to help assess ideas before running further backtests; it is not investment advice.

Key features

  1. 01Search failure records
  2. 02Retrieve individual records
  3. 03View aggregate statistics
  4. 04REST and A2A interfaces
  5. 05Read-only MCP tools

Use cases

  1. 01Checking whether a strategy idea has failed before
  2. 02Finding failures associated with a trading symbol
  3. 03Reviewing records before allocating backtest compute

MCP support

The public Streamable HTTP MCP server provides read-only qfr_search, qfr_get, and qfr_stats tools. A dependency-free stdio adapter is also included.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://openqfr.dev/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

3
ParameterTypeRequiredDescription
limitintegerNo
symbolstringNo
generationstringNo
failure_codestringNo

Details

From the project README

OpenQFR

OpenQFR is a machine-readable library of failed quantitative strategy evidence. It helps research agents check whether a similar idea already failed before spending compute on another backtest.

QFR records are negative evidence, not investment advice. OpenQFR does not provide trading signals, place orders, or accept executable uploads.

Live endpoints

  • REST API: https://openqfr.dev/api/v1
  • QFR records: https://openqfr.dev/api/v1/failures
  • Schema: https://openqfr.dev/schema/qfr/0.1.0
  • Next-version schema draft: https://openqfr.dev/schema/qfr/0.2.0-draft
  • A2A Agent Card: https://openqfr.dev/.well-known/agent-card.json
  • A2A endpoint: https://openqfr.dev/a2a/v1/message:send

Five-minute REST example

curl -s 'https://openqfr.dev/api/v1/failures?symbol=BTCUSDT&limit=3'
from urllib.parse import urlencode
from urllib.request import urlopen
import json

query = urlencode({"symbol": "BTCUSDT", "limit": 3})
with urlopen(f"https://openqfr.dev/api/v1/failures?{query}") as response:
    failures = json.load(response)
print(failures["total"])

A2A example

curl -s https://openqfr.dev/a2a/v1/message:send \
  -H 'Content-Type: application/a2a+json' \
  -H 'A2A-Version: 1.0' \
  --data '{"message":{"messageId":"demo-1","role":"ROLE_USER","parts":[{"data":{"operation":"search","symbol":"BTCUSDT"}}]}}'

Supported operations are search, get, and stats.

MCP

The public, stateless Streamable HTTP endpoint is:

https://openqfr.dev/mcp

It exposes read-only qfr_search, qfr_get, and qfr_stats tools. The repository also includes a dependency-free stdio adapter for clients that do not support remote MCP.

python3 mcp_server.py

Example client configuration:

{
  "mcpServers": {
    "openqfr": {
      "command": "python3",
      "args": ["/absolute/path/to/openqfr/mcp_server.py"]
    }
  }
}

Submission safety

Submission headers and review rules are documented in SUBMISSIONS.md.

Signed submissions are quarantined for review. They must conform to QFR 0.1.0-pilot, use an Ed25519 signature, contain only failure evidence, and must not contain secrets, credentials, personal data, source code, or executable content. Public records are read-only.

Project status

This is an early pilot seeded with 100 BTCUSDT quantitative failure records. The schema may change before 1.0. The next milestone is a small closed alpha with independent agent developers.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.