Endpoints: 28,729MCP servers: 18,414Payout addresses: 2,071Paid calls: 1,568Letters: 14Defects: 1,338counted 1 min ago
teppi

Server definition

Hash
sha256:f5106c8ac95dc6205cc4c3825a7e2a0d1e87a3dbfebf72522b77e5d0fd60e32d
What it is
What a remote MCP server returned when asked what it offers: 16 tools

The blob, as servednamed by its sha256

{ "instructions": "xmp4 — Code intelligence via SCIP. Step 1: xmp4_projects(language, query) to find projects. Step 2: use the project identifier (e.g. 'requests/requests') with xmp4_search, xmp4_info, xmp4_usages, xmp4_callers, xmp4_source etc.", "tools": [ { "description": "Find direct callees (methods called by) a symbol in a project. Navigate step-by-step by calling xmp4_callees again on interesting results.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "docs": { "description": "Include docs: none (default) | summary | full (xmp4_info only)", "nullable": true, "type": "string" }, "file_path": { "description": "File path to disambiguate", "nullable": true, "type": "string" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1; ignored by xmp4_info/xmp4_source)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "symbol_name": { "description": "Symbol name", "type": "string" } }, "required": [ "project", "symbol_name" ], "title": "SymbolParams", "type": "object" }, "name": "xmp4_callees", "outputSchema": null }, { "description": "Find direct callers of a symbol in a project. Navigate step-by-step by calling xmp4_callers again on interesting results.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "docs": { "description": "Include docs: none (default) | summary | full (xmp4_info only)", "nullable": true, "type": "string" }, "file_path": { "description": "File path to disambiguate", "nullable": true, "type": "string" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1; ignored by xmp4_info/xmp4_source)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "symbol_name": { "description": "Symbol name", "type": "string" } }, "required": [ "project", "symbol_name" ], "title": "SymbolParams", "type": "object" }, "name": "xmp4_callers", "outputSchema": null }, { "description": "List external dependencies of a project.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" } }, "required": [ "project" ], "title": "RepoParams", "type": "object" }, "name": "xmp4_deps", "outputSchema": null }, { "description": "Server-side regex text search over indexed project source files. Free tier: requires file_path (single file). Premium tier (XMP4_PREMIUM_GREP_WALK=true): allows file_glob multi-file walk. Prefer xmp4_tests_for/xmp4_usages for SCIP symbols — grep is for text not indexed (comments, literals, config keys).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "case_sensitive": { "description": "If true, search is case-sensitive (default false)", "nullable": true, "type": "boolean" }, "file_glob": { "description": "Optional file glob for multi-file walk (premium tier). Set XMP4_PREMIUM_GREP_WALK=true to enable.", "nullable": true, "type": "string" }, "file_path": { "description": "Single-file grep target, repo-relative (e.g. 'src/foo.rs'). Required in free tier.", "nullable": true, "type": "string" }, "max_results": { "default": null, "description": "Maximum number of hits to collect before pagination (default 50, max 1000)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page": { "default": null, "description": "Page number (1-based, default 1)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "pattern": { "description": "Regex pattern (case-insensitive by default)", "type": "string" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" } }, "required": [ "project", "pattern" ], "title": "GrepParams", "type": "object" }, "name": "xmp4_grep", "outputSchema": null }, { "description": "Usage guide for xmp4 tools — read this first to learn the correct workflow", "inputSchema": { "properties": {}, "type": "object" }, "name": "xmp4_guide", "outputSchema": null }, { "description": "Get type hierarchy (base, interfaces, derived) for a symbol in a project.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "docs": { "description": "Include docs: none (default) | summary | full (xmp4_info only)", "nullable": true, "type": "string" }, "file_path": { "description": "File path to disambiguate", "nullable": true, "type": "string" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1; ignored by xmp4_info/xmp4_source)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "symbol_name": { "description": "Symbol name", "type": "string" } }, "required": [ "project", "symbol_name" ], "title": "SymbolParams", "type": "object" }, "name": "xmp4_hierarchy", "outputSchema": null }, { "description": "Get detailed information about a symbol in a project.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "docs": { "description": "Include docs: none (default) | summary | full (xmp4_info only)", "nullable": true, "type": "string" }, "file_path": { "description": "File path to disambiguate", "nullable": true, "type": "string" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1; ignored by xmp4_info/xmp4_source)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "symbol_name": { "description": "Symbol name", "type": "string" } }, "required": [ "project", "symbol_name" ], "title": "SymbolParams", "type": "object" }, "name": "xmp4_info", "outputSchema": null }, { "description": "Get outline (all symbols) for a file in a project.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "file_path": { "description": "File path", "type": "string" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" } }, "required": [ "project", "file_path" ], "title": "OutlineParams", "type": "object" }, "name": "xmp4_outline", "outputSchema": null }, { "description": "Search and browse projects by language and name. Use this first to discover projects, then use other tools with the repo name.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "language": { "description": "Filter by language (e.g., Python, TypeScript, CSharp)", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "query": { "description": "Search by project name (case-insensitive contains)", "nullable": true, "type": "string" }, "repo": { "description": "Filter by repository name", "nullable": true, "type": "string" } }, "title": "ProjectsParams", "type": "object" }, "name": "xmp4_projects", "outputSchema": null }, { "description": "Search symbols in a project. Use xmp4_projects first to find the project identifier.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "kind": { "description": "Filter by kind: Class, Method, Function, etc.", "nullable": true, "type": "string" }, "max_results": { "default": null, "description": "Maximum results to return (default: 50). Kept as per-page upper bound alongside page_size.", "format": "uint", "minimum": 0, "nullable": true, "type": "integer" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "query": { "description": "Search query (symbol name or pattern)", "type": "string" } }, "required": [ "project", "query" ], "title": "SearchParams", "type": "object" }, "name": "xmp4_search", "outputSchema": null }, { "description": "Get server information, version, and capabilities", "inputSchema": { "properties": {}, "type": "object" }, "name": "xmp4_server", "outputSchema": null }, { "description": "Extract source code for a symbol in a project.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "docs": { "description": "Include docs: none (default) | summary | full (xmp4_info only)", "nullable": true, "type": "string" }, "file_path": { "description": "File path to disambiguate", "nullable": true, "type": "string" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1; ignored by xmp4_info/xmp4_source)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "symbol_name": { "description": "Symbol name", "type": "string" } }, "required": [ "project", "symbol_name" ], "title": "SymbolParams", "type": "object" }, "name": "xmp4_source", "outputSchema": null }, { "description": "LSP-style position→symbol lookup. Given (file_path, line, column) returns the symbol whose occurrence covers that cursor position. line is 1-based; column is 0-based. Use after xmp4_outline/xmp4_view when you know coordinates and want the canonical symbol.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "column": { "default": null, "description": "Column number (0-based, default 0 = beginning of line)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "file_path": { "description": "File path inside the project, relative to repo root", "type": "string" }, "line": { "default": null, "description": "Line number (1-based)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" } }, "required": [ "project", "file_path" ], "title": "SymbolAtParams", "type": "object" }, "name": "xmp4_symbol_at", "outputSchema": null }, { "description": "Find direct tests that exercise a given symbol (direct callers filtered to test-file candidates per language pattern: CSharp/Java/PHP: *Test(s).<ext>; Python: test_*.py / *_test.py; TypeScript/JavaScript: *.spec/test.{ts,js}; Rust: *_tests.rs / tests/; etc.).", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "docs": { "description": "Include docs: none (default) | summary | full (xmp4_info only)", "nullable": true, "type": "string" }, "file_path": { "description": "File path to disambiguate", "nullable": true, "type": "string" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1; ignored by xmp4_info/xmp4_source)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "symbol_name": { "description": "Symbol name", "type": "string" } }, "required": [ "project", "symbol_name" ], "title": "SymbolParams", "type": "object" }, "name": "xmp4_tests_for", "outputSchema": null }, { "description": "Find all usages/references of a symbol in a project.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "docs": { "description": "Include docs: none (default) | summary | full (xmp4_info only)", "nullable": true, "type": "string" }, "file_path": { "description": "File path to disambiguate", "nullable": true, "type": "string" }, "output_format": { "description": "Output format: Compact (default) or Verbose", "nullable": true, "type": "string" }, "page": { "default": null, "description": "Page number (1-based, default 1; ignored by xmp4_info/xmp4_source)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "page_size": { "default": null, "description": "Results per page (default 20, max 100)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "symbol_name": { "description": "Symbol name", "type": "string" } }, "required": [ "project", "symbol_name" ], "title": "SymbolParams", "type": "object" }, "name": "xmp4_usages", "outputSchema": null }, { "description": "Read a raw file excerpt from an indexed project by line range. Use after xmp4_search/xmp4_outline locates the region of interest, or to expand a truncated xmp4_source snippet. Hard cap of 500 lines per call.", "inputSchema": { "$schema": "https://json-schema.org/draft/2020-12/schema", "properties": { "file_path": { "description": "File path inside the project, relative to repo root", "type": "string" }, "from_line": { "default": null, "description": "Starting line (1-based, default 1)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" }, "project": { "description": "Project id: 'repo/project' or 'repo/project/language'. Case-insensitive prefix match. Append '/Python'|'/CSharp'|'/Java'|etc. only to disambiguate multi-language projects (e.g. 'django/Django/Python' vs 'django/Django/JavaScript'). 1 match → proceeds; N → warning lists candidates; 0 → do NOT iterate guesses, call xmp4_projects(query=...) once then retry.", "type": "string" }, "to_line": { "default": null, "description": "Ending line (inclusive, default from_line+49, hard cap 500 lines per call)", "format": "uint32", "minimum": 0, "nullable": true, "type": "integer" } }, "required": [ "project", "file_path" ], "title": "ViewParams", "type": "object" }, "name": "xmp4_view", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:f5106c8ac95dc6205cc4c3825a7e2a0d1e87a3dbfebf72522b77e5d0fd60e32d | sha256sum