Files
modelcontextprotocol--pytho…/mkdocs.yml
T

179 lines
5.4 KiB
YAML

site_name: MCP Python SDK
site_description: The official Python SDK for the Model Context Protocol
strict: true
repo_name: modelcontextprotocol/python-sdk
repo_url: https://github.com/modelcontextprotocol/python-sdk
edit_uri: edit/main/docs/
site_url: https://py.sdk.modelcontextprotocol.io/v2/
# TODO(Marcelo): Add Anthropic copyright?
# copyright: © Model Context Protocol 2025 to present
nav:
- MCP Python SDK: index.md
- Installation: installation.md
- Tutorial - User Guide:
- tutorial/index.md
- First steps: tutorial/first-steps.md
- Tools: tutorial/tools.md
- Structured Output: tutorial/structured-output.md
- Resources: tutorial/resources.md
- Prompts: tutorial/prompts.md
- The Context: tutorial/context.md
- Dependencies: tutorial/dependencies.md
- Handling errors: tutorial/handling-errors.md
- Lifespan: tutorial/lifespan.md
- Media: tutorial/media.md
- Completions: tutorial/completions.md
- Elicitation: tutorial/elicitation.md
- Progress: tutorial/progress.md
- Logging: tutorial/logging.md
- Testing: tutorial/testing.md
- Running your server:
- run/index.md
- ASGI: run/asgi.md
- The Client:
- client/index.md
- Client callbacks: client/callbacks.md
- Client transports: client/transports.md
- Protocol versions: client/protocol-versions.md
- Advanced:
- Multi-round-trip requests: advanced/multi-round-trip.md
- The low-level Server: advanced/low-level-server.md
- URI templates: advanced/uri-templates.md
- Pagination: advanced/pagination.md
- Caching hints: advanced/caching.md
- Middleware: advanced/middleware.md
- Extensions: advanced/extensions.md
- MCP Apps: advanced/apps.md
- OpenTelemetry: advanced/opentelemetry.md
- Authorization: advanced/authorization.md
- OAuth clients: advanced/oauth-clients.md
- Identity assertion: advanced/identity-assertion.md
- Session groups: advanced/session-groups.md
- Deprecated features: advanced/deprecated.md
- Migration Guide: migration.md
- API Reference: api/
theme:
name: "material"
palette:
- media: "(prefers-color-scheme)"
scheme: default
primary: black
accent: black
toggle:
icon: material/lightbulb
name: "Switch to light mode"
- media: "(prefers-color-scheme: light)"
scheme: default
primary: black
accent: black
toggle:
icon: material/lightbulb-outline
name: "Switch to dark mode"
- media: "(prefers-color-scheme: dark)"
scheme: slate
primary: white
accent: white
toggle:
icon: material/lightbulb-auto-outline
name: "Switch to system preference"
features:
- search.suggest
- search.highlight
- content.tabs.link
- content.code.annotate
- content.code.copy
- content.code.select
- navigation.path
- navigation.indexes
- navigation.sections
- navigation.tracking
- toc.follow
# logo: "img/logo-white.svg"
# TODO(Marcelo): Add a favicon.
# favicon: "favicon.ico"
# https://www.mkdocs.org/user-guide/configuration/#validation
validation:
omitted_files: warn
absolute_links: warn
unrecognized_links: warn
anchors: warn
markdown_extensions:
- tables
- admonition
- attr_list
- md_in_html
- pymdownx.details
- pymdownx.caret
- pymdownx.critic
- pymdownx.mark
- pymdownx.superfences
# Code examples live as complete, importable, tested files under `docs_src/`
# and are included into pages with `--8<-- "docs_src/<chapter>/tutorialNNN.py"`
# (resolved against the repo root regardless of the build's working
# directory; the extension's default base_path is the CWD).
# `check_paths: true` + `strict: true` turn a renamed/deleted example into a
# build failure instead of a silently empty code block.
- pymdownx.snippets:
base_path: !relative $config_dir
check_paths: true
- pymdownx.tilde
- pymdownx.inlinehilite
- pymdownx.highlight:
pygments_lang_class: true
- pymdownx.extra:
pymdownx.superfences:
custom_fences:
- name: mermaid
class: mermaid
format: !!python/name:pymdownx.superfences.fence_code_format
- pymdownx.emoji:
emoji_index: !!python/name:material.extensions.emoji.twemoji
emoji_generator: !!python/name:material.extensions.emoji.to_svg
options:
custom_icons:
- docs/.overrides/.icons
- pymdownx.tabbed:
alternate_style: true
- pymdownx.tasklist:
custom_checkbox: true
- sane_lists # this means you can start a list from any number
watch:
- src
- docs_src
hooks:
- docs/hooks/llms_txt.py
plugins:
- search
- social:
enabled: !ENV [ENABLE_SOCIAL_CARDS, false]
- glightbox
- gen-files:
scripts:
- docs/hooks/gen_ref_pages.py
- literate-nav:
nav_file: SUMMARY.md
- mkdocstrings:
handlers:
python:
paths: [src, src/mcp-types]
options:
relative_crossrefs: true
members_order: source
separate_signature: true
show_signature_annotations: true
signature_crossrefs: true
group_by_category: false
inventories:
- url: https://docs.python.org/3/objects.inv
- url: https://docs.pydantic.dev/latest/objects.inv
- url: https://typing-extensions.readthedocs.io/en/latest/objects.inv