{"$schema":"https://wellknown.network/schemas/agent-record-v1.json","schemaVersion":"1","id":"ag_8fmwuqzhgwfx","handle":"fastapi-mcp-neo","url":"https://wellknown.network/agents/fastapi-mcp-neo","links":{"self":"https://wellknown.network/agents/fastapi-mcp-neo/record.json","html":"https://wellknown.network/agents/fastapi-mcp-neo","markdown":"https://wellknown.network/agents/fastapi-mcp-neo/record.md","api":"https://wellknown.network/api/v1/agents/fastapi-mcp-neo","status":"https://wellknown.network/api/v1/agents/fastapi-mcp-neo/status","claim":"https://wellknown.network/agents/fastapi-mcp-neo/claim","claimApi":"https://wellknown.network/api/v1/claims","claimDescriptor":"https://wellknown.network/agents/fastapi-mcp-neo/claim.json","badge":"https://wellknown.network/agents/fastapi-mcp-neo/badge.svg","openapi":"https://wellknown.network/openapi.json","history":"https://wellknown.network/api/v1/agents/fastapi-mcp-neo/history","tools":"https://wellknown.network/api/v1/agents/fastapi-mcp-neo/tools"},"ard":{"identifier":"urn:air::server:fastapi-mcp-neo","type":"application/mcp-server-card+json"},"kind":"mcp_server","declared":{"name":"fastapi-mcp-neo","summary":"The agent access layer for FastAPI: one graphql_query tool with composition and per-caller auth, derived from your existing app — zero decorators.","description":"# fastapi-mcp-neo\n\n[![pypi](https://img.shields.io/pypi/v/fastapi-mcp-neo.svg)](https://pypi.python.org/pypi/fastapi-mcp-neo)\n[![PyPI Downloads](https://static.pepy.tech/badge/fastapi-mcp-neo/month)](https://pepy.tech/projects/fastapi-mcp-neo)\n\nThe **agent access layer for FastAPI** — agents call one `graphql_query`\ntool with full composition and per-caller credentials, instead of one tool\nper endpoint. The GraphQL layer + MCP server are derived from your existing\napp: zero decorators, zero model changes.\n\n```python\nfrom fastapi import FastAPI\nfrom fastapi_mcp_neo import FastAPIMCP\n\napp = FastAPI()\n\n# ... your existing routes ...\n\nmcp = FastAPIMCP(\n    app,\n    name=\"my-app\",\n    mode=\"graphql\",  # or \"progressive\" / \"tools\" — the three shapes below\n)\nmcp.run()  # HTTP MCP server: get_schema + graphql_query + graphql_mutation\n```\n\n**Three modes, one engine** — pick how agents talk to your app\n([full comparison](#modes)):\n\n| mode | what the agent does |\n|---|---|\n| `graphql` (default) | reads the schema once, then one query composes any routes — projection, aliases, one round trip |\n| `progressive` | the same queries, discovery served in fragments grouped by your route **tags** (tags = \"domains\" in the schema) — for large apps (constant ~1.5k-token catalog at any size) |\n| `tools` | one typed tool per route — plain arguments, no GraphQL to write; clients gate each tool individually. The natural landing for [fastapi_mcp migrants](#migrating-from-fastapi_mcp): the tool-per-route shape carries over, so existing permission and client setups keep working (the other modes change the tool set) |\n\n**Contents** — [Installation](#installation) · [Why](#why) ·\n[How it works](#how-it-works) · [Capability boundaries](#capability-boundaries) · [Usage](#usage) · [Agent lifecycle](#what-the-agent-sees-connection-lifecycle) · [Authentication](#authentication) ·\n[Observability](#observability-opentelemetry) · [Hardening](#hardening-the-bridge) ·\n[Demo](#demo) · [Development](#develop…","publisher":{"name":"tangkikodo","url":null},"homepage":null,"repository":null,"version":"0.19.0","license":null,"protocols":["mcp"],"tags":["mcp"],"pricing":null,"endpoints":[{"url":"pypi:fastapi-mcp-neo","type":"package_pypi","auth":null,"probeable":false}],"skills":null,"tools":null,"extra":null,"attribution":{"kind":"pypi","name":"pypi","summary":"pypi","version":"pypi","description":"pypi","publisherName":"pypi"}},"derived":{"capabilities":[{"slug":"security.identity","name":"Identity & Access","confidence":0.825,"provenance":"derived"}],"categories":["security"],"language":"en"},"observed":{"status":"unknown","statusReason":"Distributed as a package to run locally; no network endpoint to check.","lastOkAt":null,"lastProbedAt":null,"statusComputedAt":null,"reliability30d":null,"latestObservations":[],"tools":null,"package":{"name":"fastapi-mcp-neo","registry":"pypi","observedAt":"2026-11-05T21:26:39.341Z","publishedAt":"2026-10-25T13:10:30.809218Z","latestVersion":"0.19.0"},"toolSurface":null,"endpointFacts":[]},"verification":{"claimed":false,"claimedAt":null,"proofs":[]},"provenance":{"sources":[{"source":"pypi","key":"fastapi-mcp-neo","url":"https://pypi.org/project/fastapi-mcp-neo/","firstSeenAt":"2026-10-24T17:27:19.839Z","fetchedAt":"2026-11-05T21:25:22.139Z","normalizedAt":"2026-11-05T21:25:22.139Z"}]},"firstSeenAt":"2026-10-24T17:27:19.839Z","updatedAt":"2026-11-05T21:26:39.341Z"}