docs: Remove context servers documentation (#16560)

This PR removes the docs for context servers.

Release Notes:

- N/A
This commit is contained in:
Marshall Bowers
2024-08-20 21:12:12 -04:00
committed by GitHub
parent a3672d96d4
commit a82cc80d1d
4 changed files with 0 additions and 413 deletions
-43
View File
@@ -1,43 +0,0 @@
# Context Servers
A Context Server is an experimental interface for defining simple, language-agnostic slash commands in Zed's [Assistant](./assistant.md). Context Servers allow you to extend Zed's Assistant to interface with external capabilities and systems in a language-agnostic way.
If slash commands allow you to extend the Assistant with new capabilities, Context Servers follow a simple protocol for registering and making use of those capabilities.
## Using a Context Server
To configure Zed to use a Context Server, add the command required to start the server to your [settings](../configuring-zed.md):
```json
{
"experimental.context_servers": {
"servers": [
{
"id": "python_context_server",
"executable": "python",
"args": ["-m", "your_context_server_module"]
}
]
}
}
```
## Developing a Context Server
Context Servers are JSON-RPC servers communicating over stdio. Context Servers must comply with the [Model Context Protocol (MCP)](./model-context-protocol.md).
See [python-context-server](https://github.com/zed-industries/python-context-server) for a minimal working example.
Currently, Zed's client only implements a subset of the protocol required to support custom prompt insertions and manipulations. This is likely to be expanded in the future.
### Should you write a Context Server?
[Extensions](../extensions.md) are also capable of [adding slash commands to the Assistant](../extensions/slash-commands.md).
If your slash commands are already implemented in a language other than Rust, wrapping them in a Context Server implementation will likely be the fastest way to plug them into Zed.
An Extension should be preferred when:
- Your slash commands are implemented in WebAssembly-compatible Rust
- You want Zed to manage distribution of your slash commands
- You want to publish your slash commands