{"$schema":"https://static.modelcontextprotocol.io/schemas/mcp-server-card/v1.json","name":"grep-public-api-v2","version":"1.0","protocolVersion":"2025-06-18","serverInfo":{"name":"grep-public-api-v2","title":"Grep Public API v2 MCP","version":"1.0.0"},"description":"Start, continue, cancel, and inspect Grep research jobs through public API v2 tools.","documentationUrl":"https://grep.ai/developers/api/v2","documentation_url":"https://grep.ai/developers/api/v2","transport":{"type":"streamable-http","url":"https://staging-api.grep.ai/api/v2/mcp","endpoint":"https://staging-api.grep.ai/api/v2/mcp"},"capabilities":{"tools":{"listChanged":false}},"auth":{"type":"oauth2","resource_metadata_url":"https://staging-api.grep.ai/.well-known/oauth-protected-resource/api/v2/mcp"},"tools":[{"name":"research_create","description":"Start a Grep research job."},{"name":"research_continue","description":"Continue a completed Grep research job with additional instructions."},{"name":"research_cancel","description":"Cancel a running Grep research job."},{"name":"research_list","description":"List Grep research jobs visible to the OAuth subject."},{"name":"research_get","description":"Get a Grep research job report and state."},{"name":"research_publish","description":"Grep public API v2 MCP tool: research_publish."},{"name":"research_timeline","description":"List timeline events for a Grep research job."},{"name":"research_files_list","description":"List files generated by a Grep research job."},{"name":"research_file_read","description":"Read a generated research file."},{"name":"attachment_create","description":"Upload one or more attachments for future research jobs."},{"name":"attachment_get","description":"Inspect a research attachment."},{"name":"attachment_delete","description":"Delete a research attachment."},{"name":"quota_get","description":"Read current public API quota."},{"name":"quota_check","description":"Check whether quota is available for a requested effort."},{"name":"billing_usage_get","description":"Read billing usage for public API calls."},{"name":"billing_transactions_list","description":"List billing transactions for public API usage."},{"name":"expert_create","description":"Create a custom expert from a full configuration (prompt, skills, tools, output schema/SOP, form, defaults)."},{"name":"expert_build_start","description":"Start an async prompt-driven expert build in a sandbox."},{"name":"expert_build_get","description":"Poll the status of an expert build job."},{"name":"expert_list","description":"List custom experts visible to the OAuth subject."},{"name":"expert_get","description":"Read back an expert's full configuration."},{"name":"expert_update","description":"Partially update an expert's configuration (omitted fields unchanged)."},{"name":"expert_delete","description":"Archive a custom expert."},{"name":"skills_list","description":"List/search skills an expert can link (catalog plus the caller's custom skills); filter by query/category."},{"name":"skill_get","description":"Read a skill's SKILL.md content."},{"name":"skill_create","description":"Create a custom skill from SKILL.md content."},{"name":"mcp_tools_list","description":"List/search MCP tools an expert can be granted; always_on entries need no grant."},{"name":"expert_context_file_upload","description":"Attach a context file to an expert (base64 for binary formats)."},{"name":"expert_context_files_list","description":"List an expert's context files."},{"name":"expert_context_file_get","description":"Read one expert context file (binary returns base64)."},{"name":"expert_context_file_delete","description":"Detach a context file from an expert."},{"name":"expert_versions_list","description":"List an expert's configuration versions."},{"name":"expert_version_get","description":"Read one expert configuration version snapshot."},{"name":"expert_version_restore","description":"Restore an expert to a previous configuration version."},{"name":"expert_extract_config","description":"Preview config extraction (SOP + schema) from pasted text."},{"name":"expert_generate_workflow","description":"Preview an authored workflow DSL for an SOP."},{"name":"expert_plan_preview","description":"Preview the research plan an expert would produce for a question (planning phase only)."},{"name":"expert_apply","description":"Apply a declarative expert manifest: diff desired vs current state and perform the minimal delta."},{"name":"expert_share","description":"Grant a user, domain, or team access to an expert."},{"name":"expert_unshare","description":"Revoke an expert access grant."},{"name":"expert_shares_list","description":"List an expert's access grants."},{"name":"expert_set_visibility","description":"Set an expert public or private."},{"name":"key_create","description":"Mint a scoped API key for the OAuth identity (secret returned once)."},{"name":"key_list","description":"List the OAuth identity's API keys — metadata only."},{"name":"key_revoke","description":"Revoke one of the OAuth identity's API keys."}],"openapi_url":"https://staging-api.grep.ai/api/v2/openapi.json"}