MCP Tools Developer Documentation
This is the entrypoint for MCP tool documentation. The repository implements src/nilo/mcp_server/ and exposes local tools through the MCP Python SDK FastMCP.
Server
- Server factory:
src/nilo/mcp_server/server.py - Package entry:
nilo.mcp_server:create_mcp_server - CLI stdio entry:
nilo server stdio - CLI background HTTP entry:
nilo server run --host 127.0.0.1 --port 8000 - Supported transports:
stdio,streamable-http
Tool Domain Documents
config.mdauth.mdpages.mdblocks.mddatabases.mddata_sources.mdusers.mdcomments.mdviews.mdfile_uploads.mdsearch.mdcustom_emojis.mdraw_api.md
Tool Inventory
The current server exposes 46 tools:
auth_validateauth_whoamiblock_appendblock_children_listblock_trashblock_updatecomment_createcomment_listcomment_replyconfig_getconfig_statuscustom_emoji_listcustom_emoji_retrievedata_source_createdata_source_property_renamedata_source_querydata_source_retrievedata_source_templatesdata_source_updatedatabase_createdatabase_querydatabase_renamedatabase_retrievedatabase_sourcesdatabase_updatefile_upload_completefile_upload_createfile_upload_listfile_upload_retrievefile_upload_sendpage_createpage_property_retrievepage_retrievepage_trashpage_updateraw_api_invokeraw_api_registered_operationssearchuser_listuser_meuser_retrieveview_createview_listview_queryview_retrieveview_update
Common Rules
- MCP tools may call Core only; they must not call CLI.
- Tool errors should return structured
{"ok": false, "error": ...}payloads. - Tokens must be redacted by default.
- Delete, archive, and trash tools must carry
destructiveHintand requireconfirm=true. - Capabilities that require real Notion permissions, paid plans, or a real workspace must be marked in tests and progress documentation.