mirror of
https://github.com/PrefectHQ/fastmcp.git
synced 2026-08-09 15:19:10 +02:00
296 lines
7.6 KiB
JSON
296 lines
7.6 KiB
JSON
{
|
|
"$defs": {
|
|
"DeploymentConfig": {
|
|
"description": "Configuration for server deployment and runtime settings.",
|
|
"properties": {
|
|
"transport": {
|
|
"anyOf": [
|
|
{
|
|
"enum": ["stdio", "http", "sse"],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Transport protocol to use",
|
|
"title": "Transport"
|
|
},
|
|
"host": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Host to bind to when using HTTP transport",
|
|
"examples": ["127.0.0.1", "0.0.0.0", "localhost"],
|
|
"title": "Host"
|
|
},
|
|
"port": {
|
|
"anyOf": [
|
|
{
|
|
"type": "integer"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Port to bind to when using HTTP transport",
|
|
"examples": [8000, 3000, 5000],
|
|
"title": "Port"
|
|
},
|
|
"path": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "URL path for the server endpoint",
|
|
"examples": ["/mcp/", "/api/mcp/", "/sse/"],
|
|
"title": "Path"
|
|
},
|
|
"log_level": {
|
|
"anyOf": [
|
|
{
|
|
"enum": ["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL"],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Log level for the server",
|
|
"title": "Log Level"
|
|
},
|
|
"cwd": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Working directory for the server process",
|
|
"examples": [".", "./src", "/app"],
|
|
"title": "Cwd"
|
|
},
|
|
"env": {
|
|
"anyOf": [
|
|
{
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"type": "object"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Environment variables to set when running the server",
|
|
"examples": [
|
|
{
|
|
"API_KEY": "secret",
|
|
"DEBUG": "true"
|
|
}
|
|
],
|
|
"title": "Env"
|
|
},
|
|
"args": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Arguments to pass to the server (after --)",
|
|
"examples": [["--config", "config.json", "--debug"]],
|
|
"title": "Args"
|
|
}
|
|
},
|
|
"title": "DeploymentConfig",
|
|
"type": "object"
|
|
},
|
|
"EntrypointConfig": {
|
|
"description": "Configuration for server entrypoint when using object format.",
|
|
"properties": {
|
|
"file": {
|
|
"description": "Path to Python file containing the server",
|
|
"examples": ["server.py", "src/server.py", "app/main.py"],
|
|
"title": "File",
|
|
"type": "string"
|
|
},
|
|
"object": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Name of the server object in the file (defaults to searching for mcp/server/app)",
|
|
"examples": ["app", "mcp", "server"],
|
|
"title": "Object"
|
|
},
|
|
"repo": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Git repository URL",
|
|
"examples": ["https://github.com/user/repo"],
|
|
"title": "Repo"
|
|
}
|
|
},
|
|
"required": ["file"],
|
|
"title": "EntrypointConfig",
|
|
"type": "object"
|
|
},
|
|
"EnvironmentConfig": {
|
|
"description": "Configuration for Python environment setup.",
|
|
"properties": {
|
|
"python": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Python version constraint",
|
|
"examples": ["3.10", "3.11", "3.12"],
|
|
"title": "Python"
|
|
},
|
|
"dependencies": {
|
|
"anyOf": [
|
|
{
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Python packages to install with PEP 508 specifiers",
|
|
"examples": [["fastmcp>=2.0,<3", "httpx", "pandas>=2.0"]],
|
|
"title": "Dependencies"
|
|
},
|
|
"requirements": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Path to requirements.txt file",
|
|
"examples": ["requirements.txt", "../requirements/prod.txt"],
|
|
"title": "Requirements"
|
|
},
|
|
"project": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Path to project directory containing pyproject.toml",
|
|
"examples": [".", "../my-project"],
|
|
"title": "Project"
|
|
},
|
|
"editable": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": null,
|
|
"description": "Directory to install in editable mode",
|
|
"examples": [".", "../my-package"],
|
|
"title": "Editable"
|
|
}
|
|
},
|
|
"title": "EnvironmentConfig",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"description": "Configuration file for FastMCP servers",
|
|
"properties": {
|
|
"$schema": {
|
|
"anyOf": [
|
|
{
|
|
"type": "string"
|
|
},
|
|
{
|
|
"type": "null"
|
|
}
|
|
],
|
|
"default": "https://gofastmcp.com/public/schemas/fastmcp.json/v1.json",
|
|
"description": "JSON schema for IDE support and validation",
|
|
"title": "$Schema"
|
|
},
|
|
"entrypoint": {
|
|
"$ref": "#/$defs/EntrypointConfig",
|
|
"description": "Server entrypoint as a string (file or file:object) or object with file/object/repo",
|
|
"examples": [
|
|
"server.py",
|
|
"server.py:app",
|
|
{
|
|
"file": "src/server.py",
|
|
"object": "app"
|
|
}
|
|
]
|
|
},
|
|
"environment": {
|
|
"$ref": "#/$defs/EnvironmentConfig",
|
|
"description": "Python environment setup configuration"
|
|
},
|
|
"deployment": {
|
|
"$ref": "#/$defs/DeploymentConfig",
|
|
"description": "Server deployment and runtime settings"
|
|
}
|
|
},
|
|
"required": ["entrypoint"],
|
|
"title": "FastMCP Configuration",
|
|
"type": "object",
|
|
"$id": "https://gofastmcp.com/public/schemas/fastmcp.json/v1.json"
|
|
}
|